{"id":37027517,"url":"https://github.com/slavede/bootstrap-ui-datetime-picker","last_synced_at":"2026-01-14T03:16:17.511Z","repository":{"id":57745300,"uuid":"57210629","full_name":"slavede/bootstrap-ui-datetime-picker","owner":"slavede","description":"AngularJs directive to allow use of the bootstrap UI date/time pickers in a single dropdown","archived":false,"fork":true,"pushed_at":"2016-04-27T12:51:27.000Z","size":273,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-13T23:09:13.983Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"Gillardo/bootstrap-ui-datetime-picker","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/slavede.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-04-27T12:10:56.000Z","updated_at":"2016-04-27T12:10:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/slavede/bootstrap-ui-datetime-picker","commit_stats":null,"previous_names":[],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/slavede/bootstrap-ui-datetime-picker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slavede%2Fbootstrap-ui-datetime-picker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slavede%2Fbootstrap-ui-datetime-picker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slavede%2Fbootstrap-ui-datetime-picker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slavede%2Fbootstrap-ui-datetime-picker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slavede","download_url":"https://codeload.github.com/slavede/bootstrap-ui-datetime-picker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slavede%2Fbootstrap-ui-datetime-picker/sbom","scorecard":{"id":831213,"data":{"date":"2025-08-11","repo":{"name":"github.com/slavede/bootstrap-ui-datetime-picker","commit":"865d67644cd408d7a4b678b92c80d525327b3478"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}}]},"last_synced_at":"2025-08-23T17:50:54.631Z","repository_id":57745300,"created_at":"2025-08-23T17:50:54.631Z","updated_at":"2025-08-23T17:50:54.631Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-14T03:16:16.802Z","updated_at":"2026-01-14T03:16:17.505Z","avatar_url":"https://github.com/slavede.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bootstrap-UI/datetime-picker\n\nAngularJs directive to use a date and/or time picker as a dropdown from an input. \n\n[Demo](http://plnkr.co/edit/S8UqwvXNGmDcPXV7a0N3)\n\n## Installation\nTo use the directive you must have the following angular-ui bootstrap directives included already\n* DatePicker\n* TimePicker\n\nYou should already have the ui.bootstrap dependancy included in your app.js file like below, You then need to add ui.bootstrap.datetimepicker, as so\n```\nangular.module('app', ['ui.bootstrap', 'ui.bootstrap.datetimepicker']);\n```\nDownload the source from dist/datetime-picker.min.js file and include it in your project.\n\nOr use Bower (thank you krico for setup)\n```\nbower install --save bootstrap-ui-datetime-picker\n```\nand link with `bower_components/bootstrap-ui-datetime-picker/dist/datetime-picker.min.js`\n\n## Usage\nYou have the following properties available to use with the directive.  All are optional unless stated otherwise\n* ngModel (required) - Your date object\n* isOpen - (true/false)\n* closeOnDateSelection (true/false)\n* enableDate (true/false)\n* enableTime (true/false)\n* buttonBar (object)\n* initialPicker ('date'/'time')\n* reOpenDefault (false/'date'/'time') - NOTE: `true` not supported\n* datepickerOptions (object)\n* timepickerOptions (object)\n* defaultTime (string)\n \n##### isOpen\nWhether the popup/dropdown is visible or not. Defaults to false\n##### closeOnDateSelection\nClose popup once a date has been chosen. TimePicker will stay open until user closes.\n##### enableDate\nWhether you would like the user to be able to select a date. Defaults to true\n##### enableTime\nWhether you would like the user to be able to select a time. Defaults to true\n##### buttonBar\nTo show or hide the button bar, or any of the buttons inside it. Defaults to the uiDatetimePickerConfig.\nOnly specify the elements that you want to override, as each button defaults to the uiDatetimePickerConfig setup, if it is not configured on scope of the datetimePicker\n##### initialPicker\nThe initial picker to open when the control is first pressed\n##### reOpenDefault\nThe picker to set as the picker to open once the control has already been opened at least once. Setting to `false` will default to the date picker if both date and time are enabled, or just the enabled control if only time or date is in use.\n##### datepickerOptions\nObject to configure settings for the datepicker (can be found on angularUI site)\n##### timepickerOptions\nObject to configure settings for the timepicker (can be found on angularUI site)\n##### defaultTime\nInitial time when a new date is selected (e.g. \"14:00:00\" or \"2:00 pm\")\n##### whenClosed\nAn callback function to call when the picker dropdown is closed. See demo for more details.\n\n## uiDatetimePickerConfig\nNow datetimePicker options are globally set by default.  If you do not state the values within the declaration, the config options are used instead.  Here are the default options\n\n```\n.constant('uiDatetimePickerConfig', {\n        dateFormat: 'yyyy-MM-dd HH:mm',\n        defaultTime: '00:00:00',\n        html5Types: {\n            date: 'yyyy-MM-dd',\n            'datetime-local': 'yyyy-MM-ddTHH:mm:ss.sss',\n            'month': 'yyyy-MM'\n        },\n        initialPicker: 'date',\n        reOpenDefault: false,\n        enableDate: true,\n        enableTime: true,\n        buttonBar: {\n            show: true,\n            now: {\n                show: true,\n                text: 'Now'\n            },\n            today: {\n                show: true,\n                text: 'Today'\n            },\n            clear: {\n                show: true,\n                text: 'Clear'\n            },\n            date: {\n                show: true,\n                text: 'Date'\n            },\n            time: {\n                show: true,\n                text: 'Time'\n            },\n            close: {\n                show: true,\n                text: 'Close'\n            }\n        },\n        closeOnDateSelection: true,\n        appendToBody: false,\n        altInputFormats: [],\n        ngModelOptions: { }\n    })\n```\n\n## Css\nPersonally i dont like the look of the angular-ui calendar itself, this is because the buttons are configured to use the btn-default style.  To get round this there are 3 css classes applied to the datetimepicker and depending on the picker that is being shown.  These classes surround the div element that contains the angular-ui datepicker and timepicker.  Using these classes you can change the style of the calendar.  The class are\n\n```\n.datetime-picker-dropdown\n```\n\nApplied to the dropdown that the pickers are contained within\n\n```\n.datetime-picker-dropdown \u003e li.date-picker-menu\n```\nApplied when the date picker is visible\n\n```\n.datetime-picker-dropdown \u003e li.time-picker-menu\n```\nApplied when the time picker is visible\n\n###### EXAMPLE\nFor example, if i add this css code, you will see the difference to the calendar in the images below\n\n```\n.datetime-picker-dropdown \u003e li.date-picker-menu div \u003e table .btn-default {\n    border: 0;\n}\n```\n###### BEFORE\n![alt tag](http://imageshack.com/a/img633/6894/9Dt0Le.gif)\n###### AFTER\n![alt tag](http://imageshack.com/a/img673/5236/to31hz.gif)\n\n\n## Example\nHere is an example to use the directive with a bootstrap input, displaying a calendar button\n\n####HTML\n```\n\u003cp class=\"input-group\"\u003e\n    \u003cinput type=\"text\" class=\"form-control\" datetime-picker=\"dd MMM yyyy HH:mm\" ng-model=\"myDate\" is-open=\"isOpen\"  /\u003e\n    \u003cspan class=\"input-group-btn\"\u003e\n        \u003cbutton type=\"button\" class=\"btn btn-default\" ng-click=\"openCalendar($event, prop)\"\u003e\u003ci class=\"fa fa-calendar\"\u003e\u003c/i\u003e\u003c/button\u003e\n    \u003c/span\u003e\n\u003c/p\u003e\n```\n####JAVASCRIPT\n\n```\napp.controller('MyController', function() {\n    var that = this;\n\n    this.isOpen = false;\n\n    this.openCalendar = function(e) {\n        e.preventDefault();\n        e.stopPropagation();\n\n        that.isOpen = true;\n    };\n});\n```\n\n## Bug\nIf you do find a bug, can you please create a plunkr to replicate the error before raising an issue.  Attach the plunkr as a link to the issue so i can replicate the error and work out a solution. \n\n## Pull Requests\nIf you submit a PR, please test your changes against the demo page to make sure no functionality has been broken. \n\n## Support\nThis was developed using angular-ui bootstrap Version: 1.2.0 - 2016-04-07.  If you have a bug, please check what version of angular-ui you are using.  If you are using a version prior to this, then please upgrade if you can and try it. If the problem persists, please let me know.  I do have a day job but will try to get back to you asap.  If you can fix the bug, then let me know how, or even better, submit a pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslavede%2Fbootstrap-ui-datetime-picker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslavede%2Fbootstrap-ui-datetime-picker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslavede%2Fbootstrap-ui-datetime-picker/lists"}