├── .gitignore ├── acf-iconmoon.php ├── assets ├── css │ ├── fonts │ │ ├── icomoon.eot │ │ ├── icomoon.svg │ │ ├── icomoon.ttf │ │ └── icomoon.woff │ ├── style.css │ └── style.min.css └── js │ ├── input.js │ ├── input.min.js │ └── select2 │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── bower.json │ ├── component.json │ ├── composer.json │ ├── package.json │ ├── release.sh │ ├── select2-bootstrap.css │ ├── select2-spinner.gif │ ├── select2.css │ ├── select2.jquery.json │ ├── select2.js │ ├── select2.min.js │ ├── select2.png │ ├── select2_locale_ar.js │ ├── select2_locale_az.js │ ├── select2_locale_bg.js │ ├── select2_locale_ca.js │ ├── select2_locale_cs.js │ ├── select2_locale_da.js │ ├── select2_locale_de.js │ ├── select2_locale_el.js │ ├── select2_locale_en.js.template │ ├── select2_locale_es.js │ ├── select2_locale_et.js │ ├── select2_locale_eu.js │ ├── select2_locale_fa.js │ ├── select2_locale_fi.js │ ├── select2_locale_fr.js │ ├── select2_locale_gl.js │ ├── select2_locale_he.js │ ├── select2_locale_hr.js │ ├── select2_locale_hu.js │ ├── select2_locale_id.js │ ├── select2_locale_is.js │ ├── select2_locale_it.js │ ├── select2_locale_ja.js │ ├── select2_locale_ka.js │ ├── select2_locale_ko.js │ ├── select2_locale_lt.js │ ├── select2_locale_lv.js │ ├── select2_locale_mk.js │ ├── select2_locale_ms.js │ ├── select2_locale_nb.js │ ├── select2_locale_nl.js │ ├── select2_locale_pl.js │ ├── select2_locale_pt-BR.js │ ├── select2_locale_pt-PT.js │ ├── select2_locale_ro.js │ ├── select2_locale_rs.js │ ├── select2_locale_ru.js │ ├── select2_locale_sk.js │ ├── select2_locale_sv.js │ ├── select2_locale_th.js │ ├── select2_locale_tr.js │ ├── select2_locale_ug-CN.js │ ├── select2_locale_uk.js │ ├── select2_locale_vi.js │ ├── select2_locale_zh-CN.js │ ├── select2_locale_zh-TW.js │ └── select2x2.png ├── composer.json ├── fields ├── iconmoon-base-field.php ├── iconmoon-v4.php └── iconmoon-v5.php ├── gulpfile.js ├── languages ├── bea-acf-iconmoon-fr_FR.mo ├── bea-acf-iconmoon-fr_FR.po └── bea-acf-iconmoon.pot ├── package.json └── readme.md /.gitignore: -------------------------------------------------------------------------------- 1 | # folders and files to be ignored by git 2 | 3 | ############ 4 | ## IDEs 5 | ############ 6 | 7 | *.pydevproject 8 | .project 9 | .metadata 10 | *.swp 11 | *~.nib 12 | local.properties 13 | .classpath 14 | .settings/ 15 | .loadpath 16 | .externalToolBuilders/ 17 | *.launch 18 | .cproject 19 | .buildpath 20 | nbproject/ 21 | node_modules/* 22 | premium/node_modules/* 23 | 24 | ############ 25 | ## OSes 26 | ############ 27 | 28 | [Tt]humbs.db 29 | [Dd]esktop.ini 30 | *.DS_store 31 | .DS_store? 32 | 33 | ############ 34 | ## Misc 35 | ############ 36 | 37 | bin/ 38 | tmp/ 39 | *.tmp 40 | *.bak 41 | *.log 42 | *.[Cc]ache 43 | *.cpr 44 | *.orig 45 | *.php.in 46 | .idea/ 47 | temp/ 48 | ._* 49 | .Trashes 50 | 51 | .svn 52 | 53 | ############ 54 | ## Composer 55 | ############ 56 | vendor/ 57 | composer.phar -------------------------------------------------------------------------------- /acf-iconmoon.php: -------------------------------------------------------------------------------- 1 | " + css.text; 10 | }, 11 | formatSelection: function (css) { 12 | return " " + css.text; 13 | } 14 | }, 15 | '4': { 16 | data: bea_acf_iconmon, 17 | templateResult: function (css) { 18 | return $("" + css.text + ""); 19 | }, 20 | templateSelection: function (css) { 21 | return $("" + css.text + ""); 22 | } 23 | } 24 | }; 25 | 26 | /** 27 | * Get config properties matching current Select2 version. 28 | * 29 | * @param {String} version 30 | * @return {Object} 31 | */ 32 | function select2FormatProvider(version) { 33 | if( 34 | undefined !== version 35 | && undefined !== select2_format[version] 36 | ) { 37 | return select2_format[version]; 38 | } 39 | 40 | return select2_format['4']; 41 | } 42 | 43 | /** 44 | * Detect which version of Select2 is loaded. 45 | * 46 | * @return {String|Boolean} 47 | */ 48 | function detectSelect2Version() { 49 | if(undefined === $.fn.select2) { 50 | return false; 51 | } 52 | 53 | return ('formatResult' in $.fn.select2.defaults) ? '3' : '4'; 54 | } 55 | 56 | /** 57 | * Initialize ACF field. 58 | * 59 | * @param $field 60 | */ 61 | function initialize_field($field) { 62 | 63 | var select2Version = detectSelect2Version(); 64 | if(!select2Version) { 65 | return; 66 | } 67 | var formatProvider = select2FormatProvider( select2Version ); 68 | var input = $field.find('input.bea-acf-iconmoon'); 69 | var allowClear = $(input).attr('data-allow-clear') || 0; 70 | var opts = $.extend({ 71 | dropdownCssClass: "bigdrop widefat", 72 | dropdownAutoWidth: true, 73 | allowClear: 1 == allowClear 74 | }, formatProvider); 75 | 76 | input.select2(opts); 77 | } 78 | 79 | if (typeof acf.add_action !== 'undefined') { 80 | 81 | /* 82 | * ready append (ACF5) 83 | * 84 | * These are 2 events which are fired during the page load 85 | * ready = on page load similar to jQuery(document).ready() 86 | * append = on new DOM elements appended via repeater field 87 | * 88 | * @type event 89 | * @date 20/07/13 90 | * 91 | * @param jQueryel (jQuery selection) the jQuery element which contains the ACF fields 92 | * @return n/a 93 | */ 94 | 95 | acf.add_action('ready append', function (jQueryel) { 96 | // search jQueryel for fields of type 'FIELD_NAME' 97 | acf.get_fields({type: 'iconmoon'}, jQueryel).each(function () { 98 | initialize_field($(this)); 99 | }); 100 | }); 101 | } else { 102 | /* 103 | * acf/setup_fields (ACF4) 104 | * 105 | * This event is triggered when ACF adds any new elements to the DOM. 106 | * 107 | * @type function 108 | * @since 1.0.0 109 | * @date 01/01/12 110 | * 111 | * @param event e: an event object. This can be ignored 112 | * @param Element postbox: An element which contains the new HTML 113 | * 114 | * @return n/a 115 | */ 116 | $(document).on('acf/setup_fields', function (e, postbox) { 117 | $(postbox).find('.field[data-field_type="iconmoon"]').each(function () { 118 | console.log($(this)); 119 | initialize_field($(this)); 120 | }); 121 | }); 122 | } 123 | })(jQuery); 124 | -------------------------------------------------------------------------------- /assets/js/input.min.js: -------------------------------------------------------------------------------- 1 | !function(n,t){function e(n){return t!==n&&t!==i[n]?i[n]:i[4]}function a(){return t===n.fn.select2?!1:"formatResult"in n.fn.select2.defaults?"3":"4"}function o(t){var o=a();if(o){var i=e(o),c=t.find("input.bea-acf-iconmoon"),s=n(c).attr("data-allow-clear")||0,f=n.extend({dropdownCssClass:"bigdrop widefat",dropdownAutoWidth:!0,allowClear:1==s},i);c.select2(f)}}var i={3:{data:{results:bea_acf_iconmon},formatResult:function(n){return" "+n.text},formatSelection:function(n){return" "+n.text}},4:{data:bea_acf_iconmon,templateResult:function(t){return n(""+t.text+"")},templateSelection:function(t){return n(""+t.text+"")}}};"undefined"!=typeof acf.add_action?acf.add_action("ready append",function(t){acf.get_fields({type:"iconmoon"},t).each(function(){o(n(this))})}):n(document).on("acf/setup_fields",function(t,e){n(e).find('.field[data-field_type="iconmoon"]').each(function(){console.log(n(this)),o(n(this))})})}(jQuery); -------------------------------------------------------------------------------- /assets/js/select2/.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | 3 | -------------------------------------------------------------------------------- /assets/js/select2/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Contributing to Select2 2 | ======================= 3 | Looking to contribute something to Select2? **Here's how you can help.** 4 | 5 | Please take a moment to review this document in order to make the contribution 6 | process easy and effective for everyone involved. 7 | 8 | Following these guidelines helps to communicate that you respect the time of 9 | the developers managing and developing this open source project. In return, 10 | they should reciprocate that respect in addressing your issue or assessing 11 | patches and features. 12 | 13 | Using the issue tracker 14 | ----------------------- 15 | When [reporting bugs][reporting-bugs] or 16 | [requesting features][requesting-features], the 17 | [issue tracker on GitHub][issue-tracker] is the recommended channel to use. 18 | 19 | The issue tracker **is not** a place for support requests. The 20 | [mailing list][mailing-list] or [IRC channel][irc-channel] are better places to 21 | get help. 22 | 23 | Reporting bugs with Select2 24 | --------------------------- 25 | We really appreciate clear bug reports that _consistently_ show an issue 26 | _within Select2_. 27 | 28 | The ideal bug report follows these guidelines: 29 | 30 | 1. **Use the [GitHub issue search][issue-search]** — Check if the issue 31 | has already been reported. 32 | 2. **Check if the issue has been fixed** — Try to reproduce the problem 33 | using the code in the `master` branch. 34 | 3. **Isolate the problem** — Try to create an 35 | [isolated test case][isolated-case] that consistently reproduces the problem. 36 | 37 | Please try to be as detailed as possible in your bug report, especially if an 38 | isolated test case cannot be made. Some useful questions to include the answer 39 | to are: 40 | 41 | - What steps can be used to reproduce the issue? 42 | - What is the bug and what is the expected outcome? 43 | - What browser(s) and Operating System have you tested with? 44 | - Does the bug happen consistently across all tested browsers? 45 | - What version of jQuery are you using? And what version of Select2? 46 | - Are you using Select2 with other plugins? 47 | 48 | All of these questions will help people fix and identify any potential bugs. 49 | 50 | Requesting features in Select2 51 | ------------------------------ 52 | Select2 is a large library that carries with it a lot of functionality. Because 53 | of this, many feature requests will not be implemented in the core library. 54 | 55 | Before starting work on a major feature for Select2, **contact the 56 | [community][community] first** or you may risk spending a considerable amount of 57 | time on something which the project developers are not interested in bringing 58 | into the project. 59 | 60 | ### Select2 4.0 61 | 62 | Many feature requests will be closed off until 4.0, where Select2 plans to adopt 63 | a more flexible API. If you are interested in helping with the development of 64 | the next major Select2 release, please send a message to the 65 | [mailing list][mailing-list] or [irc channel][irc-channel] for more information. 66 | 67 | Triaging issues and pull requests 68 | --------------------------------- 69 | Anyone can help the project maintainers triage issues and review pull requests. 70 | 71 | ### Handling new issues 72 | 73 | Select2 regularly receives new issues which need to be tested and organized. 74 | 75 | When a new issue that comes in that is similar to another existing issue, it 76 | should be checked to make sure it is not a duplicate. Duplicates issues should 77 | be marked by replying to the issue with "Duplicate of #[issue number]" where 78 | `[issue number]` is the url or issue number for the existing issue. This will 79 | allow the project maintainers to quickly close off additional issues and keep 80 | the discussion focused within a single issue. 81 | 82 | If you can test issues that are reported to Select2 that contain test cases and 83 | confirm under what conditions bugs happen, that will allow others to identify 84 | what causes a bug quicker. 85 | 86 | ### Reviewing pull requests 87 | 88 | It is very common for pull requests to be opened for issues that contain a clear 89 | solution to the problem. These pull requests should be rigorously reviewed by 90 | the community before being accepted. If you are not sure about a piece of 91 | submitted code, or know of a better way to do something, do not hesitate to make 92 | a comment on the pull request. 93 | 94 | It should also be made clear that **all code contributed to Select** must be 95 | licensable under the [Apache 2 or GPL 2 licenses][licensing]. Code that cannot 96 | be released under either of these licenses **cannot be accepted** into the 97 | project. 98 | 99 | [community]: https://github.com/ivaynberg/select2#community 100 | [reporting-bugs]: #reporting-bugs-with-select2 101 | [requesting-features]: #requesting-features-in-select2 102 | [issue-tracker]: https://github.com/ivaynberg/select2/issues 103 | [mailing-list]: https://github.com/ivaynberg/select2#mailing-list 104 | [irc-channel]: https://github.com/ivaynberg/select2#irc-channel 105 | [issue-search]: https://github.com/ivaynberg/select2/search?q=&type=Issues 106 | [isolated-case]: http://css-tricks.com/6263-reduced-test-cases/ 107 | [licensing]: https://github.com/ivaynberg/select2#copyright-and-license 108 | -------------------------------------------------------------------------------- /assets/js/select2/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2014 Igor Vaynberg 2 | 3 | Version: @@ver@@ Timestamp: @@timestamp@@ 4 | 5 | This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU 6 | General Public License version 2 (the "GPL License"). You may choose either license to govern your 7 | use of this software only upon the condition that you accept all of the terms of either the Apache 8 | License or the GPL License. 9 | 10 | You may obtain a copy of the Apache License and the GPL License at: 11 | 12 | http://www.apache.org/licenses/LICENSE-2.0 13 | http://www.gnu.org/licenses/gpl-2.0.html 14 | 15 | Unless required by applicable law or agreed to in writing, software distributed under the Apache License 16 | or the GPL Licesnse is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 17 | either express or implied. See the Apache License and the GPL License for the specific language governing 18 | permissions and limitations under the Apache License and the GPL License. 19 | -------------------------------------------------------------------------------- /assets/js/select2/README.md: -------------------------------------------------------------------------------- 1 | Select2 2 | ======= 3 | 4 | Select2 is a jQuery-based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results. 5 | 6 | To get started, checkout examples and documentation at http://ivaynberg.github.com/select2 7 | 8 | Use cases 9 | --------- 10 | 11 | * Enhancing native selects with search. 12 | * Enhancing native selects with a better multi-select interface. 13 | * Loading data from JavaScript: easily load items via ajax and have them searchable. 14 | * Nesting optgroups: native selects only support one level of nested. Select2 does not have this restriction. 15 | * Tagging: ability to add new items on the fly. 16 | * Working with large, remote datasets: ability to partially load a dataset based on the search term. 17 | * Paging of large datasets: easy support for loading more pages when the results are scrolled to the end. 18 | * Templating: support for custom rendering of results and selections. 19 | 20 | Browser compatibility 21 | --------------------- 22 | * IE 8+ 23 | * Chrome 8+ 24 | * Firefox 10+ 25 | * Safari 3+ 26 | * Opera 10.6+ 27 | 28 | Usage 29 | ----- 30 | You can source Select2 directly from a CDN like [JSDliver](http://www.jsdelivr.com/#!select2) or [CDNJS](http://www.cdnjs.com/libraries/select2), [download it from this GitHub repo](https://github.com/ivaynberg/select2/tags), or use one of the integrations below. 31 | 32 | Integrations 33 | ------------ 34 | 35 | * [Wicket-Select2](https://github.com/ivaynberg/wicket-select2) (Java / [Apache Wicket](http://wicket.apache.org)) 36 | * [select2-rails](https://github.com/argerim/select2-rails) (Ruby on Rails) 37 | * [AngularUI](http://angular-ui.github.io/#ui-select) ([AngularJS](https://angularjs.org/)) 38 | * [Django](https://github.com/applegrew/django-select2) 39 | * [Symfony](https://github.com/19Gerhard85/sfSelect2WidgetsPlugin) 40 | * [Symfony2](https://github.com/avocode/FormExtensions) 41 | * [Bootstrap 2](https://github.com/t0m/select2-bootstrap-css) and [Bootstrap 3](https://github.com/t0m/select2-bootstrap-css/tree/bootstrap3) (CSS skins) 42 | * [Meteor](https://github.com/nate-strauser/meteor-select2) (modern reactive JavaScript framework; + [Bootstrap 3 skin](https://github.com/esperadomedia/meteor-select2-bootstrap3-css/)) 43 | * [Meteor](https://jquery-select2.meteor.com) 44 | * [Yii 2.x](http://demos.krajee.com/widgets#select2) 45 | * [Yii 1.x](https://github.com/tonybolzan/yii-select2) 46 | * [AtmosphereJS](https://atmospherejs.com/package/jquery-select2) 47 | 48 | ### Example Integrations 49 | 50 | * [Knockout.js](https://github.com/ivaynberg/select2/wiki/Knockout.js-Integration) 51 | * [Socket.IO](https://github.com/ivaynberg/select2/wiki/Socket.IO-Integration) 52 | * [PHP](https://github.com/ivaynberg/select2/wiki/PHP-Example) 53 | * [.Net MVC] (https://github.com/ivaynberg/select2/wiki/.Net-MVC-Example) 54 | 55 | Internationalization (i18n) 56 | --------------------------- 57 | 58 | Select2 supports multiple languages by simply including the right language JS 59 | file (`select2_locale_it.js`, `select2_locale_nl.js`, etc.) after `select2.js`. 60 | 61 | Missing a language? Just copy `select2_locale_en.js.template`, translate 62 | it, and make a pull request back to Select2 here on GitHub. 63 | 64 | Documentation 65 | ------------- 66 | 67 | The documentation for Select2 is available [through GitHub Pages](https://ivaynberg.github.io/select2/) and is located within this repository in the [`gh-pages` branch](https://github.com/ivaynberg/select2/tree/gh-pages). 68 | 69 | Community 70 | --------- 71 | 72 | ### Bug tracker 73 | 74 | Have a bug? Please create an issue here on GitHub! 75 | 76 | https://github.com/ivaynberg/select2/issues 77 | 78 | ### Mailing list 79 | 80 | Have a question? Ask on our mailing list! 81 | 82 | select2@googlegroups.com 83 | 84 | https://groups.google.com/d/forum/select2 85 | 86 | ### IRC channel 87 | 88 | Need help implementing Select2 in your project? Ask in our IRC channel! 89 | 90 | **Network:** [Freenode](https://freenode.net/) (`chat.freenode.net`) 91 | 92 | **Channel:** `#select2` 93 | 94 | **Web access:** https://webchat.freenode.net/?channels=select2 95 | 96 | Copyright and license 97 | --------------------- 98 | 99 | Copyright 2012 Igor Vaynberg 100 | 101 | This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU 102 | General Public License version 2 (the "GPL License"). You may choose either license to govern your 103 | use of this software only upon the condition that you accept all of the terms of either the Apache 104 | License or the GPL License. 105 | 106 | You may obtain a copy of the Apache License and the GPL License in the LICENSE file, or at: 107 | 108 | http://www.apache.org/licenses/LICENSE-2.0 109 | http://www.gnu.org/licenses/gpl-2.0.html 110 | 111 | Unless required by applicable law or agreed to in writing, software distributed under the Apache License 112 | or the GPL License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 113 | either express or implied. See the Apache License and the GPL License for the specific language governing 114 | permissions and limitations under the Apache License and the GPL License. 115 | -------------------------------------------------------------------------------- /assets/js/select2/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "select2", 3 | "version": "3.5.2", 4 | "main": ["select2.js", "select2.css", "select2.png", "select2x2.png", "select2-spinner.gif"], 5 | "dependencies": { 6 | "jquery": ">= 1.7.1" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /assets/js/select2/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "select2", 3 | "repo": "ivaynberg/select2", 4 | "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", 5 | "version": "3.5.2", 6 | "demo": "http://ivaynberg.github.io/select2/", 7 | "keywords": [ 8 | "jquery" 9 | ], 10 | "main": "select2.js", 11 | "styles": [ 12 | "select2.css", 13 | "select2-bootstrap.css" 14 | ], 15 | "scripts": [ 16 | "select2.js", 17 | "select2_locale_ar.js", 18 | "select2_locale_bg.js", 19 | "select2_locale_ca.js", 20 | "select2_locale_cs.js", 21 | "select2_locale_da.js", 22 | "select2_locale_de.js", 23 | "select2_locale_el.js", 24 | "select2_locale_es.js", 25 | "select2_locale_et.js", 26 | "select2_locale_eu.js", 27 | "select2_locale_fa.js", 28 | "select2_locale_fi.js", 29 | "select2_locale_fr.js", 30 | "select2_locale_gl.js", 31 | "select2_locale_he.js", 32 | "select2_locale_hr.js", 33 | "select2_locale_hu.js", 34 | "select2_locale_id.js", 35 | "select2_locale_is.js", 36 | "select2_locale_it.js", 37 | "select2_locale_ja.js", 38 | "select2_locale_ka.js", 39 | "select2_locale_ko.js", 40 | "select2_locale_lt.js", 41 | "select2_locale_lv.js", 42 | "select2_locale_mk.js", 43 | "select2_locale_ms.js", 44 | "select2_locale_nl.js", 45 | "select2_locale_no.js", 46 | "select2_locale_pl.js", 47 | "select2_locale_pt-BR.js", 48 | "select2_locale_pt-PT.js", 49 | "select2_locale_ro.js", 50 | "select2_locale_ru.js", 51 | "select2_locale_sk.js", 52 | "select2_locale_sv.js", 53 | "select2_locale_th.js", 54 | "select2_locale_tr.js", 55 | "select2_locale_uk.js", 56 | "select2_locale_vi.js", 57 | "select2_locale_zh-CN.js", 58 | "select2_locale_zh-TW.js" 59 | ], 60 | "images": [ 61 | "select2-spinner.gif", 62 | "select2.png", 63 | "select2x2.png" 64 | ], 65 | "license": "MIT" 66 | } 67 | -------------------------------------------------------------------------------- /assets/js/select2/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": 3 | "ivaynberg/select2", 4 | "description": "Select2 is a jQuery based replacement for select boxes.", 5 | "version": "3.5.2", 6 | "type": "component", 7 | "homepage": "http://ivaynberg.github.io/select2/", 8 | "license": "Apache-2.0", 9 | "require": { 10 | "robloach/component-installer": "*", 11 | "components/jquery": ">=1.7.1" 12 | }, 13 | "extra": { 14 | "component": { 15 | "scripts": [ 16 | "select2.js" 17 | ], 18 | "files": [ 19 | "select2.js", 20 | "select2_locale_*.js", 21 | "select2.css", 22 | "select2-bootstrap.css", 23 | "select2-spinner.gif", 24 | "select2.png", 25 | "select2x2.png" 26 | ] 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /assets/js/select2/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "Select2", 3 | "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", 4 | "homepage": "http://ivaynberg.github.io/select2", 5 | "author": "Igor Vaynberg", 6 | "repository": {"type": "git", "url": "git://github.com/ivaynberg/select2.git"}, 7 | "main": "select2.js", 8 | "version": "3.5.2", 9 | "jspm": { 10 | "main": "select2", 11 | "files": ["select2.js", "select2.png", "select2.css", "select2-spinner.gif"], 12 | "shim": { 13 | "select2": { 14 | "imports": ["jquery", "./select2.css!"], 15 | "exports": "$" 16 | } 17 | }, 18 | "buildConfig": { "uglify": true } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /assets/js/select2/release.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | echo -n "Enter the version for this release: " 5 | 6 | read ver 7 | 8 | if [ ! $ver ]; then 9 | echo "Invalid version." 10 | exit 11 | fi 12 | 13 | name="select2" 14 | js="$name.js" 15 | mini="$name.min.js" 16 | css="$name.css" 17 | release="$name-$ver" 18 | tag="$ver" 19 | branch="build-$ver" 20 | curbranch=`git branch | grep "*" | sed "s/* //"` 21 | timestamp=$(date) 22 | tokens="s/@@ver@@/$ver/g;s/\@@timestamp@@/$timestamp/g" 23 | remote="origin" 24 | 25 | echo "Pulling from origin" 26 | 27 | git pull 28 | 29 | echo "Updating Version Identifiers" 30 | 31 | sed -E -e "s/\"version\": \"([0-9\.]+)\",/\"version\": \"$ver\",/g" -i -- bower.json select2.jquery.json component.json composer.json package.json 32 | 33 | git add bower.json 34 | git add select2.jquery.json 35 | git add component.json 36 | git add composer.json 37 | git add package.json 38 | 39 | git commit -m "modified version identifiers in descriptors for release $ver" 40 | git push 41 | 42 | git branch "$branch" 43 | git checkout "$branch" 44 | 45 | echo "Tokenizing..." 46 | 47 | find . -name "$js" | xargs -I{} sed -e "$tokens" -i -- {} 48 | find . -name "$css" | xargs -I{} sed -e "$tokens" -i -- {} 49 | 50 | sed -e "s/latest/$ver/g" -i -- bower.json 51 | 52 | git add "$js" 53 | git add "$css" 54 | 55 | echo "Minifying..." 56 | 57 | echo "/*" > "$mini" 58 | cat LICENSE | sed "$tokens" >> "$mini" 59 | echo "*/" >> "$mini" 60 | 61 | curl -s \ 62 | --data-urlencode "js_code@$js" \ 63 | http://marijnhaverbeke.nl/uglifyjs \ 64 | >> "$mini" 65 | 66 | git add "$mini" 67 | 68 | git commit -m "release $ver" 69 | 70 | echo "Tagging..." 71 | git tag -a "$tag" -m "tagged version $ver" 72 | git push "$remote" --tags 73 | 74 | echo "Cleaning Up..." 75 | 76 | git checkout "$curbranch" 77 | git branch -D "$branch" 78 | 79 | echo "Done" 80 | -------------------------------------------------------------------------------- /assets/js/select2/select2-bootstrap.css: -------------------------------------------------------------------------------- 1 | .form-control .select2-choice { 2 | border: 0; 3 | border-radius: 2px; 4 | } 5 | 6 | .form-control .select2-choice .select2-arrow { 7 | border-radius: 0 2px 2px 0; 8 | } 9 | 10 | .form-control.select2-container { 11 | height: auto !important; 12 | padding: 0; 13 | } 14 | 15 | .form-control.select2-container.select2-dropdown-open { 16 | border-color: #5897FB; 17 | border-radius: 3px 3px 0 0; 18 | } 19 | 20 | .form-control .select2-container.select2-dropdown-open .select2-choices { 21 | border-radius: 3px 3px 0 0; 22 | } 23 | 24 | .form-control.select2-container .select2-choices { 25 | border: 0 !important; 26 | border-radius: 3px; 27 | } 28 | 29 | .control-group.warning .select2-container .select2-choice, 30 | .control-group.warning .select2-container .select2-choices, 31 | .control-group.warning .select2-container-active .select2-choice, 32 | .control-group.warning .select2-container-active .select2-choices, 33 | .control-group.warning .select2-dropdown-open.select2-drop-above .select2-choice, 34 | .control-group.warning .select2-dropdown-open.select2-drop-above .select2-choices, 35 | .control-group.warning .select2-container-multi.select2-container-active .select2-choices { 36 | border: 1px solid #C09853 !important; 37 | } 38 | 39 | .control-group.warning .select2-container .select2-choice div { 40 | border-left: 1px solid #C09853 !important; 41 | background: #FCF8E3 !important; 42 | } 43 | 44 | .control-group.error .select2-container .select2-choice, 45 | .control-group.error .select2-container .select2-choices, 46 | .control-group.error .select2-container-active .select2-choice, 47 | .control-group.error .select2-container-active .select2-choices, 48 | .control-group.error .select2-dropdown-open.select2-drop-above .select2-choice, 49 | .control-group.error .select2-dropdown-open.select2-drop-above .select2-choices, 50 | .control-group.error .select2-container-multi.select2-container-active .select2-choices { 51 | border: 1px solid #B94A48 !important; 52 | } 53 | 54 | .control-group.error .select2-container .select2-choice div { 55 | border-left: 1px solid #B94A48 !important; 56 | background: #F2DEDE !important; 57 | } 58 | 59 | .control-group.info .select2-container .select2-choice, 60 | .control-group.info .select2-container .select2-choices, 61 | .control-group.info .select2-container-active .select2-choice, 62 | .control-group.info .select2-container-active .select2-choices, 63 | .control-group.info .select2-dropdown-open.select2-drop-above .select2-choice, 64 | .control-group.info .select2-dropdown-open.select2-drop-above .select2-choices, 65 | .control-group.info .select2-container-multi.select2-container-active .select2-choices { 66 | border: 1px solid #3A87AD !important; 67 | } 68 | 69 | .control-group.info .select2-container .select2-choice div { 70 | border-left: 1px solid #3A87AD !important; 71 | background: #D9EDF7 !important; 72 | } 73 | 74 | .control-group.success .select2-container .select2-choice, 75 | .control-group.success .select2-container .select2-choices, 76 | .control-group.success .select2-container-active .select2-choice, 77 | .control-group.success .select2-container-active .select2-choices, 78 | .control-group.success .select2-dropdown-open.select2-drop-above .select2-choice, 79 | .control-group.success .select2-dropdown-open.select2-drop-above .select2-choices, 80 | .control-group.success .select2-container-multi.select2-container-active .select2-choices { 81 | border: 1px solid #468847 !important; 82 | } 83 | 84 | .control-group.success .select2-container .select2-choice div { 85 | border-left: 1px solid #468847 !important; 86 | background: #DFF0D8 !important; 87 | } 88 | -------------------------------------------------------------------------------- /assets/js/select2/select2-spinner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BeAPI/acf-iconmoon/c556ebe027dedd278ae6985890f595d7b75a671c/assets/js/select2/select2-spinner.gif -------------------------------------------------------------------------------- /assets/js/select2/select2.css: -------------------------------------------------------------------------------- 1 | /* 2 | Version: 3.5.2 Timestamp: Sat Nov 1 14:43:36 EDT 2014 3 | */ 4 | .select2-container { 5 | margin: 0; 6 | position: relative; 7 | display: inline-block; 8 | /* inline-block for ie7 */ 9 | zoom: 1; 10 | *display: inline; 11 | vertical-align: middle; 12 | } 13 | 14 | .select2-container, 15 | .select2-drop, 16 | .select2-search, 17 | .select2-search input { 18 | /* 19 | Force border-box so that % widths fit the parent 20 | container without overlap because of margin/padding. 21 | More Info : http://www.quirksmode.org/css/box.html 22 | */ 23 | -webkit-box-sizing: border-box; /* webkit */ 24 | -moz-box-sizing: border-box; /* firefox */ 25 | box-sizing: border-box; /* css3 */ 26 | } 27 | 28 | .select2-container .select2-choice { 29 | display: block; 30 | height: 26px; 31 | padding: 0 0 0 8px; 32 | overflow: hidden; 33 | position: relative; 34 | 35 | border: 1px solid #aaa; 36 | white-space: nowrap; 37 | line-height: 26px; 38 | color: #444; 39 | text-decoration: none; 40 | 41 | border-radius: 4px; 42 | 43 | background-clip: padding-box; 44 | 45 | -webkit-touch-callout: none; 46 | -webkit-user-select: none; 47 | -moz-user-select: none; 48 | -ms-user-select: none; 49 | user-select: none; 50 | 51 | background-color: #fff; 52 | background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff)); 53 | background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%); 54 | background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%); 55 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0); 56 | background-image: linear-gradient(to top, #eee 0%, #fff 50%); 57 | } 58 | 59 | html[dir="rtl"] .select2-container .select2-choice { 60 | padding: 0 8px 0 0; 61 | } 62 | 63 | .select2-container.select2-drop-above .select2-choice { 64 | border-bottom-color: #aaa; 65 | 66 | border-radius: 0 0 4px 4px; 67 | 68 | background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff)); 69 | background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%); 70 | background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%); 71 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0); 72 | background-image: linear-gradient(to bottom, #eee 0%, #fff 90%); 73 | } 74 | 75 | .select2-container.select2-allowclear .select2-choice .select2-chosen { 76 | margin-right: 42px; 77 | } 78 | 79 | .select2-container .select2-choice > .select2-chosen { 80 | margin-right: 26px; 81 | display: block; 82 | overflow: hidden; 83 | 84 | white-space: nowrap; 85 | 86 | text-overflow: ellipsis; 87 | float: none; 88 | width: auto; 89 | } 90 | 91 | html[dir="rtl"] .select2-container .select2-choice > .select2-chosen { 92 | margin-left: 26px; 93 | margin-right: 0; 94 | } 95 | 96 | .select2-container .select2-choice abbr { 97 | display: none; 98 | width: 12px; 99 | height: 12px; 100 | position: absolute; 101 | right: 24px; 102 | top: 8px; 103 | 104 | font-size: 1px; 105 | text-decoration: none; 106 | 107 | border: 0; 108 | background: url('select2.png') right top no-repeat; 109 | cursor: pointer; 110 | outline: 0; 111 | } 112 | 113 | .select2-container.select2-allowclear .select2-choice abbr { 114 | display: inline-block; 115 | } 116 | 117 | .select2-container .select2-choice abbr:hover { 118 | background-position: right -11px; 119 | cursor: pointer; 120 | } 121 | 122 | .select2-drop-mask { 123 | border: 0; 124 | margin: 0; 125 | padding: 0; 126 | position: fixed; 127 | left: 0; 128 | top: 0; 129 | min-height: 100%; 130 | min-width: 100%; 131 | height: auto; 132 | width: auto; 133 | opacity: 0; 134 | z-index: 9998; 135 | /* styles required for IE to work */ 136 | background-color: #fff; 137 | filter: alpha(opacity=0); 138 | } 139 | 140 | .select2-drop { 141 | width: 100%; 142 | margin-top: -1px; 143 | position: absolute; 144 | z-index: 9999; 145 | top: 100%; 146 | 147 | background: #fff; 148 | color: #000; 149 | border: 1px solid #aaa; 150 | border-top: 0; 151 | 152 | border-radius: 0 0 4px 4px; 153 | 154 | -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15); 155 | box-shadow: 0 4px 5px rgba(0, 0, 0, .15); 156 | } 157 | 158 | .select2-drop.select2-drop-above { 159 | margin-top: 1px; 160 | border-top: 1px solid #aaa; 161 | border-bottom: 0; 162 | 163 | border-radius: 4px 4px 0 0; 164 | 165 | -webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15); 166 | box-shadow: 0 -4px 5px rgba(0, 0, 0, .15); 167 | } 168 | 169 | .select2-drop-active { 170 | border: 1px solid #5897fb; 171 | border-top: none; 172 | } 173 | 174 | .select2-drop.select2-drop-above.select2-drop-active { 175 | border-top: 1px solid #5897fb; 176 | } 177 | 178 | .select2-drop-auto-width { 179 | border-top: 1px solid #aaa; 180 | width: auto; 181 | } 182 | 183 | .select2-drop-auto-width .select2-search { 184 | padding-top: 4px; 185 | } 186 | 187 | .select2-container .select2-choice .select2-arrow { 188 | display: inline-block; 189 | width: 18px; 190 | height: 100%; 191 | position: absolute; 192 | right: 0; 193 | top: 0; 194 | 195 | border-left: 1px solid #aaa; 196 | border-radius: 0 4px 4px 0; 197 | 198 | background-clip: padding-box; 199 | 200 | background: #ccc; 201 | background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee)); 202 | background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%); 203 | background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%); 204 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0); 205 | background-image: linear-gradient(to top, #ccc 0%, #eee 60%); 206 | } 207 | 208 | html[dir="rtl"] .select2-container .select2-choice .select2-arrow { 209 | left: 0; 210 | right: auto; 211 | 212 | border-left: none; 213 | border-right: 1px solid #aaa; 214 | border-radius: 4px 0 0 4px; 215 | } 216 | 217 | .select2-container .select2-choice .select2-arrow b { 218 | display: block; 219 | width: 100%; 220 | height: 100%; 221 | background: url('select2.png') no-repeat 0 1px; 222 | } 223 | 224 | html[dir="rtl"] .select2-container .select2-choice .select2-arrow b { 225 | background-position: 2px 1px; 226 | } 227 | 228 | .select2-search { 229 | display: inline-block; 230 | width: 100%; 231 | min-height: 26px; 232 | margin: 0; 233 | padding-left: 4px; 234 | padding-right: 4px; 235 | 236 | position: relative; 237 | z-index: 10000; 238 | 239 | white-space: nowrap; 240 | } 241 | 242 | .select2-search input { 243 | width: 100%; 244 | height: auto !important; 245 | min-height: 26px; 246 | padding: 4px 20px 4px 5px; 247 | margin: 0; 248 | 249 | outline: 0; 250 | font-family: sans-serif; 251 | font-size: 1em; 252 | 253 | border: 1px solid #aaa; 254 | border-radius: 0; 255 | 256 | -webkit-box-shadow: none; 257 | box-shadow: none; 258 | 259 | background: #fff url('select2.png') no-repeat 100% -22px; 260 | background: url('select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); 261 | background: url('select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); 262 | background: url('select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); 263 | background: url('select2.png') no-repeat 100% -22px, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; 264 | } 265 | 266 | html[dir="rtl"] .select2-search input { 267 | padding: 4px 5px 4px 20px; 268 | 269 | background: #fff url('select2.png') no-repeat -37px -22px; 270 | background: url('select2.png') no-repeat -37px -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); 271 | background: url('select2.png') no-repeat -37px -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); 272 | background: url('select2.png') no-repeat -37px -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); 273 | background: url('select2.png') no-repeat -37px -22px, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; 274 | } 275 | 276 | .select2-drop.select2-drop-above .select2-search input { 277 | margin-top: 4px; 278 | } 279 | 280 | .select2-search input.select2-active { 281 | background: #fff url('select2-spinner.gif') no-repeat 100%; 282 | background: url('select2-spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); 283 | background: url('select2-spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); 284 | background: url('select2-spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); 285 | background: url('select2-spinner.gif') no-repeat 100%, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; 286 | } 287 | 288 | .select2-container-active .select2-choice, 289 | .select2-container-active .select2-choices { 290 | border: 1px solid #5897fb; 291 | outline: none; 292 | 293 | -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3); 294 | box-shadow: 0 0 5px rgba(0, 0, 0, .3); 295 | } 296 | 297 | .select2-dropdown-open .select2-choice { 298 | border-bottom-color: transparent; 299 | -webkit-box-shadow: 0 1px 0 #fff inset; 300 | box-shadow: 0 1px 0 #fff inset; 301 | 302 | border-bottom-left-radius: 0; 303 | border-bottom-right-radius: 0; 304 | 305 | background-color: #eee; 306 | background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee)); 307 | background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%); 308 | background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%); 309 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0); 310 | background-image: linear-gradient(to top, #fff 0%, #eee 50%); 311 | } 312 | 313 | .select2-dropdown-open.select2-drop-above .select2-choice, 314 | .select2-dropdown-open.select2-drop-above .select2-choices { 315 | border: 1px solid #5897fb; 316 | border-top-color: transparent; 317 | 318 | background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee)); 319 | background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%); 320 | background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%); 321 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0); 322 | background-image: linear-gradient(to bottom, #fff 0%, #eee 50%); 323 | } 324 | 325 | .select2-dropdown-open .select2-choice .select2-arrow { 326 | background: transparent; 327 | border-left: none; 328 | filter: none; 329 | } 330 | html[dir="rtl"] .select2-dropdown-open .select2-choice .select2-arrow { 331 | border-right: none; 332 | } 333 | 334 | .select2-dropdown-open .select2-choice .select2-arrow b { 335 | background-position: -18px 1px; 336 | } 337 | 338 | html[dir="rtl"] .select2-dropdown-open .select2-choice .select2-arrow b { 339 | background-position: -16px 1px; 340 | } 341 | 342 | .select2-hidden-accessible { 343 | border: 0; 344 | clip: rect(0 0 0 0); 345 | height: 1px; 346 | margin: -1px; 347 | overflow: hidden; 348 | padding: 0; 349 | position: absolute; 350 | width: 1px; 351 | } 352 | 353 | /* results */ 354 | .select2-results { 355 | max-height: 200px; 356 | padding: 0 0 0 4px; 357 | margin: 4px 4px 4px 0; 358 | position: relative; 359 | overflow-x: hidden; 360 | overflow-y: auto; 361 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 362 | } 363 | 364 | html[dir="rtl"] .select2-results { 365 | padding: 0 4px 0 0; 366 | margin: 4px 0 4px 4px; 367 | } 368 | 369 | .select2-results ul.select2-result-sub { 370 | margin: 0; 371 | padding-left: 0; 372 | } 373 | 374 | .select2-results li { 375 | list-style: none; 376 | display: list-item; 377 | background-image: none; 378 | } 379 | 380 | .select2-results li.select2-result-with-children > .select2-result-label { 381 | font-weight: bold; 382 | } 383 | 384 | .select2-results .select2-result-label { 385 | padding: 3px 7px 4px; 386 | margin: 0; 387 | cursor: pointer; 388 | 389 | min-height: 1em; 390 | 391 | -webkit-touch-callout: none; 392 | -webkit-user-select: none; 393 | -moz-user-select: none; 394 | -ms-user-select: none; 395 | user-select: none; 396 | } 397 | 398 | .select2-results-dept-1 .select2-result-label { padding-left: 20px } 399 | .select2-results-dept-2 .select2-result-label { padding-left: 40px } 400 | .select2-results-dept-3 .select2-result-label { padding-left: 60px } 401 | .select2-results-dept-4 .select2-result-label { padding-left: 80px } 402 | .select2-results-dept-5 .select2-result-label { padding-left: 100px } 403 | .select2-results-dept-6 .select2-result-label { padding-left: 110px } 404 | .select2-results-dept-7 .select2-result-label { padding-left: 120px } 405 | 406 | .select2-results .select2-highlighted { 407 | background: #3875d7; 408 | color: #fff; 409 | } 410 | 411 | .select2-results li em { 412 | background: #feffde; 413 | font-style: normal; 414 | } 415 | 416 | .select2-results .select2-highlighted em { 417 | background: transparent; 418 | } 419 | 420 | .select2-results .select2-highlighted ul { 421 | background: #fff; 422 | color: #000; 423 | } 424 | 425 | .select2-results .select2-no-results, 426 | .select2-results .select2-searching, 427 | .select2-results .select2-ajax-error, 428 | .select2-results .select2-selection-limit { 429 | background: #f4f4f4; 430 | display: list-item; 431 | padding-left: 5px; 432 | } 433 | 434 | /* 435 | disabled look for disabled choices in the results dropdown 436 | */ 437 | .select2-results .select2-disabled.select2-highlighted { 438 | color: #666; 439 | background: #f4f4f4; 440 | display: list-item; 441 | cursor: default; 442 | } 443 | .select2-results .select2-disabled { 444 | background: #f4f4f4; 445 | display: list-item; 446 | cursor: default; 447 | } 448 | 449 | .select2-results .select2-selected { 450 | display: none; 451 | } 452 | 453 | .select2-more-results.select2-active { 454 | background: #f4f4f4 url('select2-spinner.gif') no-repeat 100%; 455 | } 456 | 457 | .select2-results .select2-ajax-error { 458 | background: rgba(255, 50, 50, .2); 459 | } 460 | 461 | .select2-more-results { 462 | background: #f4f4f4; 463 | display: list-item; 464 | } 465 | 466 | /* disabled styles */ 467 | 468 | .select2-container.select2-container-disabled .select2-choice { 469 | background-color: #f4f4f4; 470 | background-image: none; 471 | border: 1px solid #ddd; 472 | cursor: default; 473 | } 474 | 475 | .select2-container.select2-container-disabled .select2-choice .select2-arrow { 476 | background-color: #f4f4f4; 477 | background-image: none; 478 | border-left: 0; 479 | } 480 | 481 | .select2-container.select2-container-disabled .select2-choice abbr { 482 | display: none; 483 | } 484 | 485 | 486 | /* multiselect */ 487 | 488 | .select2-container-multi .select2-choices { 489 | height: auto !important; 490 | height: 1%; 491 | margin: 0; 492 | padding: 0 5px 0 0; 493 | position: relative; 494 | 495 | border: 1px solid #aaa; 496 | cursor: text; 497 | overflow: hidden; 498 | 499 | background-color: #fff; 500 | background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff)); 501 | background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%); 502 | background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%); 503 | background-image: linear-gradient(to bottom, #eee 1%, #fff 15%); 504 | } 505 | 506 | html[dir="rtl"] .select2-container-multi .select2-choices { 507 | padding: 0 0 0 5px; 508 | } 509 | 510 | .select2-locked { 511 | padding: 3px 5px 3px 5px !important; 512 | } 513 | 514 | .select2-container-multi .select2-choices { 515 | min-height: 26px; 516 | } 517 | 518 | .select2-container-multi.select2-container-active .select2-choices { 519 | border: 1px solid #5897fb; 520 | outline: none; 521 | 522 | -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3); 523 | box-shadow: 0 0 5px rgba(0, 0, 0, .3); 524 | } 525 | .select2-container-multi .select2-choices li { 526 | float: left; 527 | list-style: none; 528 | } 529 | html[dir="rtl"] .select2-container-multi .select2-choices li 530 | { 531 | float: right; 532 | } 533 | .select2-container-multi .select2-choices .select2-search-field { 534 | margin: 0; 535 | padding: 0; 536 | white-space: nowrap; 537 | } 538 | 539 | .select2-container-multi .select2-choices .select2-search-field input { 540 | padding: 5px; 541 | margin: 1px 0; 542 | 543 | font-family: sans-serif; 544 | font-size: 100%; 545 | color: #666; 546 | outline: 0; 547 | border: 0; 548 | -webkit-box-shadow: none; 549 | box-shadow: none; 550 | background: transparent !important; 551 | } 552 | 553 | .select2-container-multi .select2-choices .select2-search-field input.select2-active { 554 | background: #fff url('select2-spinner.gif') no-repeat 100% !important; 555 | } 556 | 557 | .select2-default { 558 | color: #999 !important; 559 | } 560 | 561 | .select2-container-multi .select2-choices .select2-search-choice { 562 | padding: 3px 5px 3px 18px; 563 | margin: 3px 0 3px 5px; 564 | position: relative; 565 | 566 | line-height: 13px; 567 | color: #333; 568 | cursor: default; 569 | border: 1px solid #aaaaaa; 570 | 571 | border-radius: 3px; 572 | 573 | -webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05); 574 | box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05); 575 | 576 | background-clip: padding-box; 577 | 578 | -webkit-touch-callout: none; 579 | -webkit-user-select: none; 580 | -moz-user-select: none; 581 | -ms-user-select: none; 582 | user-select: none; 583 | 584 | background-color: #e4e4e4; 585 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0); 586 | background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee)); 587 | background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); 588 | background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); 589 | background-image: linear-gradient(to bottom, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); 590 | } 591 | html[dir="rtl"] .select2-container-multi .select2-choices .select2-search-choice 592 | { 593 | margin: 3px 5px 3px 0; 594 | padding: 3px 18px 3px 5px; 595 | } 596 | .select2-container-multi .select2-choices .select2-search-choice .select2-chosen { 597 | cursor: default; 598 | } 599 | .select2-container-multi .select2-choices .select2-search-choice-focus { 600 | background: #d4d4d4; 601 | } 602 | 603 | .select2-search-choice-close { 604 | display: block; 605 | width: 12px; 606 | height: 13px; 607 | position: absolute; 608 | right: 3px; 609 | top: 4px; 610 | 611 | font-size: 1px; 612 | outline: none; 613 | background: url('select2.png') right top no-repeat; 614 | } 615 | html[dir="rtl"] .select2-search-choice-close { 616 | right: auto; 617 | left: 3px; 618 | } 619 | 620 | .select2-container-multi .select2-search-choice-close { 621 | left: 3px; 622 | } 623 | 624 | html[dir="rtl"] .select2-container-multi .select2-search-choice-close { 625 | left: auto; 626 | right: 2px; 627 | } 628 | 629 | .select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover { 630 | background-position: right -11px; 631 | } 632 | .select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close { 633 | background-position: right -11px; 634 | } 635 | 636 | /* disabled styles */ 637 | .select2-container-multi.select2-container-disabled .select2-choices { 638 | background-color: #f4f4f4; 639 | background-image: none; 640 | border: 1px solid #ddd; 641 | cursor: default; 642 | } 643 | 644 | .select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice { 645 | padding: 3px 5px 3px 5px; 646 | border: 1px solid #ddd; 647 | background-image: none; 648 | background-color: #f4f4f4; 649 | } 650 | 651 | .select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close { display: none; 652 | background: none; 653 | } 654 | /* end multiselect */ 655 | 656 | 657 | .select2-result-selectable .select2-match, 658 | .select2-result-unselectable .select2-match { 659 | text-decoration: underline; 660 | } 661 | 662 | .select2-offscreen, .select2-offscreen:focus { 663 | clip: rect(0 0 0 0) !important; 664 | width: 1px !important; 665 | height: 1px !important; 666 | border: 0 !important; 667 | margin: 0 !important; 668 | padding: 0 !important; 669 | overflow: hidden !important; 670 | position: absolute !important; 671 | outline: 0 !important; 672 | left: 0px !important; 673 | top: 0px !important; 674 | } 675 | 676 | .select2-display-none { 677 | display: none; 678 | } 679 | 680 | .select2-measure-scrollbar { 681 | position: absolute; 682 | top: -10000px; 683 | left: -10000px; 684 | width: 100px; 685 | height: 100px; 686 | overflow: scroll; 687 | } 688 | 689 | /* Retina-ize icons */ 690 | 691 | @media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 2dppx) { 692 | .select2-search input, 693 | .select2-search-choice-close, 694 | .select2-container .select2-choice abbr, 695 | .select2-container .select2-choice .select2-arrow b { 696 | background-image: url('select2x2.png') !important; 697 | background-repeat: no-repeat !important; 698 | background-size: 60px 40px !important; 699 | } 700 | 701 | .select2-search input { 702 | background-position: 100% -21px !important; 703 | } 704 | } 705 | -------------------------------------------------------------------------------- /assets/js/select2/select2.jquery.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "select2", 3 | "title": "Select2", 4 | "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", 5 | "keywords": [ 6 | "select", 7 | "autocomplete", 8 | "typeahead", 9 | "dropdown", 10 | "multiselect", 11 | "tag", 12 | "tagging" 13 | ], 14 | "version": "3.5.2", 15 | "author": { 16 | "name": "Igor Vaynberg", 17 | "url": "https://github.com/ivaynberg" 18 | }, 19 | "licenses": [ 20 | { 21 | "type": "Apache", 22 | "url": "http://www.apache.org/licenses/LICENSE-2.0" 23 | }, 24 | { 25 | "type": "GPL v2", 26 | "url": "http://www.gnu.org/licenses/gpl-2.0.html" 27 | } 28 | ], 29 | "bugs": "https://github.com/ivaynberg/select2/issues", 30 | "homepage": "http://ivaynberg.github.com/select2", 31 | "docs": "http://ivaynberg.github.com/select2/", 32 | "download": "https://github.com/ivaynberg/select2/tags", 33 | "dependencies": { 34 | "jquery": ">=1.7.1" 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /assets/js/select2/select2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BeAPI/acf-iconmoon/c556ebe027dedd278ae6985890f595d7b75a671c/assets/js/select2/select2.png -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ar.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Arabic translation. 3 | * 4 | * Author: Adel KEDJOUR 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ar'] = { 10 | formatNoMatches: function () { return "لم يتم العثور على مطابقات"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; if (n == 1){ return "الرجاء إدخال حرف واحد على الأكثر"; } return n == 2 ? "الرجاء إدخال حرفين على الأكثر" : "الرجاء إدخال " + n + " على الأكثر"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; if (n == 1){ return "الرجاء إدخال حرف واحد على الأقل"; } return n == 2 ? "الرجاء إدخال حرفين على الأقل" : "الرجاء إدخال " + n + " على الأقل "; }, 13 | formatSelectionTooBig: function (limit) { if (limit == 1){ return "يمكنك أن تختار إختيار واحد فقط"; } return limit == 2 ? "يمكنك أن تختار إختيارين فقط" : "يمكنك أن تختار " + limit + " إختيارات فقط"; }, 14 | formatLoadMore: function (pageNumber) { return "تحميل المزيد من النتائج…"; }, 15 | formatSearching: function () { return "البحث…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ar']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_az.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Azerbaijani translation. 3 | * 4 | * Author: Farhad Safarov 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['az'] = { 10 | formatMatches: function (matches) { return matches + " nəticə mövcuddur, hərəkət etdirmək üçün yuxarı və aşağı düymələrindən istifadə edin."; }, 11 | formatNoMatches: function () { return "Nəticə tapılmadı"; }, 12 | formatInputTooShort: function (input, min) { var n = min - input.length; return n + " simvol daxil edin"; }, 13 | formatInputTooLong: function (input, max) { var n = input.length - max; return n + " simvol silin"; }, 14 | formatSelectionTooBig: function (limit) { return "Sadəcə " + limit + " element seçə bilərsiniz"; }, 15 | formatLoadMore: function (pageNumber) { return "Daha çox nəticə yüklənir…"; }, 16 | formatSearching: function () { return "Axtarılır…"; } 17 | }; 18 | 19 | $.extend($.fn.select2.defaults, $.fn.select2.locales['az']); 20 | })(jQuery); 21 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_bg.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Bulgarian translation. 3 | * 4 | * @author Lubomir Vikev 5 | * @author Uriy Efremochkin 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['bg'] = { 11 | formatNoMatches: function () { return "Няма намерени съвпадения"; }, 12 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Моля въведете още " + n + " символ" + (n > 1 ? "а" : ""); }, 13 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Моля въведете с " + n + " по-малко символ" + (n > 1 ? "а" : ""); }, 14 | formatSelectionTooBig: function (limit) { return "Можете да направите до " + limit + (limit > 1 ? " избора" : " избор"); }, 15 | formatLoadMore: function (pageNumber) { return "Зареждат се още…"; }, 16 | formatSearching: function () { return "Търсене…"; } 17 | }; 18 | 19 | $.extend($.fn.select2.defaults, $.fn.select2.locales['bg']); 20 | })(jQuery); 21 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ca.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Catalan translation. 3 | * 4 | * Author: David Planella 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ca'] = { 10 | formatNoMatches: function () { return "No s'ha trobat cap coincidència"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduïu " + n + " caràcter" + (n == 1 ? "" : "s") + " més"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Introduïu " + n + " caràcter" + (n == 1? "" : "s") + "menys"; }, 13 | formatSelectionTooBig: function (limit) { return "Només podeu seleccionar " + limit + " element" + (limit == 1 ? "" : "s"); }, 14 | formatLoadMore: function (pageNumber) { return "S'estan carregant més resultats…"; }, 15 | formatSearching: function () { return "S'està cercant…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ca']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_cs.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Czech translation. 3 | * 4 | * Author: Michal Marek 5 | * Author - sklonovani: David Vallner 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | // use text for the numbers 2 through 4 10 | var smallNumbers = { 11 | 2: function(masc) { return (masc ? "dva" : "dvě"); }, 12 | 3: function() { return "tři"; }, 13 | 4: function() { return "čtyři"; } 14 | } 15 | $.fn.select2.locales['cs'] = { 16 | formatNoMatches: function () { return "Nenalezeny žádné položky"; }, 17 | formatInputTooShort: function (input, min) { 18 | var n = min - input.length; 19 | if (n == 1) { 20 | return "Prosím zadejte ještě jeden znak"; 21 | } else if (n <= 4) { 22 | return "Prosím zadejte ještě další "+smallNumbers[n](true)+" znaky"; 23 | } else { 24 | return "Prosím zadejte ještě dalších "+n+" znaků"; 25 | } 26 | }, 27 | formatInputTooLong: function (input, max) { 28 | var n = input.length - max; 29 | if (n == 1) { 30 | return "Prosím zadejte o jeden znak méně"; 31 | } else if (n <= 4) { 32 | return "Prosím zadejte o "+smallNumbers[n](true)+" znaky méně"; 33 | } else { 34 | return "Prosím zadejte o "+n+" znaků méně"; 35 | } 36 | }, 37 | formatSelectionTooBig: function (limit) { 38 | if (limit == 1) { 39 | return "Můžete zvolit jen jednu položku"; 40 | } else if (limit <= 4) { 41 | return "Můžete zvolit maximálně "+smallNumbers[limit](false)+" položky"; 42 | } else { 43 | return "Můžete zvolit maximálně "+limit+" položek"; 44 | } 45 | }, 46 | formatLoadMore: function (pageNumber) { return "Načítají se další výsledky…"; }, 47 | formatSearching: function () { return "Vyhledávání…"; } 48 | }; 49 | 50 | $.extend($.fn.select2.defaults, $.fn.select2.locales['cs']); 51 | })(jQuery); 52 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_da.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Danish translation. 3 | * 4 | * Author: Anders Jenbo 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['da'] = { 10 | formatNoMatches: function () { return "Ingen resultater fundet"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Angiv venligst " + n + " tegn mere"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Angiv venligst " + n + " tegn mindre"; }, 13 | formatSelectionTooBig: function (limit) { return "Du kan kun vælge " + limit + " emne" + (limit === 1 ? "" : "r"); }, 14 | formatLoadMore: function (pageNumber) { return "Indlæser flere resultater…"; }, 15 | formatSearching: function () { return "Søger…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['da']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_de.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 German translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['de'] = { 8 | formatNoMatches: function () { return "Keine Übereinstimmungen gefunden"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Bitte " + n + " Zeichen mehr eingeben"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Bitte " + n + " Zeichen weniger eingeben"; }, 11 | formatSelectionTooBig: function (limit) { return "Sie können nur " + limit + " Eintr" + (limit === 1 ? "ag" : "äge") + " auswählen"; }, 12 | formatLoadMore: function (pageNumber) { return "Lade mehr Ergebnisse…"; }, 13 | formatSearching: function () { return "Suche…"; }, 14 | formatMatches: function (matches) { return matches + " Ergebnis " + (matches > 1 ? "se" : "") + " verfügbar, zum Navigieren die Hoch-/Runter-Pfeiltasten verwenden."; } 15 | }; 16 | 17 | $.extend($.fn.select2.defaults, $.fn.select2.locales['de']); 18 | })(jQuery); -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_el.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Greek translation. 3 | * 4 | * @author Uriy Efremochkin 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['el'] = { 10 | formatNoMatches: function () { return "Δεν βρέθηκαν αποτελέσματα"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Παρακαλούμε εισάγετε " + n + " περισσότερο" + (n > 1 ? "υς" : "") + " χαρακτήρ" + (n > 1 ? "ες" : "α"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Παρακαλούμε διαγράψτε " + n + " χαρακτήρ" + (n > 1 ? "ες" : "α"); }, 13 | formatSelectionTooBig: function (limit) { return "Μπορείτε να επιλέξετε μόνο " + limit + " αντικείμεν" + (limit > 1 ? "α" : "ο"); }, 14 | formatLoadMore: function (pageNumber) { return "Φόρτωση περισσότερων…"; }, 15 | formatSearching: function () { return "Αναζήτηση…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['el']); 19 | })(jQuery); -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_en.js.template: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 translation. 3 | * 4 | * Author: Your Name 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['en'] = { 10 | formatMatches: function (matches) { if (matches === 1) { return "One result is available, press enter to select it."; } return matches + " results are available, use up and down arrow keys to navigate."; }, 11 | formatNoMatches: function () { return "No matches found"; }, 12 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Please enter " + n + " or more character" + (n == 1 ? "" : "s"); }, 13 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Please delete " + n + " character" + (n == 1 ? "" : "s"); }, 14 | formatSelectionTooBig: function (limit) { return "You can only select " + limit + " item" + (limit == 1 ? "" : "s"); }, 15 | formatLoadMore: function (pageNumber) { return "Loading more results…"; }, 16 | formatSearching: function () { return "Searching…"; } 17 | }; 18 | 19 | $.extend($.fn.select2.defaults, $.fn.select2.locales['en']); 20 | })(jQuery); 21 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_es.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Spanish translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['es'] = { 8 | formatMatches: function (matches) { if (matches === 1) { return "Un resultado disponible, presione enter para seleccionarlo."; } return matches + " resultados disponibles, use las teclas de dirección para navegar."; }, 9 | formatNoMatches: function () { return "No se encontraron resultados"; }, 10 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Por favor, introduzca " + n + " car" + (n == 1? "ácter" : "acteres"); }, 11 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Por favor, elimine " + n + " car" + (n == 1? "ácter" : "acteres"); }, 12 | formatSelectionTooBig: function (limit) { return "Sólo puede seleccionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, 13 | formatLoadMore: function (pageNumber) { return "Cargando más resultados…"; }, 14 | formatSearching: function () { return "Buscando…"; }, 15 | formatAjaxError: function() { return "La carga falló"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['es']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_et.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Estonian translation. 3 | * 4 | * Author: Kuldar Kalvik 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['et'] = { 10 | formatNoMatches: function () { return "Tulemused puuduvad"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Sisesta " + n + " täht" + (n == 1 ? "" : "e") + " rohkem"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Sisesta " + n + " täht" + (n == 1? "" : "e") + " vähem"; }, 13 | formatSelectionTooBig: function (limit) { return "Saad vaid " + limit + " tulemus" + (limit == 1 ? "e" : "t") + " valida"; }, 14 | formatLoadMore: function (pageNumber) { return "Laen tulemusi.."; }, 15 | formatSearching: function () { return "Otsin.."; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['et']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_eu.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Basque translation. 3 | * 4 | * Author: Julen Ruiz Aizpuru 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['eu'] = { 10 | formatNoMatches: function () { 11 | return "Ez da bat datorrenik aurkitu"; 12 | }, 13 | formatInputTooShort: function (input, min) { 14 | var n = min - input.length; 15 | if (n === 1) { 16 | return "Idatzi karaktere bat gehiago"; 17 | } else { 18 | return "Idatzi " + n + " karaktere gehiago"; 19 | } 20 | }, 21 | formatInputTooLong: function (input, max) { 22 | var n = input.length - max; 23 | if (n === 1) { 24 | return "Idatzi karaktere bat gutxiago"; 25 | } else { 26 | return "Idatzi " + n + " karaktere gutxiago"; 27 | } 28 | }, 29 | formatSelectionTooBig: function (limit) { 30 | if (limit === 1 ) { 31 | return "Elementu bakarra hauta dezakezu"; 32 | } else { 33 | return limit + " elementu hauta ditzakezu soilik"; 34 | } 35 | }, 36 | formatLoadMore: function (pageNumber) { 37 | return "Emaitza gehiago kargatzen…"; 38 | }, 39 | formatSearching: function () { 40 | return "Bilatzen…"; 41 | } 42 | }; 43 | 44 | $.extend($.fn.select2.defaults, $.fn.select2.locales['eu']); 45 | })(jQuery); 46 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_fa.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Persian translation. 3 | * 4 | * Author: Ali Choopan 5 | * Author: Ebrahim Byagowi 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['fa'] = { 11 | formatMatches: function (matches) { return matches + " نتیجه موجود است، کلیدهای جهت بالا و پایین را برای گشتن استفاده کنید."; }, 12 | formatNoMatches: function () { return "نتیجهای یافت نشد."; }, 13 | formatInputTooShort: function (input, min) { var n = min - input.length; return "لطفاً " + n + " نویسه بیشتر وارد نمایید"; }, 14 | formatInputTooLong: function (input, max) { var n = input.length - max; return "لطفاً " + n + " نویسه را حذف کنید."; }, 15 | formatSelectionTooBig: function (limit) { return "شما فقط میتوانید " + limit + " مورد را انتخاب کنید"; }, 16 | formatLoadMore: function (pageNumber) { return "در حال بارگیری موارد بیشتر…"; }, 17 | formatSearching: function () { return "در حال جستجو…"; } 18 | }; 19 | 20 | $.extend($.fn.select2.defaults, $.fn.select2.locales['fa']); 21 | })(jQuery); 22 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_fi.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Finnish translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['fi'] = { 7 | formatNoMatches: function () { 8 | return "Ei tuloksia"; 9 | }, 10 | formatInputTooShort: function (input, min) { 11 | var n = min - input.length; 12 | return "Ole hyvä ja anna " + n + " merkkiä lisää"; 13 | }, 14 | formatInputTooLong: function (input, max) { 15 | var n = input.length - max; 16 | return "Ole hyvä ja anna " + n + " merkkiä vähemmän"; 17 | }, 18 | formatSelectionTooBig: function (limit) { 19 | return "Voit valita ainoastaan " + limit + " kpl"; 20 | }, 21 | formatLoadMore: function (pageNumber) { 22 | return "Ladataan lisää tuloksia…"; 23 | }, 24 | formatSearching: function () { 25 | return "Etsitään…"; 26 | } 27 | }; 28 | 29 | $.extend($.fn.select2.defaults, $.fn.select2.locales['fi']); 30 | })(jQuery); 31 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_fr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 French translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['fr'] = { 8 | formatMatches: function (matches) { return matches + " résultats sont disponibles, utilisez les flèches haut et bas pour naviguer."; }, 9 | formatNoMatches: function () { return "Aucun résultat trouvé"; }, 10 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Saisissez " + n + " caractère" + (n == 1? "" : "s") + " supplémentaire" + (n == 1? "" : "s") ; }, 11 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Supprimez " + n + " caractère" + (n == 1? "" : "s"); }, 12 | formatSelectionTooBig: function (limit) { return "Vous pouvez seulement sélectionner " + limit + " élément" + (limit == 1 ? "" : "s"); }, 13 | formatLoadMore: function (pageNumber) { return "Chargement de résultats supplémentaires…"; }, 14 | formatSearching: function () { return "Recherche en cours…"; } 15 | }; 16 | 17 | $.extend($.fn.select2.defaults, $.fn.select2.locales['fr']); 18 | })(jQuery); 19 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_gl.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Galician translation 3 | * 4 | * Author: Leandro Regueiro 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['gl'] = { 10 | formatNoMatches: function () { 11 | return "Non se atoparon resultados"; 12 | }, 13 | formatInputTooShort: function (input, min) { 14 | var n = min - input.length; 15 | if (n === 1) { 16 | return "Engada un carácter"; 17 | } else { 18 | return "Engada " + n + " caracteres"; 19 | } 20 | }, 21 | formatInputTooLong: function (input, max) { 22 | var n = input.length - max; 23 | if (n === 1) { 24 | return "Elimine un carácter"; 25 | } else { 26 | return "Elimine " + n + " caracteres"; 27 | } 28 | }, 29 | formatSelectionTooBig: function (limit) { 30 | if (limit === 1 ) { 31 | return "Só pode seleccionar un elemento"; 32 | } else { 33 | return "Só pode seleccionar " + limit + " elementos"; 34 | } 35 | }, 36 | formatLoadMore: function (pageNumber) { 37 | return "Cargando máis resultados…"; 38 | }, 39 | formatSearching: function () { 40 | return "Buscando…"; 41 | } 42 | }; 43 | 44 | $.extend($.fn.select2.defaults, $.fn.select2.locales['gl']); 45 | })(jQuery); 46 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_he.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Hebrew translation. 3 | * 4 | * Author: Yakir Sitbon 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['he'] = { 10 | formatNoMatches: function () { return "לא נמצאו התאמות"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "נא להזין עוד " + n + " תווים נוספים"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "נא להזין פחות " + n + " תווים"; }, 13 | formatSelectionTooBig: function (limit) { return "ניתן לבחור " + limit + " פריטים"; }, 14 | formatLoadMore: function (pageNumber) { return "טוען תוצאות נוספות…"; }, 15 | formatSearching: function () { return "מחפש…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['he']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_hr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Croatian translation. 3 | * 4 | * @author Edi Modrić 5 | * @author Uriy Efremochkin 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['hr'] = { 11 | formatNoMatches: function () { return "Nema rezultata"; }, 12 | formatInputTooShort: function (input, min) { return "Unesite još" + character(min - input.length); }, 13 | formatInputTooLong: function (input, max) { return "Unesite" + character(input.length - max) + " manje"; }, 14 | formatSelectionTooBig: function (limit) { return "Maksimalan broj odabranih stavki je " + limit; }, 15 | formatLoadMore: function (pageNumber) { return "Učitavanje rezultata…"; }, 16 | formatSearching: function () { return "Pretraga…"; } 17 | }; 18 | 19 | $.extend($.fn.select2.defaults, $.fn.select2.locales['hr']); 20 | 21 | function character (n) { 22 | return " " + n + " znak" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "a" : "" : "ova"); 23 | } 24 | })(jQuery); 25 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_hu.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Hungarian translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['hu'] = { 8 | formatNoMatches: function () { return "Nincs találat."; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Túl rövid. Még " + n + " karakter hiányzik."; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Túl hosszú. " + n + " karakterrel több, mint kellene."; }, 11 | formatSelectionTooBig: function (limit) { return "Csak " + limit + " elemet lehet kiválasztani."; }, 12 | formatLoadMore: function (pageNumber) { return "Töltés…"; }, 13 | formatSearching: function () { return "Keresés…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['hu']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_id.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Indonesian translation. 3 | * 4 | * Author: Ibrahim Yusuf 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['id'] = { 10 | formatNoMatches: function () { return "Tidak ada data yang sesuai"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Masukkan " + n + " huruf lagi" + (n == 1 ? "" : "s"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Hapus " + n + " huruf" + (n == 1 ? "" : "s"); }, 13 | formatSelectionTooBig: function (limit) { return "Anda hanya dapat memilih " + limit + " pilihan" + (limit == 1 ? "" : "s"); }, 14 | formatLoadMore: function (pageNumber) { return "Mengambil data…"; }, 15 | formatSearching: function () { return "Mencari…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['id']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_is.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Icelandic translation. 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['is'] = { 8 | formatNoMatches: function () { return "Ekkert fannst"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vinsamlegast skrifið " + n + " staf" + (n > 1 ? "i" : "") + " í viðbót"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vinsamlegast styttið texta um " + n + " staf" + (n > 1 ? "i" : ""); }, 11 | formatSelectionTooBig: function (limit) { return "Þú getur aðeins valið " + limit + " atriði"; }, 12 | formatLoadMore: function (pageNumber) { return "Sæki fleiri niðurstöður…"; }, 13 | formatSearching: function () { return "Leita…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['is']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_it.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Italian translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['it'] = { 8 | formatNoMatches: function () { return "Nessuna corrispondenza trovata"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Inserisci ancora " + n + " caratter" + (n == 1? "e" : "i"); }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Inserisci " + n + " caratter" + (n == 1? "e" : "i") + " in meno"; }, 11 | formatSelectionTooBig: function (limit) { return "Puoi selezionare solo " + limit + " element" + (limit == 1 ? "o" : "i"); }, 12 | formatLoadMore: function (pageNumber) { return "Caricamento in corso…"; }, 13 | formatSearching: function () { return "Ricerca…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['it']); 17 | })(jQuery); -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ja.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Japanese translation. 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['ja'] = { 8 | formatNoMatches: function () { return "該当なし"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "後" + n + "文字入れてください"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "検索文字列が" + n + "文字長すぎます"; }, 11 | formatSelectionTooBig: function (limit) { return "最多で" + limit + "項目までしか選択できません"; }, 12 | formatLoadMore: function (pageNumber) { return "読込中・・・"; }, 13 | formatSearching: function () { return "検索中・・・"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ja']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ka.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Georgian (Kartuli) translation. 3 | * 4 | * Author: Dimitri Kurashvili dimakura@gmail.com 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ka'] = { 10 | formatNoMatches: function () { return "ვერ მოიძებნა"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "გთხოვთ შეიყვანოთ კიდევ " + n + " სიმბოლო"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "გთხოვთ წაშალოთ " + n + " სიმბოლო"; }, 13 | formatSelectionTooBig: function (limit) { return "თქვენ შეგიძლიათ მხოლოდ " + limit + " ჩანაწერის მონიშვნა"; }, 14 | formatLoadMore: function (pageNumber) { return "შედეგის ჩატვირთვა…"; }, 15 | formatSearching: function () { return "ძებნა…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ka']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ko.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Korean translation. 3 | * 4 | * @author Swen Mun 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ko'] = { 10 | formatNoMatches: function () { return "결과 없음"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "너무 짧습니다. "+n+"글자 더 입력해주세요."; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "너무 깁니다. "+n+"글자 지워주세요."; }, 13 | formatSelectionTooBig: function (limit) { return "최대 "+limit+"개까지만 선택하실 수 있습니다."; }, 14 | formatLoadMore: function (pageNumber) { return "불러오는 중…"; }, 15 | formatSearching: function () { return "검색 중…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ko']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_lt.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Lithuanian translation. 3 | * 4 | * @author CRONUS Karmalakas 5 | * @author Uriy Efremochkin 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['lt'] = { 11 | formatNoMatches: function () { return "Atitikmenų nerasta"; }, 12 | formatInputTooShort: function (input, min) { return "Įrašykite dar" + character(min - input.length); }, 13 | formatInputTooLong: function (input, max) { return "Pašalinkite" + character(input.length - max); }, 14 | formatSelectionTooBig: function (limit) { 15 | return "Jūs galite pasirinkti tik " + limit + " element" + ((limit%100 > 9 && limit%100 < 21) || limit%10 == 0 ? "ų" : limit%10 > 1 ? "us" : "ą"); 16 | }, 17 | formatLoadMore: function (pageNumber) { return "Kraunama daugiau rezultatų…"; }, 18 | formatSearching: function () { return "Ieškoma…"; } 19 | }; 20 | 21 | $.extend($.fn.select2.defaults, $.fn.select2.locales['lt']); 22 | 23 | function character (n) { 24 | return " " + n + " simbol" + ((n%100 > 9 && n%100 < 21) || n%10 == 0 ? "ių" : n%10 > 1 ? "ius" : "į"); 25 | } 26 | })(jQuery); 27 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_lv.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Latvian translation. 3 | * 4 | * @author Uriy Efremochkin 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['lv'] = { 10 | formatNoMatches: function () { return "Sakritību nav"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Lūdzu ievadiet vēl " + n + " simbol" + (n == 11 ? "us" : n%10 == 1 ? "u" : "us"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Lūdzu ievadiet par " + n + " simbol" + (n == 11 ? "iem" : n%10 == 1 ? "u" : "iem") + " mazāk"; }, 13 | formatSelectionTooBig: function (limit) { return "Jūs varat izvēlēties ne vairāk kā " + limit + " element" + (limit == 11 ? "us" : limit%10 == 1 ? "u" : "us"); }, 14 | formatLoadMore: function (pageNumber) { return "Datu ielāde…"; }, 15 | formatSearching: function () { return "Meklēšana…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['lv']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_mk.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Macedonian translation. 3 | * 4 | * Author: Marko Aleksic 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['mk'] = { 10 | formatNoMatches: function () { return "Нема пронајдено совпаѓања"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Ве молиме внесете уште " + n + " карактер" + (n == 1 ? "" : "и"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Ве молиме внесете " + n + " помалку карактер" + (n == 1? "" : "и"); }, 13 | formatSelectionTooBig: function (limit) { return "Можете да изберете само " + limit + " ставк" + (limit == 1 ? "а" : "и"); }, 14 | formatLoadMore: function (pageNumber) { return "Вчитување резултати…"; }, 15 | formatSearching: function () { return "Пребарување…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['mk']); 19 | })(jQuery); -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ms.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Malay translation. 3 | * 4 | * Author: Kepoweran 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ms'] = { 10 | formatNoMatches: function () { return "Tiada padanan yang ditemui"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Sila masukkan " + n + " aksara lagi"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Sila hapuskan " + n + " aksara"; }, 13 | formatSelectionTooBig: function (limit) { return "Anda hanya boleh memilih " + limit + " pilihan"; }, 14 | formatLoadMore: function (pageNumber) { return "Sedang memuatkan keputusan…"; }, 15 | formatSearching: function () { return "Mencari…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ms']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_nb.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Norwegian Bokmål translation. 3 | * 4 | * Author: Torgeir Veimo 5 | * Author: Bjørn Johansen 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['nb'] = { 11 | formatMatches: function (matches) { if (matches === 1) { return "Ett resultat er tilgjengelig, trykk enter for å velge det."; } return matches + " resultater er tilgjengelig. Bruk piltastene opp og ned for å navigere."; }, 12 | formatNoMatches: function () { return "Ingen treff"; }, 13 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vennligst skriv inn " + n + (n>1 ? " flere tegn" : " tegn til"); }, 14 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vennligst fjern " + n + " tegn"; }, 15 | formatSelectionTooBig: function (limit) { return "Du kan velge maks " + limit + " elementer"; }, 16 | formatLoadMore: function (pageNumber) { return "Laster flere resultater …"; }, 17 | formatSearching: function () { return "Søker …"; } 18 | }; 19 | 20 | $.extend($.fn.select2.defaults, $.fn.select2.locales['no']); 21 | })(jQuery); 22 | 23 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_nl.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Dutch translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['nl'] = { 8 | formatNoMatches: function () { return "Geen resultaten gevonden"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vul nog " + n + " karakter" + (n == 1? "" : "s") + " in"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Haal " + n + " karakter" + (n == 1? "" : "s") + " weg"; }, 11 | formatSelectionTooBig: function (limit) { return "Maximaal " + limit + " item" + (limit == 1 ? "" : "s") + " toegestaan"; }, 12 | formatLoadMore: function (pageNumber) { return "Meer resultaten laden…"; }, 13 | formatSearching: function () { return "Zoeken…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['nl']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_pl.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Polish translation. 3 | * 4 | * @author Jan Kondratowicz 5 | * @author Uriy Efremochkin 6 | * @author Michał Połtyn 7 | * @author Damian Zajkowski 8 | */ 9 | (function($) { 10 | "use strict"; 11 | 12 | $.fn.select2.locales['pl'] = { 13 | formatNoMatches: function() { 14 | return "Brak wyników"; 15 | }, 16 | formatInputTooShort: function(input, min) { 17 | return "Wpisz co najmniej" + character(min - input.length, "znak", "i"); 18 | }, 19 | formatInputTooLong: function(input, max) { 20 | return "Wpisana fraza jest za długa o" + character(input.length - max, "znak", "i"); 21 | }, 22 | formatSelectionTooBig: function(limit) { 23 | return "Możesz zaznaczyć najwyżej" + character(limit, "element", "y"); 24 | }, 25 | formatLoadMore: function(pageNumber) { 26 | return "Ładowanie wyników…"; 27 | }, 28 | formatSearching: function() { 29 | return "Szukanie…"; 30 | } 31 | }; 32 | 33 | $.extend($.fn.select2.defaults, $.fn.select2.locales['pl']); 34 | 35 | function character(n, word, pluralSuffix) { 36 | //Liczba pojedyncza - brak suffiksu 37 | //jeden znak 38 | //jeden element 39 | var suffix = ''; 40 | if (n > 1 && n < 5) { 41 | //Liczaba mnoga ilość od 2 do 4 - własny suffiks 42 | //Dwa znaki, trzy znaki, cztery znaki. 43 | //Dwa elementy, trzy elementy, cztery elementy 44 | suffix = pluralSuffix; 45 | } else if (n == 0 || n >= 5) { 46 | //Ilość 0 suffiks ów 47 | //Liczaba mnoga w ilości 5 i więcej - suffiks ów (nie poprawny dla wszystkich wyrazów, np. 100 wiadomości) 48 | //Zero znaków, Pięć znaków, sześć znaków, siedem znaków, osiem znaków. 49 | //Zero elementów Pięć elementów, sześć elementów, siedem elementów, osiem elementów. 50 | suffix = 'ów'; 51 | } 52 | return " " + n + " " + word + suffix; 53 | } 54 | })(jQuery); 55 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_pt-BR.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Brazilian Portuguese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['pt-BR'] = { 8 | formatNoMatches: function () { return "Nenhum resultado encontrado"; }, 9 | formatAjaxError: function () { return "Erro na busca"; }, 10 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Digite " + (min == 1 ? "" : "mais") + " " + n + " caracter" + (n == 1? "" : "es"); }, 11 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " caracter" + (n == 1? "" : "es"); }, 12 | formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, 13 | formatLoadMore: function (pageNumber) { return "Carregando mais resultados…"; }, 14 | formatSearching: function () { return "Buscando…"; } 15 | }; 16 | 17 | $.extend($.fn.select2.defaults, $.fn.select2.locales['pt-BR']); 18 | })(jQuery); 19 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_pt-PT.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Portuguese (Portugal) translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['pt-PT'] = { 8 | formatNoMatches: function () { return "Nenhum resultado encontrado"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduza " + n + " car" + (n == 1 ? "ácter" : "acteres"); }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " car" + (n == 1 ? "ácter" : "acteres"); }, 11 | formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, 12 | formatLoadMore: function (pageNumber) { return "A carregar mais resultados…"; }, 13 | formatSearching: function () { return "A pesquisar…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['pt-PT']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ro.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Romanian translation. 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['ro'] = { 8 | formatNoMatches: function () { return "Nu a fost găsit nimic"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vă rugăm să introduceți incă " + n + " caracter" + (n == 1 ? "" : "e"); }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vă rugăm să introduceți mai puțin de " + n + " caracter" + (n == 1? "" : "e"); }, 11 | formatSelectionTooBig: function (limit) { return "Aveți voie să selectați cel mult " + limit + " element" + (limit == 1 ? "" : "e"); }, 12 | formatLoadMore: function (pageNumber) { return "Se încarcă…"; }, 13 | formatSearching: function () { return "Căutare…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ro']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_rs.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Serbian translation. 3 | * 4 | * @author Limon Monte 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['rs'] = { 10 | formatNoMatches: function () { return "Ništa nije pronađeno"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Ukucajte bar još " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Obrišite " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); }, 13 | formatSelectionTooBig: function (limit) { return "Možete izabrati samo " + limit + " stavk" + (limit % 10 == 1 && limit % 100 != 11 ? "u" : (limit % 10 >= 2 && limit % 10 <= 4 && (limit % 100 < 12 || limit % 100 > 14)? "e" : "i")); }, 14 | formatLoadMore: function (pageNumber) { return "Preuzimanje još rezultata…"; }, 15 | formatSearching: function () { return "Pretraga…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['rs']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ru.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Russian translation. 3 | * 4 | * @author Uriy Efremochkin 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ru'] = { 10 | formatNoMatches: function () { return "Совпадений не найдено"; }, 11 | formatInputTooShort: function (input, min) { return "Пожалуйста, введите еще хотя бы" + character(min - input.length); }, 12 | formatInputTooLong: function (input, max) { return "Пожалуйста, введите на" + character(input.length - max) + " меньше"; }, 13 | formatSelectionTooBig: function (limit) { return "Вы можете выбрать не более " + limit + " элемент" + (limit%10 == 1 && limit%100 != 11 ? "а" : "ов"); }, 14 | formatLoadMore: function (pageNumber) { return "Загрузка данных…"; }, 15 | formatSearching: function () { return "Поиск…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ru']); 19 | 20 | function character (n) { 21 | return " " + n + " символ" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 20) ? n%10 > 1 ? "a" : "" : "ов"); 22 | } 23 | })(jQuery); 24 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_sk.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Slovak translation. 3 | * 4 | * Author: David Vallner 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | // use text for the numbers 2 through 4 9 | var smallNumbers = { 10 | 2: function(masc) { return (masc ? "dva" : "dve"); }, 11 | 3: function() { return "tri"; }, 12 | 4: function() { return "štyri"; } 13 | }; 14 | $.fn.select2.locales['sk'] = { 15 | formatNoMatches: function () { return "Nenašli sa žiadne položky"; }, 16 | formatInputTooShort: function (input, min) { 17 | var n = min - input.length; 18 | if (n == 1) { 19 | return "Prosím, zadajte ešte jeden znak"; 20 | } else if (n <= 4) { 21 | return "Prosím, zadajte ešte ďalšie "+smallNumbers[n](true)+" znaky"; 22 | } else { 23 | return "Prosím, zadajte ešte ďalších "+n+" znakov"; 24 | } 25 | }, 26 | formatInputTooLong: function (input, max) { 27 | var n = input.length - max; 28 | if (n == 1) { 29 | return "Prosím, zadajte o jeden znak menej"; 30 | } else if (n >= 2 && n <= 4) { 31 | return "Prosím, zadajte o "+smallNumbers[n](true)+" znaky menej"; 32 | } else { 33 | return "Prosím, zadajte o "+n+" znakov menej"; 34 | } 35 | }, 36 | formatSelectionTooBig: function (limit) { 37 | if (limit == 1) { 38 | return "Môžete zvoliť len jednu položku"; 39 | } else if (limit >= 2 && limit <= 4) { 40 | return "Môžete zvoliť najviac "+smallNumbers[limit](false)+" položky"; 41 | } else { 42 | return "Môžete zvoliť najviac "+limit+" položiek"; 43 | } 44 | }, 45 | formatLoadMore: function (pageNumber) { return "Načítavajú sa ďalšie výsledky…"; }, 46 | formatSearching: function () { return "Vyhľadávanie…"; } 47 | }; 48 | 49 | $.extend($.fn.select2.defaults, $.fn.select2.locales['sk']); 50 | })(jQuery); 51 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_sv.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Swedish translation. 3 | * 4 | * Author: Jens Rantil 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['sv'] = { 10 | formatNoMatches: function () { return "Inga träffar"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Var god skriv in " + n + (n>1 ? " till tecken" : " tecken till"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Var god sudda ut " + n + " tecken"; }, 13 | formatSelectionTooBig: function (limit) { return "Du kan max välja " + limit + " element"; }, 14 | formatLoadMore: function (pageNumber) { return "Laddar fler resultat…"; }, 15 | formatSearching: function () { return "Söker…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['sv']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_th.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Thai translation. 3 | * 4 | * Author: Atsawin Chaowanakritsanakul 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['th'] = { 10 | formatNoMatches: function () { return "ไม่พบข้อมูล"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "โปรดพิมพ์เพิ่มอีก " + n + " ตัวอักษร"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "โปรดลบออก " + n + " ตัวอักษร"; }, 13 | formatSelectionTooBig: function (limit) { return "คุณสามารถเลือกได้ไม่เกิน " + limit + " รายการ"; }, 14 | formatLoadMore: function (pageNumber) { return "กำลังค้นข้อมูลเพิ่ม…"; }, 15 | formatSearching: function () { return "กำลังค้นข้อมูล…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['th']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_tr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Turkish translation. 3 | * 4 | * Author: Salim KAYABAŞI 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['tr'] = { 10 | formatNoMatches: function () { return "Sonuç bulunamadı"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "En az " + n + " karakter daha girmelisiniz"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return n + " karakter azaltmalısınız"; }, 13 | formatSelectionTooBig: function (limit) { return "Sadece " + limit + " seçim yapabilirsiniz"; }, 14 | formatLoadMore: function (pageNumber) { return "Daha fazla…"; }, 15 | formatSearching: function () { return "Aranıyor…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['tr']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_ug-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Uyghur translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['ug-CN'] = { 7 | formatNoMatches: function () { return "ماس كېلىدىغان ئۇچۇر تېپىلمىدى"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "يەنە " + n + " ھەرپ كىرگۈزۈڭ";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "" + n + "ھەرپ ئۆچۈرۈڭ";}, 10 | formatSelectionTooBig: function (limit) { return "ئەڭ كۆپ بولغاندا" + limit + " تال ئۇچۇر تاللىيالايسىز"; }, 11 | formatLoadMore: function (pageNumber) { return "ئۇچۇرلار ئوقۇلىۋاتىدۇ…"; }, 12 | formatSearching: function () { return "ئىزدەۋاتىدۇ…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ug-CN']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_uk.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Ukrainian translation. 3 | * 4 | * @author bigmihail 5 | * @author Uriy Efremochkin 6 | */ 7 | (function ($) { 8 | "use strict"; 9 | 10 | $.fn.select2.locales['uk'] = { 11 | formatMatches: function (matches) { return character(matches, "результат") + " знайдено, використовуйте клавіші зі стрілками вверх та вниз для навігації."; }, 12 | formatNoMatches: function () { return "Нічого не знайдено"; }, 13 | formatInputTooShort: function (input, min) { return "Введіть буль ласка ще " + character(min - input.length, "символ"); }, 14 | formatInputTooLong: function (input, max) { return "Введіть буль ласка на " + character(input.length - max, "символ") + " менше"; }, 15 | formatSelectionTooBig: function (limit) { return "Ви можете вибрати лише " + character(limit, "елемент"); }, 16 | formatLoadMore: function (pageNumber) { return "Завантаження даних…"; }, 17 | formatSearching: function () { return "Пошук…"; } 18 | }; 19 | 20 | $.extend($.fn.select2.defaults, $.fn.select2.locales['uk']); 21 | 22 | function character (n, word) { 23 | return n + " " + word + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "и" : "" : "ів"); 24 | } 25 | })(jQuery); 26 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_vi.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Vietnamese translation. 3 | * 4 | * Author: Long Nguyen 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['vi'] = { 10 | formatNoMatches: function () { return "Không tìm thấy kết quả"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vui lòng nhập nhiều hơn " + n + " ký tự" + (n == 1 ? "" : "s"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vui lòng nhập ít hơn " + n + " ký tự" + (n == 1? "" : "s"); }, 13 | formatSelectionTooBig: function (limit) { return "Chỉ có thể chọn được " + limit + " tùy chọn" + (limit == 1 ? "" : "s"); }, 14 | formatLoadMore: function (pageNumber) { return "Đang lấy thêm kết quả…"; }, 15 | formatSearching: function () { return "Đang tìm…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['vi']); 19 | })(jQuery); 20 | 21 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_zh-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Chinese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['zh-CN'] = { 7 | formatNoMatches: function () { return "没有找到匹配项"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "请再输入" + n + "个字符";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "请删掉" + n + "个字符";}, 10 | formatSelectionTooBig: function (limit) { return "你只能选择最多" + limit + "项"; }, 11 | formatLoadMore: function (pageNumber) { return "加载结果中…"; }, 12 | formatSearching: function () { return "搜索中…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-CN']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /assets/js/select2/select2_locale_zh-TW.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Traditional Chinese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['zh-TW'] = { 7 | formatNoMatches: function () { return "沒有找到相符的項目"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "請再輸入" + n + "個字元";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "請刪掉" + n + "個字元";}, 10 | formatSelectionTooBig: function (limit) { return "你只能選擇最多" + limit + "項"; }, 11 | formatLoadMore: function (pageNumber) { return "載入中…"; }, 12 | formatSearching: function () { return "搜尋中…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-TW']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /assets/js/select2/select2x2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BeAPI/acf-iconmoon/c556ebe027dedd278ae6985890f595d7b75a671c/assets/js/select2/select2x2.png -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bea/acf-iconmoon", 3 | "description": "Add ACF iconmoon selector", 4 | "minimum-stability": "stable", 5 | "license": "GPL-2.0", 6 | "authors": [ 7 | { 8 | "name": "BeAPI", 9 | "email": "technique@beapi.fr" 10 | } 11 | ], 12 | "type": "wordpress-plugin" 13 | } -------------------------------------------------------------------------------- /fields/iconmoon-base-field.php: -------------------------------------------------------------------------------- 1 | name = 'iconmoon'; 10 | $this->label = __( 'Icon selector', 'bea-acf-iconmoon' ); 11 | $this->category = __( 'Basic', 'acf' ); 12 | $this->defaults = array( 13 | 'allow_clear' => 0, 14 | ); 15 | $this->l10n = array( 16 | 'matches_1' => _x('One result is available, press enter to select it.', 'Select2 JS matches_1', 'acf'), 17 | 'matches_n' => _x('%d results are available, use up and down arrow keys to navigate.', 'Select2 JS matches_n', 'acf'), 18 | 'matches_0' => _x('No matches found', 'Select2 JS matches_0', 'acf'), 19 | 'input_too_short_1' => _x('Please enter 1 or more characters', 'Select2 JS input_too_short_1', 'acf' ), 20 | 'input_too_short_n' => _x('Please enter %d or more characters', 'Select2 JS input_too_short_n', 'acf' ), 21 | 'input_too_long_1' => _x('Please delete 1 character', 'Select2 JS input_too_long_1', 'acf' ), 22 | 'input_too_long_n' => _x('Please delete %d characters', 'Select2 JS input_too_long_n', 'acf' ), 23 | 'selection_too_long_1' => _x('You can only select 1 item', 'Select2 JS selection_too_long_1', 'acf' ), 24 | 'selection_too_long_n' => _x('You can only select %d items', 'Select2 JS selection_too_long_n', 'acf' ), 25 | 'load_more' => _x('Loading more results…', 'Select2 JS load_more', 'acf' ), 26 | 'searching' => _x('Searching…', 'Select2 JS searching', 'acf' ), 27 | 'load_fail' => _x('Loading failed', 'Select2 JS load_fail', 'acf' ), 28 | ); 29 | 30 | // do not delete! 31 | parent::__construct(); 32 | } 33 | 34 | /** 35 | * Extract icons from icomoon stylesheet. 36 | * 37 | * @since 0.1 38 | * 39 | * @return array|bool 40 | */ 41 | public function parse_css() { 42 | 43 | $filepath = ACF_ICOMOON_DIR . 'assets/css/style.css'; 44 | /** 45 | * The path to the icomoon stylesheet. 46 | * 47 | * @since 0.1 48 | * 49 | * @param string $filepath default path 50 | */ 51 | $filepath = apply_filters( 'bea_iconmoon_filepath', $filepath ); 52 | if ( ! file_exists( $filepath ) ) { 53 | return array(); 54 | } 55 | 56 | // First try to load icons from the cache 57 | $cache_key = 'bea_icon_moon_' . md5( $filepath ); 58 | $out = wp_cache_get( $cache_key ); 59 | if ( ! empty( $out ) ) { 60 | return $out; 61 | } 62 | 63 | // If not extract them from the CSS file 64 | $contents = file_get_contents( $filepath ); 65 | 66 | preg_match_all( '#\.icon-([^:]*)::?before#', $contents, $css ); 67 | array_shift( $css ); 68 | 69 | 70 | foreach ( $css[0] as $cs ) { 71 | $out[] = array( 'id' => $cs, 'text' => $cs ); 72 | } 73 | 74 | // Cache 24 hours 75 | wp_cache_set( $cache_key, $out, '', HOUR_IN_SECONDS * 24 ); 76 | 77 | return $out; 78 | } 79 | 80 | /** 81 | * Display the css based on the vars given for dynamic fonts url. 82 | * 83 | * @since 0.1 84 | */ 85 | public function display_css() { 86 | 87 | $base_url = ACF_ICOMOON_URL; 88 | 89 | $font_name = 'icomoon'; 90 | /** 91 | * The font's name 92 | * 93 | * @since 0.1 94 | * 95 | * @param string $font_name the default font's name 96 | */ 97 | $font_name = apply_filters( 'bea_iconmoon_font_family_name', $font_name ); 98 | 99 | $font_urls = array( 100 | 'eot' => $base_url . 'assets/css/fonts/icomoon.eot?-v5pt2y', 101 | 'woff' => $base_url . 'assets/css/fonts/icomoon.woff?-v5pt2y', 102 | 'ttf' => $base_url . 'assets/css/fonts/icomoon.ttf?-v5pt2y', 103 | 'svg' => $base_url . 'assets/css/fonts/icomoon.svg?-v5pt2y#icomoon', 104 | ); 105 | /** 106 | * The font's files URLs 107 | * 108 | * @since 0.1 109 | * 110 | * @param array $font_urls the default font's file URLs 111 | */ 112 | $font_urls = apply_filters( 'bea_iconmoon_fonts', $font_urls ); 113 | 114 | ?> 115 | 127 | registered['select2']) ) { 150 | $major = (int) $wp_scripts->registered['select2']->ver; 151 | } 152 | 153 | // v4 154 | if( $major == 4 ) { 155 | $version = '4.0'; 156 | $script = acf_get_dir("assets/inc/select2/4/select2.full{$min}.js"); 157 | $style = acf_get_dir("assets/inc/select2/4/select2{$min}.css"); 158 | 159 | } else { // v3 160 | $version = '3.5.2'; 161 | if ( version_compare( acf_get_setting( 'version' ), '5.5.0', '>=' ) ) { 162 | $script = acf_get_dir("assets/inc/select2/3/select2{$min}.js"); 163 | $style = acf_get_dir("assets/inc/select2/3/select2.css"); 164 | } else { 165 | $script = acf_get_dir("assets/inc/select2/select2{$min}.js"); 166 | $style = acf_get_dir('assets/inc/select2/select2.css'); 167 | } 168 | } 169 | 170 | // enqueue 171 | wp_enqueue_script('select2', $script, array('jquery'), $version ); 172 | wp_enqueue_style('select2', $style, '', $version ); 173 | 174 | wp_register_script( 175 | 'acf-input-iconmoon', 176 | ACF_ICOMOON_URL . 'assets/js/input' . $min . '.js', 177 | array( 'select2' ), 178 | ACF_ICOMOON_VER 179 | ); 180 | 181 | // Localizing the script 182 | wp_localize_script( 'acf-input-iconmoon', 'bea_acf_iconmon', $this->parse_css() ); 183 | 184 | $css_file = ACF_ICOMOON_URL . 'assets/css/style' . $min . '.css'; 185 | /** 186 | * The icomoon stylesheet's URL. 187 | * 188 | * @since 0.1 189 | * 190 | * @param string $css_file the default icomoon stylesheet's URL 191 | */ 192 | $css_file = apply_filters( 'bea_iconmoon_fileurl', $css_file ); 193 | wp_register_style( 194 | 'acf-input-iconmoon', 195 | $css_file, 196 | array( 'select2' ), 197 | ACF_ICOMOON_VER 198 | ); 199 | 200 | // Enqueuing 201 | wp_enqueue_style( 'acf-input-iconmoon' ); 202 | wp_enqueue_script( 'acf-input-iconmoon' ); 203 | } 204 | 205 | /** 206 | * Display Icomoon style in head. 207 | * 208 | * @since 0.1 209 | */ 210 | public function input_admin_head() { 211 | $this->display_css(); 212 | } 213 | } -------------------------------------------------------------------------------- /fields/iconmoon-v4.php: -------------------------------------------------------------------------------- 1 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 'true_false', 35 | 'name' => 'fields[' . $key . '][allow_clear]', 36 | 'value' => $field['allow_clear'], 37 | ) ); 38 | 39 | ?> 40 | 41 | 42 | 60 | 65 | parse_css() ); 104 | 105 | // Styles 106 | $css_file = ACF_ICOMOON_URL . 'assets/css/style' . $suffix . '.css'; 107 | /** 108 | * The icomoon stylesheet's URL. 109 | * 110 | * @since 0.1 111 | * 112 | * @param string $css_file the default icomoon stylesheet's URL 113 | */ 114 | $css_file = apply_filters( 'bea_iconmoon_fileurl', $css_file ); 115 | wp_register_style( 116 | 'acf-input-iconmoon', 117 | $css_file, 118 | array( 'select2' ), 119 | ACF_ICOMOON_VER 120 | ); 121 | 122 | // Enqueuing 123 | wp_enqueue_style( 'acf-input-iconmoon' ); 124 | wp_enqueue_script( 'acf-input-iconmoon' ); 125 | } 126 | } 127 | 128 | // create field 129 | new acf_field_iconmoon(); -------------------------------------------------------------------------------- /fields/iconmoon-v5.php: -------------------------------------------------------------------------------- 1 | 23 | 28 | __( 'Display clear button?', 'bea-acf-iconmoon' ), 49 | 'instructions' => __( 'Whether or not a clear button is displayed when the select box has a selection.', 'bea-acf-iconmoon' ), 50 | 'name' => 'allow_clear', 51 | 'type' => 'true_false', 52 | 'ui' => 1, 53 | ) 54 | ); 55 | } 56 | } 57 | 58 | // create field 59 | new acf_field_iconmoon(); -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | /*Load all plugin define in package.json*/ 2 | var gulp = require('gulp'), 3 | gulpLoadPlugins = require('gulp-load-plugins'), 4 | plugins = gulpLoadPlugins(); 5 | 6 | /*JS task*/ 7 | gulp.task('dist', function () { 8 | gulp.src([ 'assets/js/input.js' ]) 9 | .pipe(plugins.jshint()) 10 | .pipe(plugins.uglify()) 11 | .pipe(plugins.concat('input.min.js')) 12 | .pipe(gulp.dest('assets/js/')); 13 | 14 | return gulp.src([ 'assets/css/style.css' ]) 15 | .pipe(plugins.uglifycss()) 16 | .pipe(plugins.concat('style.min.css')) 17 | .pipe(gulp.dest('assets/css/')); 18 | }); 19 | 20 | gulp.task('check-js', function () { 21 | return gulp.src('assets/js/component.js') 22 | .pipe(plugins.jshint()) 23 | .pipe(plugins.jshint.reporter('default')); 24 | }); 25 | 26 | // On default task, just compile on demand 27 | gulp.task('default', function() { 28 | gulp.watch('assets/js/*.js', [ 'check-js']); 29 | }); -------------------------------------------------------------------------------- /languages/bea-acf-iconmoon-fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BeAPI/acf-iconmoon/c556ebe027dedd278ae6985890f595d7b75a671c/languages/bea-acf-iconmoon-fr_FR.mo -------------------------------------------------------------------------------- /languages/bea-acf-iconmoon-fr_FR.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Be API\n" 4 | "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/acf-" 5 | "iconmoon\n" 6 | "POT-Creation-Date: 2017-07-30 00:24:06+00:00\n" 7 | "PO-Revision-Date: \n" 8 | "Last-Translator: Be API \n" 9 | "Language-Team: \n" 10 | "Language: fr_FR\n" 11 | "MIME-Version: 1.0\n" 12 | "Content-Type: text/plain; charset=UTF-8\n" 13 | "Content-Transfer-Encoding: 8bit\n" 14 | "X-Generator: Poedit 2.0.3\n" 15 | "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;" 16 | "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c;" 17 | "esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;" 18 | "esc_html_x:1,2c\n" 19 | "X-Poedit-Basepath: .\n" 20 | "X-Poedit-SearchPath-0: ..\n" 21 | 22 | #: fields/iconmoon-base-field.php:10 23 | msgid "Icon selector" 24 | msgstr "Sélecteur d'icône" 25 | 26 | #: fields/iconmoon-v4.php:26 fields/iconmoon-v5.php:48 27 | msgid "Display clear button?" 28 | msgstr "Afficher un bouton pour supprimer la sélection courante ?" 29 | 30 | #: fields/iconmoon-v4.php:27 fields/iconmoon-v5.php:49 31 | msgid "" 32 | "Whether or not a clear button is displayed when the select box has a " 33 | "selection." 34 | msgstr "" 35 | 36 | #: fields/iconmoon-v4.php:63 fields/iconmoon-v5.php:26 37 | msgid "Select an icon" 38 | msgstr "Choisissez une icône" 39 | 40 | #. Plugin Name of the plugin/theme 41 | msgid "Advanced Custom Fields: Iconmoon" 42 | msgstr "Advanced Custom Fields: Sélecteur d’icône (Icomoon)" 43 | 44 | #. Plugin URI of the plugin/theme 45 | #. Author URI of the plugin/theme 46 | msgid "http://www.beapi.fr" 47 | msgstr "" 48 | 49 | #. Description of the plugin/theme 50 | msgid "Add icomoon selector" 51 | msgstr "Ajoute un champ \"Sélecteur d’icône\"" 52 | 53 | #. Author of the plugin/theme 54 | msgid "BE API Technical team" 55 | msgstr "" 56 | 57 | #~ msgid "Basic" 58 | #~ msgstr "Basique" 59 | -------------------------------------------------------------------------------- /languages/bea-acf-iconmoon.pot: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 Advanced Custom Fields: Iconmoon 2 | # This file is distributed under the same license as the Advanced Custom Fields: Iconmoon package. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Advanced Custom Fields: Iconmoon 0.3\n" 6 | "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/acf-iconmoon\n" 7 | "POT-Creation-Date: 2017-07-30 00:24:06+00:00\n" 8 | "MIME-Version: 1.0\n" 9 | "Content-Type: text/plain; charset=UTF-8\n" 10 | "Content-Transfer-Encoding: 8bit\n" 11 | "PO-Revision-Date: 2017-MO-DA HO:MI+ZONE\n" 12 | "Last-Translator: FULL NAME \n" 13 | "Language-Team: LANGUAGE \n" 14 | 15 | #: fields/iconmoon-base-field.php:10 16 | msgid "Icon selector" 17 | msgstr "" 18 | 19 | #: fields/iconmoon-v4.php:26 fields/iconmoon-v5.php:48 20 | msgid "Display clear button?" 21 | msgstr "" 22 | 23 | #: fields/iconmoon-v4.php:27 fields/iconmoon-v5.php:49 24 | msgid "" 25 | "Whether or not a clear button is displayed when the select box has a " 26 | "selection." 27 | msgstr "" 28 | 29 | #: fields/iconmoon-v4.php:63 fields/iconmoon-v5.php:26 30 | msgid "Select an icon" 31 | msgstr "" 32 | 33 | #. Plugin Name of the plugin/theme 34 | msgid "Advanced Custom Fields: Iconmoon" 35 | msgstr "" 36 | 37 | #. #-#-#-#-# acf-iconmoon.pot (Advanced Custom Fields: Iconmoon 0.3) #-#-#-#-# 38 | #. Plugin URI of the plugin/theme 39 | #. #-#-#-#-# acf-iconmoon.pot (Advanced Custom Fields: Iconmoon 0.3) #-#-#-#-# 40 | #. Author URI of the plugin/theme 41 | msgid "http://www.beapi.fr" 42 | msgstr "" 43 | 44 | #. Description of the plugin/theme 45 | msgid "Add icomoon selector" 46 | msgstr "" 47 | 48 | #. Author of the plugin/theme 49 | msgid "BE API Technical team" 50 | msgstr "" 51 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bea-acf-icomoon", 3 | "version": "2.0.0", 4 | "description": "Bea ACF Icomoon field", 5 | "author": "Nicolas Juen", 6 | "devDependencies": { 7 | "gulp": "^3.8.1", 8 | "gulp-concat": "~2.2.0", 9 | "gulp-load-plugins": "^0.5.2", 10 | "gulp-uglify": "~0.2.1", 11 | "gulp-watch": "~0.6.8", 12 | "gulp-jshint" : "~1.9.0", 13 | "gulp-uglifycss" : "~1.0.2", 14 | "matchdep": "*" 15 | } 16 | } -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # Advanced Custom Fields: Iconmoon # 2 | 3 | ## Description ## 4 | 5 | This enhance ACF with a field icons. Add a field type selector to include your great font icon and returns class icon. 6 | One activated you'll be able to use a custom ACF field type which is an icon selector 7 | 8 | ## Important to know ## 9 | 10 | In case you want to include this small plugin to your project running composer you can add this line to your composer.json : 11 | 12 | ```json 13 | "repositories": [ 14 | { 15 | "type": "vcs", 16 | "url": "https://github.com/BeAPI/acf-iconmoon" 17 | } 18 | ] 19 | ``` 20 | 21 | then run the command : 22 | 23 | ```shell 24 | composer require bea/acf-iconmoon 25 | ``` 26 | 27 | ## Tips ## 28 | 29 | ### Using this with your own font icon in your own theme ### 30 | 31 | Font family name, font files dir path and font files URL are filterable. 32 | 33 | ```php 34 | /** 35 | * Update icon file css path. 36 | * 37 | * @return string 38 | */ 39 | function bea_override_acf_iconmoon_filepath() { 40 | return get_stylesheet_directory() . '/assets/css/icons.css'; 41 | } 42 | add_filter( 'bea_iconmoon_filepath', 'bea_override_acf_iconmoon_filepath' ); 43 | 44 | /** 45 | * Update icon file css url 46 | * 47 | * @return string 48 | */ 49 | function bea_override_acf_iconmoon_fileurl() { 50 | return get_stylesheet_directory_uri() . '/assets/css/icons.css'; 51 | } 52 | add_filter( 'bea_iconmoon_fileurl', 'bea_override_acf_iconmoon_fileurl' ); 53 | 54 | /** 55 | * Update icon files. 56 | * 57 | * @return array 58 | */ 59 | function bea_override_acf_iconmoon_fonts() { 60 | return array( 61 | 'eot' => get_stylesheet_directory_uri() . '/assets/fonts/bea_icons.eot', 62 | 'woff' => get_stylesheet_directory_uri() . '/assets/fonts/bea_icons.woff', 63 | 'ttf' => get_stylesheet_directory_uri() . '/assets/fonts/bea_icons.ttf', 64 | 'svg' => get_stylesheet_directory_uri() . '/assets/fonts/bea_icons.svg', 65 | ); 66 | } 67 | add_filter( 'bea_iconmoon_fonts', 'bea_override_acf_iconmoon_fonts' ); 68 | 69 | /** 70 | * font family for theme 71 | */ 72 | function bea_override_acf_iconmoon_font_family() { 73 | return 'my_custom_font_family_name'; 74 | } 75 | add_filter( 'bea_iconmoon_font_family_name', 'bea_override_acf_iconmoon_font_family' ); 76 | ``` 77 | 78 | ## Changelog ## 79 | 80 | ### 0.5 (September 9, 2022) 81 | * Update regex use for extracting icon's name from CSS file 82 | 83 | ### 0.4 (September 21, 2017) 84 | * Add support for Select2 v4 85 | 86 | ### 0.3 (December 22, 2016) 87 | * Refactor plugin 88 | * Add support for clear button 89 | 90 | ### 0.2 (June 28, 2016) 91 | * lang, gitignore + readme 92 | 93 | ### 0.1 (February 12, 2016) 94 | * initial commit 95 | --------------------------------------------------------------------------------