diff --git a/acf.php b/acf.php index 148919b..7b2cbf9 100644 --- a/acf.php +++ b/acf.php @@ -3,7 +3,7 @@ Plugin Name: Advanced Custom Fields PRO Plugin URI: https://www.advancedcustomfields.com/ Description: Customise WordPress with powerful, professional and intuitive fields -Version: 5.3.8.1 +Version: 5.3.9.2 Author: Elliot Condon Author URI: http://www.elliotcondon.com/ Copyright: Elliot Condon @@ -58,7 +58,7 @@ class acf { // basic 'name' => __('Advanced Custom Fields', 'acf'), - 'version' => '5.3.8.1', + 'version' => '5.3.9.2', // urls 'basename' => plugin_basename( __FILE__ ), @@ -107,6 +107,7 @@ class acf { acf_include('core/revisions.php'); acf_include('core/compatibility.php'); acf_include('core/third_party.php'); + acf_include('core/updates.php'); // forms @@ -125,6 +126,7 @@ class acf { acf_include('admin/field-group.php'); acf_include('admin/field-groups.php'); acf_include('admin/update.php'); + acf_include('admin/update-network.php'); acf_include('admin/settings-tools.php'); //acf_include('admin/settings-addons.php'); acf_include('admin/settings-info.php'); @@ -219,6 +221,8 @@ class acf { acf_include('fields/user.php'); acf_include('fields/google-map.php'); acf_include('fields/date_picker.php'); + acf_include('fields/date_time_picker.php'); + acf_include('fields/time_picker.php'); acf_include('fields/color_picker.php'); acf_include('fields/message.php'); acf_include('fields/tab.php'); @@ -368,7 +372,6 @@ class acf { // vars $version = acf_get_setting('version'); - $lang = get_locale(); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; diff --git a/admin/field-group.php b/admin/field-group.php index 44bb966..10476b0 100644 --- a/admin/field-group.php +++ b/admin/field-group.php @@ -99,21 +99,27 @@ class acf_admin_field_group { function current_screen() { // validate screen - if( !acf_is_screen('acf-field-group') ) { - - return; - - } + if( !acf_is_screen('acf-field-group') ) return; // disable JSON to avoid conflicts between DB and JSON acf_disable_local(); + // enqueue scripts + acf_enqueue_scripts(); + + // actions - add_action('admin_enqueue_scripts', array($this,'admin_enqueue_scripts'), 20); - add_action('admin_head', array($this,'admin_head'), 20); - add_action('admin_footer', array($this,'admin_footer'), 20); + add_action('acf/input/admin_enqueue_scripts', array($this, 'admin_enqueue_scripts')); + add_action('acf/input/admin_head', array($this, 'admin_head')); + add_action('acf/input/form_data', array($this, 'form_data')); + add_action('acf/input/admin_footer', array($this, 'admin_footer')); + add_action('acf/input/admin_footer_js', array($this, 'admin_footer_js')); + + + // filters + add_filter('acf/input/admin_l10n', array($this, 'admin_l10n')); } @@ -187,12 +193,112 @@ class acf_admin_field_group { add_filter('screen_settings', array($this, 'screen_settings'), 10, 1); - // action for 3rd party customisation + // 3rd party hook do_action('acf/field_group/admin_head'); } + /* + * edit_form_after_title + * + * This action will allow ACF to render metaboxes after the title + * + * @type action + * @date 17/08/13 + * + * @param n/a + * @return n/a + */ + + function edit_form_after_title() { + + // globals + global $post; + + + // render post data + acf_form_data(array( + 'post_id' => $post->post_id, + 'nonce' => 'field_group', + 'ajax' => 0 + )); + + } + + + /* + * form_data + * + * This function will add extra HTML to the acf form data element + * + * @type function + * @date 31/05/2016 + * @since 5.3.8 + * + * @param n/a + * @return n/a + */ + + function form_data( $args ) { + + // add extra inputs + ?> + + __("Move to trash. Are you sure?",'acf'), + 'checked' => __("checked",'acf'), + 'no_fields' => __("No toggle fields available",'acf'), + 'title_is_required' => __("Field group title is required",'acf'), + 'copy' => __("copy",'acf'), + 'or' => __("or",'acf'), + 'fields' => __("Fields",'acf'), + 'parent_fields' => __("Parent fields",'acf'), + 'sibling_fields' => __("Sibling fields",'acf'), + 'move_field' => __("Move Custom Field",'acf'), + 'move_field_warning' => __("This field cannot be moved until its changes have been saved",'acf'), + 'null' => __("Null",'acf'), + 'unload' => __('The changes you made will be lost if you navigate away from this page','acf'), + 'field_name_start' => __('The string "field_" may not be used at the start of a field name','acf'), + )); + + + // 3rd party hook + $l10n = apply_filters('acf/field_group/admin_l10n', $l10n); + + + // return + return $l10n; + + } + + + /* * admin_footer * @@ -208,56 +314,29 @@ class acf_admin_field_group { function admin_footer() { - // global - global $post; - - - // vars - $l10n = apply_filters('acf/field_group/admin_l10n', array( - 'move_to_trash' => __("Move to trash. Are you sure?",'acf'), - 'checked' => __("checked",'acf'), - 'no_fields' => __("No toggle fields available",'acf'), - 'title_is_required' => __("Field group title is required",'acf'), - 'copy' => __("copy",'acf'), - 'or' => __("or",'acf'), - 'fields' => __("Fields",'acf'), - 'parent_fields' => __("Parent fields",'acf'), - 'sibling_fields' => __("Sibling fields",'acf'), - 'move_field' => __("Move Custom Field",'acf'), - 'move_field_warning' => __("This field cannot be moved until its changes have been saved",'acf'), - 'null' => __("Null",'acf'), - 'unload' => __('The changes you made will be lost if you navigate away from this page','acf'), - 'field_name_start' => __('The string "field_" may not be used at the start of a field name','acf'), - )); - - $o = array( - 'post_id' => $post->ID, - 'nonce' => wp_create_nonce( 'acf_nonce' ), - 'admin_url' => admin_url(), - 'ajaxurl' => admin_url( 'admin-ajax.php' ), - 'validation' => 0, - ); - - - ?> - - - - -
- - - -
- __('Description', 'acf'), 'acf-fg-status' => '', 'acf-fg-count' => __('Fields', 'acf'), - ); } @@ -709,6 +708,11 @@ class acf_admin_field_groups { var status = $('.acf-icon.-dot-3').first().attr('title'); $('td.column-acf-fg-status').attr('data-colname', status); + + // no field groups found + $('#the-list tr.no-items td').attr('colspan', 4); + + })(jQuery); ' . $field_group['title'] . ''; + + // import + $field_group = acf_import_field_group( $field_group ); + + + // append message + $imported[] = array( + 'ID' => $field_group['ID'], + 'title' => $field_group['title'], + 'updated' => $id ? 1 : 0 + ); } // messages - if( !empty($added) ) { + if( !empty($imported) ) { - $message = __('Success. Import tool added %s field groups: %s', 'acf'); - $message = sprintf( $message, count($added), implode(', ', $added) ); + // vars + $links = array(); + $count = count($imported); + $message = sprintf(_n( 'Imported 1 field group', 'Imported %s field groups', $count, 'acf' ), $count) . '.'; + + // populate links + foreach( $imported as $import ) { + + $links[] = '' . $import['title'] . ''; + + } + + + // append links + $message .= ' ' . implode(', ', $links); + + + // add notice acf_add_admin_notice( $message ); } - - if( !empty($ignored) ) { - - $message = __('Warning. Import tool detected %s field groups already exist and have been ignored: %s', 'acf'); - $message = sprintf( $message, count($ignored), implode(', ', $ignored) ); - - acf_add_admin_notice( $message, 'error' ); - - } - } diff --git a/admin/update-network.php b/admin/update-network.php new file mode 100644 index 0000000..0b704af --- /dev/null +++ b/admin/update-network.php @@ -0,0 +1,242 @@ + __("Review sites & upgrade", 'acf'), + 'button_url' => network_admin_url('index.php?page=acf-upgrade'), + 'confirm' => false + ); + + + // load view + acf_get_view('update-notice', $view); + + } + + + /* + * network_html + * + * This function will render the HTML for the network upgrade page + * + * @type function + * @date 19/02/2014 + * @since 5.0.0 + * + * @param n/a + * @return n/a + */ + + function network_html() { + + // vars + $plugin_version = acf_get_setting('version'); + + + // loop through sites and find updates + $sites = wp_get_sites(); + + if( $sites ) { + + foreach( $sites as $i => $site ) { + + // switch blog + switch_to_blog( $site['blog_id'] ); + + + // extra info + $site['name'] = get_bloginfo('name'); + $site['url'] = home_url(); + + + // get site updates + $site['updates'] = acf_get_updates(); + + + // get site version + $site['acf_version'] = get_option('acf_version'); + + + // no value equals new instal + if( !$site['acf_version'] ) { + + $site['acf_version'] = $plugin_version; + + } + + + // update + $sites[ $i ] = $site; + + + // restore + restore_current_blog(); + + } + + } + + + // view + $view = array( + 'sites' => $sites, + 'plugin_version' => $plugin_version + ); + + + // load view + acf_get_view('update-network', $view); + + } + +} + +// initialize +new acf_admin_update_network(); + +endif; + +?> diff --git a/admin/update.php b/admin/update.php index b656c33..36d8d2f 100644 --- a/admin/update.php +++ b/admin/update.php @@ -30,7 +30,6 @@ class acf_admin_update { // actions add_action('admin_menu', array($this,'admin_menu'), 20); - add_action('network_admin_menu', array($this,'network_admin_menu'), 20); // ajax @@ -39,218 +38,6 @@ class acf_admin_update { } - /* - * network_admin_menu - * - * This function will chck for available updates and add actions if needed - * - * @type function - * @date 2/04/2015 - * @since 5.1.5 - * - * @param n/a - * @return n/a - */ - - function network_admin_menu() { - - // bail early if no show_admin - if( !acf_get_setting('show_admin') ) { - - return; - - } - - - // vars - $prompt = false; - - - // loop through sites and find updates - $sites = wp_get_sites(); - - if( $sites ) { - - foreach( $sites as $site ) { - - // switch blog - switch_to_blog( $site['blog_id'] ); - - - // get site updates - $updates = acf_get_updates(); - - - // restore - restore_current_blog(); - - - if( $updates ) { - - $prompt = true; - break; - - } - - } - - } - - - // bail if no prompt - if( !$prompt ) { - - return; - - } - - - // actions - add_action('network_admin_notices', array($this, 'network_admin_notices'), 1); - - - // add page - $page = add_submenu_page('update-core.php', __('Upgrade ACF','acf'), __('Upgrade ACF','acf'), acf_get_setting('capability'),'acf-upgrade', array($this,'network_html')); - - - // actions - add_action('load-' . $page, array($this,'network_load')); - - - } - - - /* - * load - * - * This function will look at the $_POST data and run any functions if needed - * - * @type function - * @date 7/01/2014 - * @since 5.0.0 - * - * @param n/a - * @return n/a - */ - - function network_load() { - - // hide upgrade - remove_action('network_admin_notices', array($this, 'network_admin_notices'), 1); - - - // load acf scripts - acf_enqueue_scripts(); - - } - - - - /* - * network_admin_notices - * - * This function will render the update notice - * - * @type function - * @date 2/04/2015 - * @since 5.1.5 - * - * @param n/a - * @return n/a - */ - - function network_admin_notices() { - - // view - $view = array( - 'button_text' => __("Review sites & upgrade", 'acf'), - 'button_url' => network_admin_url('update-core.php?page=acf-upgrade'), - 'confirm' => false - ); - - - // load view - acf_get_view('update-notice', $view); - - } - - - /* - * network_html - * - * This function will render the HTML for the network upgrade page - * - * @type function - * @date 19/02/2014 - * @since 5.0.0 - * - * @param n/a - * @return n/a - */ - - function network_html() { - - // vars - $plugin_version = acf_get_setting('version'); - - - // loop through sites and find updates - $sites = wp_get_sites(); - - if( $sites ) { - - foreach( $sites as $i => $site ) { - - // switch blog - switch_to_blog( $site['blog_id'] ); - - - // extra info - $site['name'] = get_bloginfo('name'); - $site['url'] = home_url(); - - - // get site updates - $site['updates'] = acf_get_updates(); - - - // get site version - $site['acf_version'] = get_option('acf_version'); - - - // no value equals new instal - if( !$site['acf_version'] ) { - - $site['acf_version'] = $plugin_version; - - } - - - // update - $sites[ $i ] = $site; - - - // restore - restore_current_blog(); - - } - - } - - - // view - $view = array( - 'sites' => $sites, - 'plugin_version' => $plugin_version - ); - - - // load view - acf_get_view('update-network', $view); - - } - - /* * admin_menu * @@ -314,7 +101,7 @@ class acf_admin_update { // add page - $page = add_submenu_page('edit.php?post_type=acf-field-group', __('Upgrade','acf'), __('Upgrade','acf'), acf_get_setting('capability'),'acf-upgrade', array($this,'html') ); + $page = add_submenu_page('edit.php?post_type=acf-field-group', __('Upgrade Database','acf'), __('Upgrade Database','acf'), acf_get_setting('capability'), 'acf-upgrade', array($this,'html') ); // actions diff --git a/admin/views/update-network.php b/admin/views/update-network.php index 4b0451d..d4d5fd7 100644 --- a/admin/views/update-network.php +++ b/admin/views/update-network.php @@ -1,5 +1,10 @@ @@ -7,15 +12,15 @@ extract($args);

-

+

-

+

- + @@ -23,7 +28,7 @@ extract($args); - + @@ -57,7 +62,7 @@ extract($args);
-

+

. .

@@ -66,7 +71,7 @@ extract($args); /* hide show */ .show-on-complete { display: none; - } + } diff --git a/api/api-field.php b/api/api-field.php index 060ace1..59b0931 100644 --- a/api/api-field.php +++ b/api/api-field.php @@ -1739,22 +1739,22 @@ function acf_prepare_fields_for_import( $fields = false ) { $field = acf_prepare_field_for_import( $fields[ $i ] ); - // $field may be an array of multiple fields (including sub fields) - if( !isset($field['key']) ) { + // ensure $field is an array of fields + // this allows for multiepl sub fields to be returned + if( !isset($field[0]) ) { - $extra = $field; - - $field = array_shift($extra); - $fields = array_merge($fields, $extra); + $field = array( $field ); } - // prepare - $fields[ $i ] = $field; + + // merge in $field (1 or more fields) + array_splice($fields, $i, 1, $field); // $i - $i++; + $i++; + } @@ -1899,4 +1899,38 @@ function acf_get_sub_field( $selector, $field ) { } +/* +* acf_get_field_ancestors +* +* This function will return an array of all ancestor fields +* +* @type function +* @date 22/06/2016 +* @since 5.3.8 +* +* @param $field (array) +* @return (array) +*/ + +function acf_get_field_ancestors( $field ) { + + // get field + $ancestors = array(); + + + // loop + while( $field && acf_is_field_key($field['parent']) ) { + + $ancestors[] = $field['parent']; + $field = acf_get_field($field['parent']); + + } + + + // return + return $ancestors; + +} + + ?> diff --git a/api/api-helpers.php b/api/api-helpers.php index eff1750..1d50174 100644 --- a/api/api-helpers.php +++ b/api/api-helpers.php @@ -1739,14 +1739,17 @@ function _acf_orderby_post_type( $ordeby, $wp_query ) { } -function acf_get_post_title( $post = 0 ) { +function acf_get_post_title( $post = 0, $is_search = false ) { - // load post if given an ID - if( is_numeric($post) ) { - - $post = get_post($post); - - } + // vars + $post = get_post($post); + $title = ''; + $prepend = ''; + $append = ''; + + + // bail early if no post + if( !$post ) return ''; // title @@ -1762,11 +1765,20 @@ function acf_get_post_title( $post = 0 ) { // ancestors - if( $post->post_type != 'attachment' ) { + if( $post->post_type !== 'attachment' ) { + // get ancestors $ancestors = get_ancestors( $post->ID, $post->post_type ); + $parent_id = acf_maybe_get( $ancestors, 0 ); + $prepend = str_repeat('- ', count($ancestors)); - $title = str_repeat('- ', count($ancestors)) . $title; + + // add parent + if( $is_search && $parent_id ) { + + $append .= ' (Parent page: ' . get_the_title( $parent_id ) . ')'; + + } } @@ -1774,17 +1786,92 @@ function acf_get_post_title( $post = 0 ) { // status if( get_post_status( $post->ID ) != "publish" ) { - $title .= ' (' . get_post_status( $post->ID ) . ')'; + $append .= ' (' . get_post_status( $post->ID ) . ')'; } + // merge + $title = $prepend . $title . $append; + + // return return $title; } +/* +function acf_get_post_title( $post = 0, $is_search = false ) { + + // vars + $post = get_post($post); + $title = ''; + $prepend = ''; + $append = ''; + + + // bail early if no post + if( !$post ) return ''; + + + // title + $title = get_the_title( $post->ID ); + + + // empty + if( $title === '' ) { + + $title = __('(no title)', 'acf'); + + } + + + // ancestors + if( $post->post_type !== 'attachment' ) { + + // get ancestors + $ancestors = get_ancestors( $post->ID, $post->post_type ); + $parent_id = acf_maybe_get( $ancestors, 0 ); + + + // add parent + if( $is_search && !empty($ancestors) ) { + + foreach( $ancestors as $post_id ) { + + $prepend = get_the_title( $post_id ) . ' / ' . $prepend; + + } + + } else { + + $prepend = str_repeat('- ', count($ancestors)); + + } + + } + + + // status + if( get_post_status( $post->ID ) != "publish" ) { + + $append .= ' (' . get_post_status( $post->ID ) . ')'; + + } + + + // merge + $title = $prepend . $title . $append; + + + // return + return $title; + +} +*/ + + function acf_order_by_search( $array, $search ) { // vars @@ -2445,18 +2532,69 @@ function acf_decode_choices( $string = '', $array_keys = false ) { } - /* -* acf_convert_date_to_php +* acf_str_replace * -* This fucntion converts a date format string from JS to PHP +* This function will replace an array of strings much like str_replace +* The difference is the extra logic to avoid replacing a string that has alread been replaced +* This is very useful for replacing date characters as they overlap with eachother * * @type function -* @date 20/06/2014 -* @since 5.0.0 +* @date 21/06/2016 +* @since 5.3.8 * -* @param $date (string) -* @return $date (string) +* @param $post_id (int) +* @return $post_id (int) +*/ + +function acf_str_replace( $string, $search_replace ) { + + // vars + $ignore = array(); + + + // remove potential empty search to avoid PHP error + unset($search_replace['']); + + + // loop over conversions + foreach( $search_replace as $search => $replace ) { + + // ignore this search, it was a previous replace + if( in_array($search, $ignore) ) continue; + + + // bail early if subsctring not found + if( strpos($string, $search) === false ) continue; + + + // replace + $string = str_replace($search, $replace, $string); + + + // append to ignore + $ignore[] = $replace; + + } + + + // return + return $string; + +} + + +/* +* date & time formats +* +* These settings contain an association of format strings from PHP => JS +* +* @type function +* @date 21/06/2016 +* @since 5.3.8 +* +* @param n/a +* @return n/a */ acf_update_setting('php_to_js_date_formats', array( @@ -2482,41 +2620,45 @@ acf_update_setting('php_to_js_date_formats', array( 'd' => 'dd', // Numeric, with leading zeros 01–31 'j' => 'd', // Numeric, without leading zeros 1–31 'S' => '', // The English suffix for the day of the month st, nd or th in the 1st, 2nd or 15th. - + )); -function acf_convert_date_to_php( $date ) { +acf_update_setting('php_to_js_time_formats', array( + + 'a' => 'tt', // Lowercase Ante meridiem and Post meridiem am or pm + 'A' => 'TT', // Uppercase Ante meridiem and Post meridiem AM or PM + 'h' => 'hh', // 12-hour format of an hour with leading zeros 01 through 12 + 'g' => 'h', // 12-hour format of an hour without leading zeros 1 through 12 + 'H' => 'HH', // 24-hour format of an hour with leading zeros 00 through 23 + 'G' => 'H', // 24-hour format of an hour without leading zeros 0 through 23 + 'i' => 'mm', // Minutes with leading zeros 00 to 59 + 's' => 'ss', // Seconds, with leading zeros 00 through 59 + +)); + + +/* +* acf_convert_date_to_php +* +* This fucntion converts a date format string from JS to PHP +* +* @type function +* @date 20/06/2014 +* @since 5.0.0 +* +* @param $date (string) +* @return (string) +*/ + +function acf_convert_date_to_php( $date = '' ) { // vars - $ignore = array(); - - - // conversion $php_to_js = acf_get_setting('php_to_js_date_formats'); - - - // loop over conversions - foreach( $php_to_js as $replace => $search ) { + $js_to_php = array_flip($php_to_js); - // ignore this replace? - if( in_array($search, $ignore) ) { - - continue; - - } - - - // replace - $date = str_replace($search, $replace, $date); - - - // append to ignore - $ignore[] = $replace; - } - // return - return $date; + return acf_str_replace( $date, $js_to_php ); } @@ -2529,42 +2671,69 @@ function acf_convert_date_to_php( $date ) { * @date 20/06/2014 * @since 5.0.0 * -* @param $post_id (int) -* @return $post_id (int) +* @param $date (string) +* @return (string) */ -function acf_convert_date_to_js( $date ) { +function acf_convert_date_to_js( $date = '' ) { // vars - $ignore = array(); - - - // conversion $php_to_js = acf_get_setting('php_to_js_date_formats'); - - - // loop over conversions - foreach( $php_to_js as $search => $replace ) { - // ignore this replace? - if( in_array($search, $ignore) ) { - - continue; - - } - - - // replace - $date = str_replace($search, $replace, $date); - - - // append to ignore - $ignore[] = $replace; - } - // return - return $date; + return acf_str_replace( $date, $php_to_js ); + +} + + +/* +* acf_convert_time_to_php +* +* This fucntion converts a time format string from JS to PHP +* +* @type function +* @date 20/06/2014 +* @since 5.0.0 +* +* @param $time (string) +* @return (string) +*/ + +function acf_convert_time_to_php( $time = '' ) { + + // vars + $php_to_js = acf_get_setting('php_to_js_time_formats'); + $js_to_php = array_flip($php_to_js); + + + // return + return acf_str_replace( $time, $js_to_php ); + +} + + +/* +* acf_convert_time_to_js +* +* This fucntion converts a date format string from PHP to JS +* +* @type function +* @date 20/06/2014 +* @since 5.0.0 +* +* @param $time (string) +* @return (string) +*/ + +function acf_convert_time_to_js( $time = '' ) { + + // vars + $php_to_js = acf_get_setting('php_to_js_time_formats'); + + + // return + return acf_str_replace( $time, $php_to_js ); } @@ -2674,14 +2843,10 @@ function acf_get_user_setting( $name = '', $default = false ) { * @return $post_id (int) */ -function acf_in_array( $value, $array ) { +function acf_in_array( $value = '', $array = false ) { // bail early if not array - if( !is_array($array) ) { - - return false; - - } + if( !is_array($array) ) return false; // find value in array @@ -3971,18 +4136,116 @@ function acf_get_post_thumbnail( $post = null, $size = 'thumbnail' ) { /* -* Hacks +* acf_get_browser * -* description +* This functino will return the browser string for major browsers * * @type function * @date 17/01/2014 * @since 5.0.0 * -* @param $post_id (int) -* @return $post_id (int) +* @param n/a +* @return (string) */ +function acf_get_browser() { + + // vars + $agent = $_SERVER['HTTP_USER_AGENT']; + + + // browsers + $browsers = array( + 'Firefox' => 'firefox', + 'Trident' => 'msie', + 'MSIE' => 'msie', + 'Edge' => 'edge', + 'Chrome' => 'chrome', + 'Safari' => 'safari', + ); + + + // loop + foreach( $browsers as $k => $v ) { + + if( strpos($agent, $k) !== false ) return $v; + + } + + + // return + return ''; + +} + + +/* +* acf_is_ajax +* +* This function will reutrn true if performing a wp ajax call +* +* @type function +* @date 7/06/2016 +* @since 5.3.8 +* +* @param n/a +* @return (boolean) +*/ + +function acf_is_ajax() { + + return ( defined('DOING_AJAX') && DOING_AJAX ); + +} + + + + +/* +* acf_format_date +* +* This function will accept a date value and return it in a formatted string +* +* @type function +* @date 16/06/2016 +* @since 5.3.8 +* +* @param $value (string) +* @return $format (string) +*/ + +function acf_format_date( $value, $format ) { + + // bail early if no value + if( empty($value) ) return $value; + + + // attempt strtotime for standard date value + $unixtimestamp = strtotime($value); + + + // allow for timestamp value + if( !$unixtimestamp && is_numeric($value) ) { + + $unixtimestamp = $value; + + } + + + // bail early if timestamp error + if( !$unixtimestamp ) return $value; + + + // translate + $value = date_i18n($format, $unixtimestamp); + + + // return + return $value; + +} + + add_filter("acf/settings/slug", '_acf_settings_slug'); function _acf_settings_slug( $v ) { diff --git a/api/api-template.php b/api/api-template.php index 2fa6347..a5bcb3f 100644 --- a/api/api-template.php +++ b/api/api-template.php @@ -361,7 +361,16 @@ function get_field_objects( $post_id = false, $format_value = true, $load_value function have_rows( $selector, $post_id = false ) { + // reference + $_post_id = $post_id; + + + // filter post_id + $post_id = acf_get_valid_post_id( $post_id ); + + // vars + $key = "selector={$selector}/post_id={$post_id}"; $active_loop = acf_get_loop('active'); $previous_loop = acf_get_loop('previous'); $new_parent_loop = false; @@ -371,21 +380,14 @@ function have_rows( $selector, $post_id = false ) { $change = false; - // reference - $_post_id = $post_id; - - - // filter post_id - $post_id = acf_get_valid_post_id( $post_id ); - - - // empty? + // no active loops if( !$active_loop ) { // create a new loop $new_parent_loop = true; - } else { + // loop has changed + } elseif( $active_loop['key'] != $key ) { // detect change if( $post_id != $active_loop['post_id'] ) { @@ -396,19 +398,19 @@ function have_rows( $selector, $post_id = false ) { $change = 'selector'; + } else { + + // key has changed due to a technicallity, however, the post_id and selector are the same + } // attempt to find sub field - if( $change ) { + $sub_field = acf_get_sub_field($selector, $active_loop['field']); - $sub_field = acf_get_sub_field($selector, $active_loop['field']); + if( $sub_field ) { - if( $sub_field ) { - - $sub_exists = isset( $active_loop['value'][ $active_loop['i'] ][ $sub_field['key'] ] ); - - } + $sub_exists = isset( $active_loop['value'][ $active_loop['i'] ][ $sub_field['key'] ] ); } @@ -459,6 +461,11 @@ function have_rows( $selector, $post_id = false ) { } } + + // loop is the same + } else { + + // do nothing } @@ -479,6 +486,7 @@ function have_rows( $selector, $post_id = false ) { 'field' => $field, 'i' => -1, 'post_id' => $post_id, + 'key' => $key )); // add child loop @@ -486,6 +494,7 @@ function have_rows( $selector, $post_id = false ) { // vars $value = $active_loop['value'][ $active_loop['i'] ][ $sub_field['key'] ]; + $post_id = $active_loop['post_id']; // add loop @@ -496,6 +505,7 @@ function have_rows( $selector, $post_id = false ) { 'field' => $sub_field, 'i' => -1, 'post_id' => $post_id, + 'key' => $key )); } @@ -566,7 +576,12 @@ function get_row( $format = false ) { // get value - $value = $loop['value'][ $loop['i'] ]; + $value = acf_maybe_get( $loop['value'], $loop['i'] ); + + + // bail early if no current value + // possible if get_row_layout() is called before the_row() + if( !$value ) return false; // format @@ -602,6 +617,12 @@ function get_row_index() { } +function the_row_index() { + + echo get_row_index(); + +} + /* * get_row_sub_field diff --git a/api/api-value.php b/api/api-value.php index a0d4223..15ab665 100644 --- a/api/api-value.php +++ b/api/api-value.php @@ -430,6 +430,7 @@ function acf_update_value( $value = null, $post_id = 0, $field ) { // clear cache wp_cache_delete( "load_value/post_id={$post_id}/name={$field['name']}", 'acf' ); + wp_cache_delete( "format_value/post_id={$post_id}/name={$field['name']}", 'acf' ); // return @@ -471,6 +472,7 @@ function acf_delete_value( $post_id = 0, $field ) { // clear cache wp_cache_delete( "load_value/post_id={$post_id}/name={$field['name']}", 'acf' ); + wp_cache_delete( "format_value/post_id={$post_id}/name={$field['name']}", 'acf' ); // return diff --git a/assets/css/acf-global.css b/assets/css/acf-global.css index 493d058..d40350f 100644 --- a/assets/css/acf-global.css +++ b/assets/css/acf-global.css @@ -704,7 +704,6 @@ a.acf-icon.-cancel.grey:hover { * *---------------------------------------------------------------------------------------------*/ /* Menu */ -#adminmenu a[href="edit.php?post_type=acf-field-group&page=acf-upgrade"], #adminmenu a[href="edit.php?post_type=acf-field-group&page=acf-settings-info"] { display: none; } @@ -734,9 +733,6 @@ a.acf-icon.-cancel.grey:hover { #acf-field-group-wrap .tablenav.bottom { display: block; } -#acf-field-group-wrap .wp-list-table { - border-radius: 0; -} #acf-field-group-wrap .acf-description { font-weight: normal; font-size: 13px; @@ -1082,6 +1078,41 @@ html[dir="rtl"] #acf-popup .title .acf-icon { } /*-------------------------------------------------------------------------------------------- * +* Plugins +* +*--------------------------------------------------------------------------------------------*/ +.acf-plugin-upgrade-notice { + font-weight: normal; + color: #fff; + background: #d54d21; + padding: 1em; + margin: 9px 0; +} +.acf-plugin-upgrade-notice:before { + content: "\f348"; + display: inline-block; + font: 400 18px/1 dashicons; + speak: none; + margin: 0 8px 0 -2px; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + vertical-align: top; +} +.acf-plugin-upgrade-notice h4 { + display: none; +} +.acf-plugin-upgrade-notice ul, +.acf-plugin-upgrade-notice li { + display: inline; + color: inherit; + list-style: none; +} +.acf-plugin-upgrade-notice li:after { + content: '. '; + display: inline; +} +/*-------------------------------------------------------------------------------------------- +* * RTL * *--------------------------------------------------------------------------------------------*/ diff --git a/assets/css/acf-input.css b/assets/css/acf-input.css index 259297e..00835e1 100644 --- a/assets/css/acf-input.css +++ b/assets/css/acf-input.css @@ -343,11 +343,10 @@ html[dir="rtl"] .acf-c0 { -moz-box-sizing: border-box; box-sizing: border-box; font-size: 14px; - line-height: 15px; + line-height: 1.4; } .acf-field textarea { resize: vertical; - line-height: 1.4em; } /*--------------------------------------------------------------------------------------------- * @@ -1407,6 +1406,23 @@ html[dir="rtl"] .acf-file-uploader .file-info ul { .acf-ui-datepicker .ui-datepicker { z-index: 999999999 !important; } +.acf-ui-datepicker .ui-datepicker .ui-widget-header a { + cursor: pointer; + transition: none; +} +/* fix highlight state overriding hover / active */ +.acf-ui-datepicker .ui-state-highlight.ui-state-hover { + border: 1px solid #98b7e8 !important; + background: #98b7e8 !important; + font-weight: normal !important; + color: #ffffff !important; +} +.acf-ui-datepicker .ui-state-highlight.ui-state-active { + border: 1px solid #3875d7 !important; + background: #3875d7 !important; + font-weight: normal !important; + color: #ffffff !important; +} /*--------------------------------------------------------------------------------------------- * * Taxonomy @@ -1766,7 +1782,7 @@ html[dir="rtl"] .acf-taxonomy-field[data-type="select"] .acf-icon { .acf-media-modal.-edit .media-frame-content { top: 56px; } -body.acf-wp-4 .acf-media-modal.-edit .media-frame-content { +body.major-4 .acf-media-modal.-edit .media-frame-content { top: 50px; } .acf-media-modal.-edit .media-frame-title { diff --git a/assets/inc/datepicker/images/animated-overlay.gif b/assets/inc/datepicker/images/animated-overlay.gif deleted file mode 100644 index d441f75..0000000 Binary files a/assets/inc/datepicker/images/animated-overlay.gif and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_2EA2CC_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_2EA2CC_40x100.png deleted file mode 100644 index 5c4f858..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_2EA2CC_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_E14D43_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_E14D43_40x100.png deleted file mode 100644 index a5392d3..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_E14D43_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_F0F0F0_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_F0F0F0_40x100.png deleted file mode 100644 index aea29d7..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_F0F0F0_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_F9F9F9_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_F9F9F9_40x100.png deleted file mode 100644 index 923e79d..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_F9F9F9_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_aaaaaa_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index cd62886..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_aaaaaa_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_0_ffffff_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_0_ffffff_40x100.png deleted file mode 100644 index 9be5c0a..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_0_ffffff_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_flat_75_ffffff_40x100.png b/assets/inc/datepicker/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index eba7eb8..0000000 Binary files a/assets/inc/datepicker/images/ui-bg_flat_75_ffffff_40x100.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-bg_highlight-soft_0_ffffff_1x100.png b/assets/inc/datepicker/images/ui-bg_highlight-soft_0_ffffff_1x100.png index 7f3be39..0a9472d 100644 Binary files a/assets/inc/datepicker/images/ui-bg_highlight-soft_0_ffffff_1x100.png and b/assets/inc/datepicker/images/ui-bg_highlight-soft_0_ffffff_1x100.png differ diff --git a/assets/inc/datepicker/images/ui-icons_222222_256x240.png b/assets/inc/datepicker/images/ui-icons_222222_256x240.png deleted file mode 100644 index c1cb117..0000000 Binary files a/assets/inc/datepicker/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-icons_2EA2CC_256x240.png b/assets/inc/datepicker/images/ui-icons_2EA2CC_256x240.png deleted file mode 100644 index 51a43e7..0000000 Binary files a/assets/inc/datepicker/images/ui-icons_2EA2CC_256x240.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-icons_444444_256x240.png b/assets/inc/datepicker/images/ui-icons_444444_256x240.png index a957b5e..a802263 100644 Binary files a/assets/inc/datepicker/images/ui-icons_444444_256x240.png and b/assets/inc/datepicker/images/ui-icons_444444_256x240.png differ diff --git a/assets/inc/datepicker/images/ui-icons_454545_256x240.png b/assets/inc/datepicker/images/ui-icons_454545_256x240.png deleted file mode 100644 index b6db1ac..0000000 Binary files a/assets/inc/datepicker/images/ui-icons_454545_256x240.png and /dev/null differ diff --git a/assets/inc/datepicker/images/ui-icons_DDDDDD_256x240.png b/assets/inc/datepicker/images/ui-icons_DDDDDD_256x240.png index 9f9e056..2d63658 100644 Binary files a/assets/inc/datepicker/images/ui-icons_DDDDDD_256x240.png and b/assets/inc/datepicker/images/ui-icons_DDDDDD_256x240.png differ diff --git a/assets/inc/datepicker/images/ui-icons_ffffff_256x240.png b/assets/inc/datepicker/images/ui-icons_ffffff_256x240.png index 4f624bb..4d66f59 100644 Binary files a/assets/inc/datepicker/images/ui-icons_ffffff_256x240.png and b/assets/inc/datepicker/images/ui-icons_ffffff_256x240.png differ diff --git a/assets/inc/datepicker/jquery-ui-1.10.4.custom.min.css b/assets/inc/datepicker/jquery-ui-1.10.4.custom.min.css deleted file mode 100644 index 94dfe67..0000000 --- a/assets/inc/datepicker/jquery-ui-1.10.4.custom.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.10.4 - 2014-02-04 -* http://jqueryui.com -* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=%22Open%20Sans%22%2C%E2%80%8B%20sans-serif&fwDefault=normal&fsDefault=13px&cornerRadius=0&bgColorHeader=%23ffffff&bgTextureHeader=highlight_soft&bgImgOpacityHeader=0&borderColorHeader=%23ffffff&fcHeader=%23222222&iconColorHeader=%23DDDDDD&bgColorContent=%23ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=%23E1E1E1&fcContent=%23222222&iconColorContent=%23222222&bgColorDefault=%23F9F9F9&bgTextureDefault=flat&bgImgOpacityDefault=0&borderColorDefault=%23F0F0F0&fcDefault=%23444444&iconColorDefault=%23444444&bgColorHover=%23F0F0F0&bgTextureHover=flat&bgImgOpacityHover=0&borderColorHover=%23E1E1E1&fcHover=%23444444&iconColorHover=%232EA2CC&bgColorActive=%232EA2CC&bgTextureActive=flat&bgImgOpacityActive=0&borderColorActive=%230074A2&fcActive=%23ffffff&iconColorActive=%23ffffff&bgColorHighlight=%23ffffff&bgTextureHighlight=flat&bgImgOpacityHighlight=0&borderColorHighlight=%23aaaaaa&fcHighlight=%23444444&iconColorHighlight=%23444444&bgColorError=%23E14D43&bgTextureError=flat&bgImgOpacityError=0&borderColorError=%23D02A21&fcError=%23ffffff&iconColorError=%23ffffff&bgColorOverlay=%23aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ - -.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.acf-ui-datepicker .ui-widget{font-family:"Open Sans",​ sans-serif;font-size:13px}.acf-ui-datepicker .ui-widget .ui-widget{font-size:1em}.acf-ui-datepicker .ui-widget input,.acf-ui-datepicker .ui-widget select,.acf-ui-datepicker .ui-widget textarea,.acf-ui-datepicker .ui-widget button{font-family:"Open Sans",​ sans-serif;font-size:1em}.acf-ui-datepicker .ui-widget-content{border:1px solid #E1E1E1;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.acf-ui-datepicker .ui-widget-content a{color:#222}.acf-ui-datepicker .ui-widget-header{border:1px solid #fff;background:#fff url(images/ui-bg_highlight-soft_0_ffffff_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.acf-ui-datepicker .ui-widget-header a{color:#222}.acf-ui-datepicker .ui-state-default,.acf-ui-datepicker .ui-widget-content .ui-state-default,.acf-ui-datepicker .ui-widget-header .ui-state-default{border:1px solid #F0F0F0;background:#F9F9F9 url(images/ui-bg_flat_0_F9F9F9_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#444}.acf-ui-datepicker .ui-state-default a,.acf-ui-datepicker .ui-state-default a:link,.acf-ui-datepicker .ui-state-default a:visited{color:#444;text-decoration:none}.acf-ui-datepicker .ui-state-hover,.acf-ui-datepicker .ui-widget-content .ui-state-hover,.acf-ui-datepicker .ui-widget-header .ui-state-hover,.acf-ui-datepicker .ui-state-focus,.acf-ui-datepicker .ui-widget-content .ui-state-focus,.acf-ui-datepicker .ui-widget-header .ui-state-focus{border:1px solid #E1E1E1;background:#F0F0F0 url(images/ui-bg_flat_0_F0F0F0_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#444}.acf-ui-datepicker .ui-state-hover a,.acf-ui-datepicker .ui-state-hover a:hover,.acf-ui-datepicker .ui-state-hover a:link,.acf-ui-datepicker .ui-state-hover a:visited,.acf-ui-datepicker .ui-state-focus a,.acf-ui-datepicker .ui-state-focus a:hover,.acf-ui-datepicker .ui-state-focus a:link,.acf-ui-datepicker .ui-state-focus a:visited{color:#444;text-decoration:none}.acf-ui-datepicker .ui-state-active,.acf-ui-datepicker .ui-widget-content .ui-state-active,.acf-ui-datepicker .ui-widget-header .ui-state-active{border:1px solid #0074A2;background:#2EA2CC url(images/ui-bg_flat_0_2EA2CC_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#fff}.acf-ui-datepicker .ui-state-active a,.acf-ui-datepicker .ui-state-active a:link,.acf-ui-datepicker .ui-state-active a:visited{color:#fff;text-decoration:none}.acf-ui-datepicker .ui-state-highlight,.acf-ui-datepicker .ui-widget-content .ui-state-highlight,.acf-ui-datepicker .ui-widget-header .ui-state-highlight{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_0_ffffff_40x100.png) 50% 50% repeat-x;color:#444}.acf-ui-datepicker .ui-state-highlight a,.acf-ui-datepicker .ui-widget-content .ui-state-highlight a,.acf-ui-datepicker .ui-widget-header .ui-state-highlight a{color:#444}.acf-ui-datepicker .ui-state-error,.acf-ui-datepicker .ui-widget-content .ui-state-error,.acf-ui-datepicker .ui-widget-header .ui-state-error{border:1px solid #D02A21;background:#E14D43 url(images/ui-bg_flat_0_E14D43_40x100.png) 50% 50% repeat-x;color:#fff}.acf-ui-datepicker .ui-state-error a,.acf-ui-datepicker .ui-widget-content .ui-state-error a,.acf-ui-datepicker .ui-widget-header .ui-state-error a{color:#fff}.acf-ui-datepicker .ui-state-error-text,.acf-ui-datepicker .ui-widget-content .ui-state-error-text,.acf-ui-datepicker .ui-widget-header .ui-state-error-text{color:#fff}.acf-ui-datepicker .ui-priority-primary,.acf-ui-datepicker .ui-widget-content .ui-priority-primary,.acf-ui-datepicker .ui-widget-header .ui-priority-primary{font-weight:bold}.acf-ui-datepicker .ui-priority-secondary,.acf-ui-datepicker .ui-widget-content .ui-priority-secondary,.acf-ui-datepicker .ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.acf-ui-datepicker .ui-state-disabled,.acf-ui-datepicker .ui-widget-content .ui-state-disabled,.acf-ui-datepicker .ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.acf-ui-datepicker .ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.acf-ui-datepicker .ui-icon{width:16px;height:16px}.acf-ui-datepicker .ui-icon,.acf-ui-datepicker .ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.acf-ui-datepicker .ui-widget-header .ui-icon{background-image:url(images/ui-icons_DDDDDD_256x240.png)}.acf-ui-datepicker .ui-state-default .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.acf-ui-datepicker .ui-state-hover .ui-icon,.acf-ui-datepicker .ui-state-focus .ui-icon{background-image:url(images/ui-icons_2EA2CC_256x240.png)}.acf-ui-datepicker .ui-state-active .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.acf-ui-datepicker .ui-state-highlight .ui-icon{background-image:url(images/ui-icons_444444_256x240.png)}.acf-ui-datepicker .ui-state-error .ui-icon,.acf-ui-datepicker .ui-state-error-text .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.acf-ui-datepicker .ui-icon-blank{background-position:16px 16px}.acf-ui-datepicker .ui-icon-carat-1-n{background-position:0 0}.acf-ui-datepicker .ui-icon-carat-1-ne{background-position:-16px 0}.acf-ui-datepicker .ui-icon-carat-1-e{background-position:-32px 0}.acf-ui-datepicker .ui-icon-carat-1-se{background-position:-48px 0}.acf-ui-datepicker .ui-icon-carat-1-s{background-position:-64px 0}.acf-ui-datepicker .ui-icon-carat-1-sw{background-position:-80px 0}.acf-ui-datepicker .ui-icon-carat-1-w{background-position:-96px 0}.acf-ui-datepicker .ui-icon-carat-1-nw{background-position:-112px 0}.acf-ui-datepicker .ui-icon-carat-2-n-s{background-position:-128px 0}.acf-ui-datepicker .ui-icon-carat-2-e-w{background-position:-144px 0}.acf-ui-datepicker .ui-icon-triangle-1-n{background-position:0 -16px}.acf-ui-datepicker .ui-icon-triangle-1-ne{background-position:-16px -16px}.acf-ui-datepicker .ui-icon-triangle-1-e{background-position:-32px -16px}.acf-ui-datepicker .ui-icon-triangle-1-se{background-position:-48px -16px}.acf-ui-datepicker .ui-icon-triangle-1-s{background-position:-64px -16px}.acf-ui-datepicker .ui-icon-triangle-1-sw{background-position:-80px -16px}.acf-ui-datepicker .ui-icon-triangle-1-w{background-position:-96px -16px}.acf-ui-datepicker .ui-icon-triangle-1-nw{background-position:-112px -16px}.acf-ui-datepicker .ui-icon-triangle-2-n-s{background-position:-128px -16px}.acf-ui-datepicker .ui-icon-triangle-2-e-w{background-position:-144px -16px}.acf-ui-datepicker .ui-icon-arrow-1-n{background-position:0 -32px}.acf-ui-datepicker .ui-icon-arrow-1-ne{background-position:-16px -32px}.acf-ui-datepicker .ui-icon-arrow-1-e{background-position:-32px -32px}.acf-ui-datepicker .ui-icon-arrow-1-se{background-position:-48px -32px}.acf-ui-datepicker .ui-icon-arrow-1-s{background-position:-64px -32px}.acf-ui-datepicker .ui-icon-arrow-1-sw{background-position:-80px -32px}.acf-ui-datepicker .ui-icon-arrow-1-w{background-position:-96px -32px}.acf-ui-datepicker .ui-icon-arrow-1-nw{background-position:-112px -32px}.acf-ui-datepicker .ui-icon-arrow-2-n-s{background-position:-128px -32px}.acf-ui-datepicker .ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.acf-ui-datepicker .ui-icon-arrow-2-e-w{background-position:-160px -32px}.acf-ui-datepicker .ui-icon-arrow-2-se-nw{background-position:-176px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-n{background-position:-192px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-e{background-position:-208px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-s{background-position:-224px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-w{background-position:-240px -32px}.acf-ui-datepicker .ui-icon-arrowthick-1-n{background-position:0 -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-ne{background-position:-16px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-e{background-position:-32px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-se{background-position:-48px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-s{background-position:-64px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-sw{background-position:-80px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-w{background-position:-96px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-nw{background-position:-112px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-w{background-position:-64px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-n{background-position:-80px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-e{background-position:-96px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-s{background-position:-112px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.acf-ui-datepicker .ui-icon-arrow-4{background-position:0 -80px}.acf-ui-datepicker .ui-icon-arrow-4-diag{background-position:-16px -80px}.acf-ui-datepicker .ui-icon-extlink{background-position:-32px -80px}.acf-ui-datepicker .ui-icon-newwin{background-position:-48px -80px}.acf-ui-datepicker .ui-icon-refresh{background-position:-64px -80px}.acf-ui-datepicker .ui-icon-shuffle{background-position:-80px -80px}.acf-ui-datepicker .ui-icon-transfer-e-w{background-position:-96px -80px}.acf-ui-datepicker .ui-icon-transferthick-e-w{background-position:-112px -80px}.acf-ui-datepicker .ui-icon-folder-collapsed{background-position:0 -96px}.acf-ui-datepicker .ui-icon-folder-open{background-position:-16px -96px}.acf-ui-datepicker .ui-icon-document{background-position:-32px -96px}.acf-ui-datepicker .ui-icon-document-b{background-position:-48px -96px}.acf-ui-datepicker .ui-icon-note{background-position:-64px -96px}.acf-ui-datepicker .ui-icon-mail-closed{background-position:-80px -96px}.acf-ui-datepicker .ui-icon-mail-open{background-position:-96px -96px}.acf-ui-datepicker .ui-icon-suitcase{background-position:-112px -96px}.acf-ui-datepicker .ui-icon-comment{background-position:-128px -96px}.acf-ui-datepicker .ui-icon-person{background-position:-144px -96px}.acf-ui-datepicker .ui-icon-print{background-position:-160px -96px}.acf-ui-datepicker .ui-icon-trash{background-position:-176px -96px}.acf-ui-datepicker .ui-icon-locked{background-position:-192px -96px}.acf-ui-datepicker .ui-icon-unlocked{background-position:-208px -96px}.acf-ui-datepicker .ui-icon-bookmark{background-position:-224px -96px}.acf-ui-datepicker .ui-icon-tag{background-position:-240px -96px}.acf-ui-datepicker .ui-icon-home{background-position:0 -112px}.acf-ui-datepicker .ui-icon-flag{background-position:-16px -112px}.acf-ui-datepicker .ui-icon-calendar{background-position:-32px -112px}.acf-ui-datepicker .ui-icon-cart{background-position:-48px -112px}.acf-ui-datepicker .ui-icon-pencil{background-position:-64px -112px}.acf-ui-datepicker .ui-icon-clock{background-position:-80px -112px}.acf-ui-datepicker .ui-icon-disk{background-position:-96px -112px}.acf-ui-datepicker .ui-icon-calculator{background-position:-112px -112px}.acf-ui-datepicker .ui-icon-zoomin{background-position:-128px -112px}.acf-ui-datepicker .ui-icon-zoomout{background-position:-144px -112px}.acf-ui-datepicker .ui-icon-search{background-position:-160px -112px}.acf-ui-datepicker .ui-icon-wrench{background-position:-176px -112px}.acf-ui-datepicker .ui-icon-gear{background-position:-192px -112px}.acf-ui-datepicker .ui-icon-heart{background-position:-208px -112px}.acf-ui-datepicker .ui-icon-star{background-position:-224px -112px}.acf-ui-datepicker .ui-icon-link{background-position:-240px -112px}.acf-ui-datepicker .ui-icon-cancel{background-position:0 -128px}.acf-ui-datepicker .ui-icon-plus{background-position:-16px -128px}.acf-ui-datepicker .ui-icon-plusthick{background-position:-32px -128px}.acf-ui-datepicker .ui-icon-minus{background-position:-48px -128px}.acf-ui-datepicker .ui-icon-minusthick{background-position:-64px -128px}.acf-ui-datepicker .ui-icon-close{background-position:-80px -128px}.acf-ui-datepicker .ui-icon-closethick{background-position:-96px -128px}.acf-ui-datepicker .ui-icon-key{background-position:-112px -128px}.acf-ui-datepicker .ui-icon-lightbulb{background-position:-128px -128px}.acf-ui-datepicker .ui-icon-scissors{background-position:-144px -128px}.acf-ui-datepicker .ui-icon-clipboard{background-position:-160px -128px}.acf-ui-datepicker .ui-icon-copy{background-position:-176px -128px}.acf-ui-datepicker .ui-icon-contact{background-position:-192px -128px}.acf-ui-datepicker .ui-icon-image{background-position:-208px -128px}.acf-ui-datepicker .ui-icon-video{background-position:-224px -128px}.acf-ui-datepicker .ui-icon-script{background-position:-240px -128px}.acf-ui-datepicker .ui-icon-alert{background-position:0 -144px}.acf-ui-datepicker .ui-icon-info{background-position:-16px -144px}.acf-ui-datepicker .ui-icon-notice{background-position:-32px -144px}.acf-ui-datepicker .ui-icon-help{background-position:-48px -144px}.acf-ui-datepicker .ui-icon-check{background-position:-64px -144px}.acf-ui-datepicker .ui-icon-bullet{background-position:-80px -144px}.acf-ui-datepicker .ui-icon-radio-on{background-position:-96px -144px}.acf-ui-datepicker .ui-icon-radio-off{background-position:-112px -144px}.acf-ui-datepicker .ui-icon-pin-w{background-position:-128px -144px}.acf-ui-datepicker .ui-icon-pin-s{background-position:-144px -144px}.acf-ui-datepicker .ui-icon-play{background-position:0 -160px}.acf-ui-datepicker .ui-icon-pause{background-position:-16px -160px}.acf-ui-datepicker .ui-icon-seek-next{background-position:-32px -160px}.acf-ui-datepicker .ui-icon-seek-prev{background-position:-48px -160px}.acf-ui-datepicker .ui-icon-seek-end{background-position:-64px -160px}.acf-ui-datepicker .ui-icon-seek-start{background-position:-80px -160px}.acf-ui-datepicker .ui-icon-seek-first{background-position:-80px -160px}.acf-ui-datepicker .ui-icon-stop{background-position:-96px -160px}.acf-ui-datepicker .ui-icon-eject{background-position:-112px -160px}.acf-ui-datepicker .ui-icon-volume-off{background-position:-128px -160px}.acf-ui-datepicker .ui-icon-volume-on{background-position:-144px -160px}.acf-ui-datepicker .ui-icon-power{background-position:0 -176px}.acf-ui-datepicker .ui-icon-signal-diag{background-position:-16px -176px}.acf-ui-datepicker .ui-icon-signal{background-position:-32px -176px}.acf-ui-datepicker .ui-icon-battery-0{background-position:-48px -176px}.acf-ui-datepicker .ui-icon-battery-1{background-position:-64px -176px}.acf-ui-datepicker .ui-icon-battery-2{background-position:-80px -176px}.acf-ui-datepicker .ui-icon-battery-3{background-position:-96px -176px}.acf-ui-datepicker .ui-icon-circle-plus{background-position:0 -192px}.acf-ui-datepicker .ui-icon-circle-minus{background-position:-16px -192px}.acf-ui-datepicker .ui-icon-circle-close{background-position:-32px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-e{background-position:-48px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-s{background-position:-64px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-w{background-position:-80px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-n{background-position:-96px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-e{background-position:-112px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-s{background-position:-128px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-w{background-position:-144px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-n{background-position:-160px -192px}.acf-ui-datepicker .ui-icon-circle-zoomin{background-position:-176px -192px}.acf-ui-datepicker .ui-icon-circle-zoomout{background-position:-192px -192px}.acf-ui-datepicker .ui-icon-circle-check{background-position:-208px -192px}.acf-ui-datepicker .ui-icon-circlesmall-plus{background-position:0 -208px}.acf-ui-datepicker .ui-icon-circlesmall-minus{background-position:-16px -208px}.acf-ui-datepicker .ui-icon-circlesmall-close{background-position:-32px -208px}.acf-ui-datepicker .ui-icon-squaresmall-plus{background-position:-48px -208px}.acf-ui-datepicker .ui-icon-squaresmall-minus{background-position:-64px -208px}.acf-ui-datepicker .ui-icon-squaresmall-close{background-position:-80px -208px}.acf-ui-datepicker .ui-icon-grip-dotted-vertical{background-position:0 -224px}.acf-ui-datepicker .ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.acf-ui-datepicker .ui-icon-grip-solid-vertical{background-position:-32px -224px}.acf-ui-datepicker .ui-icon-grip-solid-horizontal{background-position:-48px -224px}.acf-ui-datepicker .ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.acf-ui-datepicker .ui-icon-grip-diagonal-se{background-position:-80px -224px}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-top,.acf-ui-datepicker .ui-corner-left,.acf-ui-datepicker .ui-corner-tl{border-top-left-radius:0}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-top,.acf-ui-datepicker .ui-corner-right,.acf-ui-datepicker .ui-corner-tr{border-top-right-radius:0}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-bottom,.acf-ui-datepicker .ui-corner-left,.acf-ui-datepicker .ui-corner-bl{border-bottom-left-radius:0}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-bottom,.acf-ui-datepicker .ui-corner-right,.acf-ui-datepicker .ui-corner-br{border-bottom-right-radius:0}.acf-ui-datepicker .ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.acf-ui-datepicker .ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px} diff --git a/assets/inc/datepicker/jquery-ui-1.10.4.custom.css b/assets/inc/datepicker/jquery-ui.css similarity index 88% rename from assets/inc/datepicker/jquery-ui-1.10.4.custom.css rename to assets/inc/datepicker/jquery-ui.css index 900ba75..6bc4659 100644 --- a/assets/inc/datepicker/jquery-ui-1.10.4.custom.css +++ b/assets/inc/datepicker/jquery-ui.css @@ -1,8 +1,8 @@ -/*! jQuery UI - v1.10.4 - 2014-02-04 +/*! jQuery UI - v1.11.4 - 2016-05-31 * http://jqueryui.com -* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=%22Open%20Sans%22%2C%E2%80%8B%20sans-serif&fwDefault=normal&fsDefault=13px&cornerRadius=0&bgColorHeader=%23ffffff&bgTextureHeader=highlight_soft&bgImgOpacityHeader=0&borderColorHeader=%23ffffff&fcHeader=%23222222&iconColorHeader=%23DDDDDD&bgColorContent=%23ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=%23E1E1E1&fcContent=%23222222&iconColorContent=%23222222&bgColorDefault=%23F9F9F9&bgTextureDefault=flat&bgImgOpacityDefault=0&borderColorDefault=%23F0F0F0&fcDefault=%23444444&iconColorDefault=%23444444&bgColorHover=%23F0F0F0&bgTextureHover=flat&bgImgOpacityHover=0&borderColorHover=%23E1E1E1&fcHover=%23444444&iconColorHover=%232EA2CC&bgColorActive=%232EA2CC&bgTextureActive=flat&bgImgOpacityActive=0&borderColorActive=%230074A2&fcActive=%23ffffff&iconColorActive=%23ffffff&bgColorHighlight=%23ffffff&bgTextureHighlight=flat&bgImgOpacityHighlight=0&borderColorHighlight=%23aaaaaa&fcHighlight=%23444444&iconColorHighlight=%23444444&bgColorError=%23E14D43&bgTextureError=flat&bgImgOpacityError=0&borderColorError=%23D02A21&fcError=%23ffffff&iconColorError=%23ffffff&bgColorOverlay=%23aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ +* Includes: core.css, datepicker.css, theme.css +* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=%22Open%20Sans%22%2C%E2%80%8B%20sans-serif&fsDefault=14px&fwDefault=normal&cornerRadius=3&bgColorHeader=%23ffffff&bgTextureHeader=highlight_soft&borderColorHeader=%23ffffff&fcHeader=%23222222&iconColorHeader=%23DDDDDD&bgColorContent=%23ffffff&bgTextureContent=flat&borderColorContent=%23E1E1E1&fcContent=%23444444&iconColorContent=%23444444&bgColorDefault=%23F9F9F9&bgTextureDefault=flat&borderColorDefault=%23F0F0F0&fcDefault=%23444444&iconColorDefault=%23444444&bgColorHover=%2398b7e8&bgTextureHover=flat&borderColorHover=%2398b7e8&fcHover=%23ffffff&iconColorHover=%23ffffff&bgColorActive=%233875d7&bgTextureActive=flat&borderColorActive=%233875d7&fcActive=%23ffffff&iconColorActive=%23ffffff&bgColorHighlight=%23ffffff&bgTextureHighlight=flat&borderColorHighlight=%23aaaaaa&fcHighlight=%23444444&iconColorHighlight=%23444444&bgColorError=%23E14D43&bgTextureError=flat&borderColorError=%23E14D43&fcError=%23ffffff&iconColorError=%23ffffff&bgColorOverlay=%23ffffff&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px&bgImgOpacityHeader=0&bgImgOpacityContent=&bgImgOpacityDefault=0&bgImgOpacityHover=0&bgImgOpacityActive=0&bgImgOpacityHighlight=0&bgImgOpacityError=0 +* Copyright jQuery Foundation and other contributors; Licensed MIT */ /* Layout helpers ----------------------------------*/ @@ -48,7 +48,7 @@ left: 0; position: absolute; opacity: 0; - filter:Alpha(Opacity=0); + filter:Alpha(Opacity=0); /* support: IE8 */ } .ui-front { @@ -138,7 +138,7 @@ } .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year { - width: 49%; + width: 45%; } .ui-datepicker table { width: 100%; @@ -256,7 +256,7 @@ ----------------------------------*/ .acf-ui-datepicker .ui-widget { font-family: "Open Sans",​ sans-serif; - font-size: 13px; + font-size: 14px; } .acf-ui-datepicker .ui-widget .ui-widget { font-size: 1em; @@ -270,15 +270,15 @@ } .acf-ui-datepicker .ui-widget-content { border: 1px solid #E1E1E1; - background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; - color: #222222; + background: #ffffff; + color: #444444; } .acf-ui-datepicker .ui-widget-content a { - color: #222222; + color: #444444; } .acf-ui-datepicker .ui-widget-header { border: 1px solid #ffffff; - background: #ffffff url(images/ui-bg_highlight-soft_0_ffffff_1x100.png) 50% 50% repeat-x; + background: #ffffff url("images/ui-bg_highlight-soft_0_ffffff_1x100.png") 50% 50% repeat-x; color: #222222; font-weight: bold; } @@ -292,7 +292,7 @@ .acf-ui-datepicker .ui-widget-content .ui-state-default, .acf-ui-datepicker .ui-widget-header .ui-state-default { border: 1px solid #F0F0F0; - background: #F9F9F9 url(images/ui-bg_flat_0_F9F9F9_40x100.png) 50% 50% repeat-x; + background: #F9F9F9; font-weight: normal; color: #444444; } @@ -308,10 +308,10 @@ .acf-ui-datepicker .ui-state-focus, .acf-ui-datepicker .ui-widget-content .ui-state-focus, .acf-ui-datepicker .ui-widget-header .ui-state-focus { - border: 1px solid #E1E1E1; - background: #F0F0F0 url(images/ui-bg_flat_0_F0F0F0_40x100.png) 50% 50% repeat-x; + border: 1px solid #98b7e8; + background: #98b7e8; font-weight: normal; - color: #444444; + color: #ffffff; } .acf-ui-datepicker .ui-state-hover a, .acf-ui-datepicker .ui-state-hover a:hover, @@ -321,14 +321,14 @@ .acf-ui-datepicker .ui-state-focus a:hover, .acf-ui-datepicker .ui-state-focus a:link, .acf-ui-datepicker .ui-state-focus a:visited { - color: #444444; + color: #ffffff; text-decoration: none; } .acf-ui-datepicker .ui-state-active, .acf-ui-datepicker .ui-widget-content .ui-state-active, .acf-ui-datepicker .ui-widget-header .ui-state-active { - border: 1px solid #0074A2; - background: #2EA2CC url(images/ui-bg_flat_0_2EA2CC_40x100.png) 50% 50% repeat-x; + border: 1px solid #3875d7; + background: #3875d7; font-weight: normal; color: #ffffff; } @@ -345,7 +345,7 @@ .acf-ui-datepicker .ui-widget-content .ui-state-highlight, .acf-ui-datepicker .ui-widget-header .ui-state-highlight { border: 1px solid #aaaaaa; - background: #ffffff url(images/ui-bg_flat_0_ffffff_40x100.png) 50% 50% repeat-x; + background: #ffffff; color: #444444; } .acf-ui-datepicker .ui-state-highlight a, @@ -356,8 +356,8 @@ .acf-ui-datepicker .ui-state-error, .acf-ui-datepicker .ui-widget-content .ui-state-error, .acf-ui-datepicker .ui-widget-header .ui-state-error { - border: 1px solid #D02A21; - background: #E14D43 url(images/ui-bg_flat_0_E14D43_40x100.png) 50% 50% repeat-x; + border: 1px solid #E14D43; + background: #E14D43; color: #ffffff; } .acf-ui-datepicker .ui-state-error a, @@ -379,18 +379,18 @@ .acf-ui-datepicker .ui-widget-content .ui-priority-secondary, .acf-ui-datepicker .ui-widget-header .ui-priority-secondary { opacity: .7; - filter:Alpha(Opacity=70); + filter:Alpha(Opacity=70); /* support: IE8 */ font-weight: normal; } .acf-ui-datepicker .ui-state-disabled, .acf-ui-datepicker .ui-widget-content .ui-state-disabled, .acf-ui-datepicker .ui-widget-header .ui-state-disabled { opacity: .35; - filter:Alpha(Opacity=35); + filter:Alpha(Opacity=35); /* support: IE8 */ background-image: none; } .acf-ui-datepicker .ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* For IE8 - See #6059 */ + filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ } /* Icons @@ -403,27 +403,27 @@ } .acf-ui-datepicker .ui-icon, .acf-ui-datepicker .ui-widget-content .ui-icon { - background-image: url(images/ui-icons_222222_256x240.png); + background-image: url("images/ui-icons_444444_256x240.png"); } .acf-ui-datepicker .ui-widget-header .ui-icon { - background-image: url(images/ui-icons_DDDDDD_256x240.png); + background-image: url("images/ui-icons_DDDDDD_256x240.png"); } .acf-ui-datepicker .ui-state-default .ui-icon { - background-image: url(images/ui-icons_444444_256x240.png); + background-image: url("images/ui-icons_444444_256x240.png"); } .acf-ui-datepicker .ui-state-hover .ui-icon, .acf-ui-datepicker .ui-state-focus .ui-icon { - background-image: url(images/ui-icons_2EA2CC_256x240.png); + background-image: url("images/ui-icons_ffffff_256x240.png"); } .acf-ui-datepicker .ui-state-active .ui-icon { - background-image: url(images/ui-icons_ffffff_256x240.png); + background-image: url("images/ui-icons_ffffff_256x240.png"); } .acf-ui-datepicker .ui-state-highlight .ui-icon { - background-image: url(images/ui-icons_444444_256x240.png); + background-image: url("images/ui-icons_444444_256x240.png"); } .acf-ui-datepicker .ui-state-error .ui-icon, .acf-ui-datepicker .ui-state-error-text .ui-icon { - background-image: url(images/ui-icons_ffffff_256x240.png); + background-image: url("images/ui-icons_ffffff_256x240.png"); } /* positioning */ @@ -613,38 +613,38 @@ .acf-ui-datepicker .ui-corner-top, .acf-ui-datepicker .ui-corner-left, .acf-ui-datepicker .ui-corner-tl { - border-top-left-radius: 0; + border-top-left-radius: 3; } .acf-ui-datepicker .ui-corner-all, .acf-ui-datepicker .ui-corner-top, .acf-ui-datepicker .ui-corner-right, .acf-ui-datepicker .ui-corner-tr { - border-top-right-radius: 0; + border-top-right-radius: 3; } .acf-ui-datepicker .ui-corner-all, .acf-ui-datepicker .ui-corner-bottom, .acf-ui-datepicker .ui-corner-left, .acf-ui-datepicker .ui-corner-bl { - border-bottom-left-radius: 0; + border-bottom-left-radius: 3; } .acf-ui-datepicker .ui-corner-all, .acf-ui-datepicker .ui-corner-bottom, .acf-ui-datepicker .ui-corner-right, .acf-ui-datepicker .ui-corner-br { - border-bottom-right-radius: 0; + border-bottom-right-radius: 3; } /* Overlays */ .acf-ui-datepicker .ui-widget-overlay { - background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; + background: #ffffff; opacity: .3; - filter: Alpha(Opacity=30); + filter: Alpha(Opacity=30); /* support: IE8 */ } .acf-ui-datepicker .ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; - background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; + background: #aaaaaa; opacity: .3; - filter: Alpha(Opacity=30); + filter: Alpha(Opacity=30); /* support: IE8 */ border-radius: 8px; } diff --git a/assets/inc/datepicker/jquery-ui.min.css b/assets/inc/datepicker/jquery-ui.min.css new file mode 100644 index 0000000..80a755b --- /dev/null +++ b/assets/inc/datepicker/jquery-ui.min.css @@ -0,0 +1,7 @@ +/*! jQuery UI - v1.11.4 - 2016-05-31 +* http://jqueryui.com +* Includes: core.css, datepicker.css, theme.css +* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=%22Open%20Sans%22%2C%E2%80%8B%20sans-serif&fsDefault=14px&fwDefault=normal&cornerRadius=3&bgColorHeader=%23ffffff&bgTextureHeader=highlight_soft&borderColorHeader=%23ffffff&fcHeader=%23222222&iconColorHeader=%23DDDDDD&bgColorContent=%23ffffff&bgTextureContent=flat&borderColorContent=%23E1E1E1&fcContent=%23444444&iconColorContent=%23444444&bgColorDefault=%23F9F9F9&bgTextureDefault=flat&borderColorDefault=%23F0F0F0&fcDefault=%23444444&iconColorDefault=%23444444&bgColorHover=%2398b7e8&bgTextureHover=flat&borderColorHover=%2398b7e8&fcHover=%23ffffff&iconColorHover=%23ffffff&bgColorActive=%233875d7&bgTextureActive=flat&borderColorActive=%233875d7&fcActive=%23ffffff&iconColorActive=%23ffffff&bgColorHighlight=%23ffffff&bgTextureHighlight=flat&borderColorHighlight=%23aaaaaa&fcHighlight=%23444444&iconColorHighlight=%23444444&bgColorError=%23E14D43&bgTextureError=flat&borderColorError=%23E14D43&fcError=%23ffffff&iconColorError=%23ffffff&bgColorOverlay=%23ffffff&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px&bgImgOpacityHeader=0&bgImgOpacityContent=&bgImgOpacityDefault=0&bgImgOpacityHover=0&bgImgOpacityActive=0&bgImgOpacityHighlight=0&bgImgOpacityError=0 +* Copyright jQuery Foundation and other contributors; Licensed MIT */ + +.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.acf-ui-datepicker .ui-widget{font-family:"Open Sans",​ sans-serif;font-size:14px}.acf-ui-datepicker .ui-widget .ui-widget{font-size:1em}.acf-ui-datepicker .ui-widget input,.acf-ui-datepicker .ui-widget select,.acf-ui-datepicker .ui-widget textarea,.acf-ui-datepicker .ui-widget button{font-family:"Open Sans",​ sans-serif;font-size:1em}.acf-ui-datepicker .ui-widget-content{border:1px solid #E1E1E1;background:#fff;color:#444}.acf-ui-datepicker .ui-widget-content a{color:#444}.acf-ui-datepicker .ui-widget-header{border:1px solid #fff;background:#fff url("images/ui-bg_highlight-soft_0_ffffff_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.acf-ui-datepicker .ui-widget-header a{color:#222}.acf-ui-datepicker .ui-state-default,.acf-ui-datepicker .ui-widget-content .ui-state-default,.acf-ui-datepicker .ui-widget-header .ui-state-default{border:1px solid #F0F0F0;background:#F9F9F9;font-weight:normal;color:#444}.acf-ui-datepicker .ui-state-default a,.acf-ui-datepicker .ui-state-default a:link,.acf-ui-datepicker .ui-state-default a:visited{color:#444;text-decoration:none}.acf-ui-datepicker .ui-state-hover,.acf-ui-datepicker .ui-widget-content .ui-state-hover,.acf-ui-datepicker .ui-widget-header .ui-state-hover,.acf-ui-datepicker .ui-state-focus,.acf-ui-datepicker .ui-widget-content .ui-state-focus,.acf-ui-datepicker .ui-widget-header .ui-state-focus{border:1px solid #98b7e8;background:#98b7e8;font-weight:normal;color:#fff}.acf-ui-datepicker .ui-state-hover a,.acf-ui-datepicker .ui-state-hover a:hover,.acf-ui-datepicker .ui-state-hover a:link,.acf-ui-datepicker .ui-state-hover a:visited,.acf-ui-datepicker .ui-state-focus a,.acf-ui-datepicker .ui-state-focus a:hover,.acf-ui-datepicker .ui-state-focus a:link,.acf-ui-datepicker .ui-state-focus a:visited{color:#fff;text-decoration:none}.acf-ui-datepicker .ui-state-active,.acf-ui-datepicker .ui-widget-content .ui-state-active,.acf-ui-datepicker .ui-widget-header .ui-state-active{border:1px solid #3875d7;background:#3875d7;font-weight:normal;color:#fff}.acf-ui-datepicker .ui-state-active a,.acf-ui-datepicker .ui-state-active a:link,.acf-ui-datepicker .ui-state-active a:visited{color:#fff;text-decoration:none}.acf-ui-datepicker .ui-state-highlight,.acf-ui-datepicker .ui-widget-content .ui-state-highlight,.acf-ui-datepicker .ui-widget-header .ui-state-highlight{border:1px solid #aaa;background:#fff;color:#444}.acf-ui-datepicker .ui-state-highlight a,.acf-ui-datepicker .ui-widget-content .ui-state-highlight a,.acf-ui-datepicker .ui-widget-header .ui-state-highlight a{color:#444}.acf-ui-datepicker .ui-state-error,.acf-ui-datepicker .ui-widget-content .ui-state-error,.acf-ui-datepicker .ui-widget-header .ui-state-error{border:1px solid #E14D43;background:#E14D43;color:#fff}.acf-ui-datepicker .ui-state-error a,.acf-ui-datepicker .ui-widget-content .ui-state-error a,.acf-ui-datepicker .ui-widget-header .ui-state-error a{color:#fff}.acf-ui-datepicker .ui-state-error-text,.acf-ui-datepicker .ui-widget-content .ui-state-error-text,.acf-ui-datepicker .ui-widget-header .ui-state-error-text{color:#fff}.acf-ui-datepicker .ui-priority-primary,.acf-ui-datepicker .ui-widget-content .ui-priority-primary,.acf-ui-datepicker .ui-widget-header .ui-priority-primary{font-weight:bold}.acf-ui-datepicker .ui-priority-secondary,.acf-ui-datepicker .ui-widget-content .ui-priority-secondary,.acf-ui-datepicker .ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.acf-ui-datepicker .ui-state-disabled,.acf-ui-datepicker .ui-widget-content .ui-state-disabled,.acf-ui-datepicker .ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.acf-ui-datepicker .ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.acf-ui-datepicker .ui-icon{width:16px;height:16px}.acf-ui-datepicker .ui-icon,.acf-ui-datepicker .ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.acf-ui-datepicker .ui-widget-header .ui-icon{background-image:url("images/ui-icons_DDDDDD_256x240.png")}.acf-ui-datepicker .ui-state-default .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.acf-ui-datepicker .ui-state-hover .ui-icon,.acf-ui-datepicker .ui-state-focus .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.acf-ui-datepicker .ui-state-active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.acf-ui-datepicker .ui-state-highlight .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.acf-ui-datepicker .ui-state-error .ui-icon,.acf-ui-datepicker .ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.acf-ui-datepicker .ui-icon-blank{background-position:16px 16px}.acf-ui-datepicker .ui-icon-carat-1-n{background-position:0 0}.acf-ui-datepicker .ui-icon-carat-1-ne{background-position:-16px 0}.acf-ui-datepicker .ui-icon-carat-1-e{background-position:-32px 0}.acf-ui-datepicker .ui-icon-carat-1-se{background-position:-48px 0}.acf-ui-datepicker .ui-icon-carat-1-s{background-position:-64px 0}.acf-ui-datepicker .ui-icon-carat-1-sw{background-position:-80px 0}.acf-ui-datepicker .ui-icon-carat-1-w{background-position:-96px 0}.acf-ui-datepicker .ui-icon-carat-1-nw{background-position:-112px 0}.acf-ui-datepicker .ui-icon-carat-2-n-s{background-position:-128px 0}.acf-ui-datepicker .ui-icon-carat-2-e-w{background-position:-144px 0}.acf-ui-datepicker .ui-icon-triangle-1-n{background-position:0 -16px}.acf-ui-datepicker .ui-icon-triangle-1-ne{background-position:-16px -16px}.acf-ui-datepicker .ui-icon-triangle-1-e{background-position:-32px -16px}.acf-ui-datepicker .ui-icon-triangle-1-se{background-position:-48px -16px}.acf-ui-datepicker .ui-icon-triangle-1-s{background-position:-64px -16px}.acf-ui-datepicker .ui-icon-triangle-1-sw{background-position:-80px -16px}.acf-ui-datepicker .ui-icon-triangle-1-w{background-position:-96px -16px}.acf-ui-datepicker .ui-icon-triangle-1-nw{background-position:-112px -16px}.acf-ui-datepicker .ui-icon-triangle-2-n-s{background-position:-128px -16px}.acf-ui-datepicker .ui-icon-triangle-2-e-w{background-position:-144px -16px}.acf-ui-datepicker .ui-icon-arrow-1-n{background-position:0 -32px}.acf-ui-datepicker .ui-icon-arrow-1-ne{background-position:-16px -32px}.acf-ui-datepicker .ui-icon-arrow-1-e{background-position:-32px -32px}.acf-ui-datepicker .ui-icon-arrow-1-se{background-position:-48px -32px}.acf-ui-datepicker .ui-icon-arrow-1-s{background-position:-64px -32px}.acf-ui-datepicker .ui-icon-arrow-1-sw{background-position:-80px -32px}.acf-ui-datepicker .ui-icon-arrow-1-w{background-position:-96px -32px}.acf-ui-datepicker .ui-icon-arrow-1-nw{background-position:-112px -32px}.acf-ui-datepicker .ui-icon-arrow-2-n-s{background-position:-128px -32px}.acf-ui-datepicker .ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.acf-ui-datepicker .ui-icon-arrow-2-e-w{background-position:-160px -32px}.acf-ui-datepicker .ui-icon-arrow-2-se-nw{background-position:-176px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-n{background-position:-192px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-e{background-position:-208px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-s{background-position:-224px -32px}.acf-ui-datepicker .ui-icon-arrowstop-1-w{background-position:-240px -32px}.acf-ui-datepicker .ui-icon-arrowthick-1-n{background-position:0 -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-ne{background-position:-16px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-e{background-position:-32px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-se{background-position:-48px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-s{background-position:-64px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-sw{background-position:-80px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-w{background-position:-96px -48px}.acf-ui-datepicker .ui-icon-arrowthick-1-nw{background-position:-112px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.acf-ui-datepicker .ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.acf-ui-datepicker .ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.acf-ui-datepicker .ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-w{background-position:-64px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-n{background-position:-80px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-e{background-position:-96px -64px}.acf-ui-datepicker .ui-icon-arrowreturn-1-s{background-position:-112px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.acf-ui-datepicker .ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.acf-ui-datepicker .ui-icon-arrow-4{background-position:0 -80px}.acf-ui-datepicker .ui-icon-arrow-4-diag{background-position:-16px -80px}.acf-ui-datepicker .ui-icon-extlink{background-position:-32px -80px}.acf-ui-datepicker .ui-icon-newwin{background-position:-48px -80px}.acf-ui-datepicker .ui-icon-refresh{background-position:-64px -80px}.acf-ui-datepicker .ui-icon-shuffle{background-position:-80px -80px}.acf-ui-datepicker .ui-icon-transfer-e-w{background-position:-96px -80px}.acf-ui-datepicker .ui-icon-transferthick-e-w{background-position:-112px -80px}.acf-ui-datepicker .ui-icon-folder-collapsed{background-position:0 -96px}.acf-ui-datepicker .ui-icon-folder-open{background-position:-16px -96px}.acf-ui-datepicker .ui-icon-document{background-position:-32px -96px}.acf-ui-datepicker .ui-icon-document-b{background-position:-48px -96px}.acf-ui-datepicker .ui-icon-note{background-position:-64px -96px}.acf-ui-datepicker .ui-icon-mail-closed{background-position:-80px -96px}.acf-ui-datepicker .ui-icon-mail-open{background-position:-96px -96px}.acf-ui-datepicker .ui-icon-suitcase{background-position:-112px -96px}.acf-ui-datepicker .ui-icon-comment{background-position:-128px -96px}.acf-ui-datepicker .ui-icon-person{background-position:-144px -96px}.acf-ui-datepicker .ui-icon-print{background-position:-160px -96px}.acf-ui-datepicker .ui-icon-trash{background-position:-176px -96px}.acf-ui-datepicker .ui-icon-locked{background-position:-192px -96px}.acf-ui-datepicker .ui-icon-unlocked{background-position:-208px -96px}.acf-ui-datepicker .ui-icon-bookmark{background-position:-224px -96px}.acf-ui-datepicker .ui-icon-tag{background-position:-240px -96px}.acf-ui-datepicker .ui-icon-home{background-position:0 -112px}.acf-ui-datepicker .ui-icon-flag{background-position:-16px -112px}.acf-ui-datepicker .ui-icon-calendar{background-position:-32px -112px}.acf-ui-datepicker .ui-icon-cart{background-position:-48px -112px}.acf-ui-datepicker .ui-icon-pencil{background-position:-64px -112px}.acf-ui-datepicker .ui-icon-clock{background-position:-80px -112px}.acf-ui-datepicker .ui-icon-disk{background-position:-96px -112px}.acf-ui-datepicker .ui-icon-calculator{background-position:-112px -112px}.acf-ui-datepicker .ui-icon-zoomin{background-position:-128px -112px}.acf-ui-datepicker .ui-icon-zoomout{background-position:-144px -112px}.acf-ui-datepicker .ui-icon-search{background-position:-160px -112px}.acf-ui-datepicker .ui-icon-wrench{background-position:-176px -112px}.acf-ui-datepicker .ui-icon-gear{background-position:-192px -112px}.acf-ui-datepicker .ui-icon-heart{background-position:-208px -112px}.acf-ui-datepicker .ui-icon-star{background-position:-224px -112px}.acf-ui-datepicker .ui-icon-link{background-position:-240px -112px}.acf-ui-datepicker .ui-icon-cancel{background-position:0 -128px}.acf-ui-datepicker .ui-icon-plus{background-position:-16px -128px}.acf-ui-datepicker .ui-icon-plusthick{background-position:-32px -128px}.acf-ui-datepicker .ui-icon-minus{background-position:-48px -128px}.acf-ui-datepicker .ui-icon-minusthick{background-position:-64px -128px}.acf-ui-datepicker .ui-icon-close{background-position:-80px -128px}.acf-ui-datepicker .ui-icon-closethick{background-position:-96px -128px}.acf-ui-datepicker .ui-icon-key{background-position:-112px -128px}.acf-ui-datepicker .ui-icon-lightbulb{background-position:-128px -128px}.acf-ui-datepicker .ui-icon-scissors{background-position:-144px -128px}.acf-ui-datepicker .ui-icon-clipboard{background-position:-160px -128px}.acf-ui-datepicker .ui-icon-copy{background-position:-176px -128px}.acf-ui-datepicker .ui-icon-contact{background-position:-192px -128px}.acf-ui-datepicker .ui-icon-image{background-position:-208px -128px}.acf-ui-datepicker .ui-icon-video{background-position:-224px -128px}.acf-ui-datepicker .ui-icon-script{background-position:-240px -128px}.acf-ui-datepicker .ui-icon-alert{background-position:0 -144px}.acf-ui-datepicker .ui-icon-info{background-position:-16px -144px}.acf-ui-datepicker .ui-icon-notice{background-position:-32px -144px}.acf-ui-datepicker .ui-icon-help{background-position:-48px -144px}.acf-ui-datepicker .ui-icon-check{background-position:-64px -144px}.acf-ui-datepicker .ui-icon-bullet{background-position:-80px -144px}.acf-ui-datepicker .ui-icon-radio-on{background-position:-96px -144px}.acf-ui-datepicker .ui-icon-radio-off{background-position:-112px -144px}.acf-ui-datepicker .ui-icon-pin-w{background-position:-128px -144px}.acf-ui-datepicker .ui-icon-pin-s{background-position:-144px -144px}.acf-ui-datepicker .ui-icon-play{background-position:0 -160px}.acf-ui-datepicker .ui-icon-pause{background-position:-16px -160px}.acf-ui-datepicker .ui-icon-seek-next{background-position:-32px -160px}.acf-ui-datepicker .ui-icon-seek-prev{background-position:-48px -160px}.acf-ui-datepicker .ui-icon-seek-end{background-position:-64px -160px}.acf-ui-datepicker .ui-icon-seek-start{background-position:-80px -160px}.acf-ui-datepicker .ui-icon-seek-first{background-position:-80px -160px}.acf-ui-datepicker .ui-icon-stop{background-position:-96px -160px}.acf-ui-datepicker .ui-icon-eject{background-position:-112px -160px}.acf-ui-datepicker .ui-icon-volume-off{background-position:-128px -160px}.acf-ui-datepicker .ui-icon-volume-on{background-position:-144px -160px}.acf-ui-datepicker .ui-icon-power{background-position:0 -176px}.acf-ui-datepicker .ui-icon-signal-diag{background-position:-16px -176px}.acf-ui-datepicker .ui-icon-signal{background-position:-32px -176px}.acf-ui-datepicker .ui-icon-battery-0{background-position:-48px -176px}.acf-ui-datepicker .ui-icon-battery-1{background-position:-64px -176px}.acf-ui-datepicker .ui-icon-battery-2{background-position:-80px -176px}.acf-ui-datepicker .ui-icon-battery-3{background-position:-96px -176px}.acf-ui-datepicker .ui-icon-circle-plus{background-position:0 -192px}.acf-ui-datepicker .ui-icon-circle-minus{background-position:-16px -192px}.acf-ui-datepicker .ui-icon-circle-close{background-position:-32px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-e{background-position:-48px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-s{background-position:-64px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-w{background-position:-80px -192px}.acf-ui-datepicker .ui-icon-circle-triangle-n{background-position:-96px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-e{background-position:-112px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-s{background-position:-128px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-w{background-position:-144px -192px}.acf-ui-datepicker .ui-icon-circle-arrow-n{background-position:-160px -192px}.acf-ui-datepicker .ui-icon-circle-zoomin{background-position:-176px -192px}.acf-ui-datepicker .ui-icon-circle-zoomout{background-position:-192px -192px}.acf-ui-datepicker .ui-icon-circle-check{background-position:-208px -192px}.acf-ui-datepicker .ui-icon-circlesmall-plus{background-position:0 -208px}.acf-ui-datepicker .ui-icon-circlesmall-minus{background-position:-16px -208px}.acf-ui-datepicker .ui-icon-circlesmall-close{background-position:-32px -208px}.acf-ui-datepicker .ui-icon-squaresmall-plus{background-position:-48px -208px}.acf-ui-datepicker .ui-icon-squaresmall-minus{background-position:-64px -208px}.acf-ui-datepicker .ui-icon-squaresmall-close{background-position:-80px -208px}.acf-ui-datepicker .ui-icon-grip-dotted-vertical{background-position:0 -224px}.acf-ui-datepicker .ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.acf-ui-datepicker .ui-icon-grip-solid-vertical{background-position:-32px -224px}.acf-ui-datepicker .ui-icon-grip-solid-horizontal{background-position:-48px -224px}.acf-ui-datepicker .ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.acf-ui-datepicker .ui-icon-grip-diagonal-se{background-position:-80px -224px}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-top,.acf-ui-datepicker .ui-corner-left,.acf-ui-datepicker .ui-corner-tl{border-top-left-radius:3}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-top,.acf-ui-datepicker .ui-corner-right,.acf-ui-datepicker .ui-corner-tr{border-top-right-radius:3}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-bottom,.acf-ui-datepicker .ui-corner-left,.acf-ui-datepicker .ui-corner-bl{border-bottom-left-radius:3}.acf-ui-datepicker .ui-corner-all,.acf-ui-datepicker .ui-corner-bottom,.acf-ui-datepicker .ui-corner-right,.acf-ui-datepicker .ui-corner-br{border-bottom-right-radius:3}.acf-ui-datepicker .ui-widget-overlay{background:#fff;opacity:.3;filter:Alpha(Opacity=30)}.acf-ui-datepicker .ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px} diff --git a/assets/inc/select2/CONTRIBUTING.md b/assets/inc/select2/CONTRIBUTING.md deleted file mode 100644 index bca4baf..0000000 --- a/assets/inc/select2/CONTRIBUTING.md +++ /dev/null @@ -1,107 +0,0 @@ -Contributing to Select2 -======================= -Looking to contribute something to Select2? **Here's how you can help.** - -Please take a moment to review this document in order to make the contribution -process easy and effective for everyone involved. - -Following these guidelines helps to communicate that you respect the time of -the developers managing and developing this open source project. In return, -they should reciprocate that respect in addressing your issue or assessing -patches and features. - -Using the issue tracker ------------------------ -When [reporting bugs][reporting-bugs] or -[requesting features][requesting-features], the -[issue tracker on GitHub][issue-tracker] is the recommended channel to use. - -The issue tracker **is not** a place for support requests. The -[mailing list][mailing-list] or [IRC channel][irc-channel] are better places to -get help. - -Reporting bugs with Select2 ---------------------------- -We really appreciate clear bug reports that _consistently_ show an issue -_within Select2_. - -The ideal bug report follows these guidelines: - -1. **Use the [GitHub issue search][issue-search]** — Check if the issue - has already been reported. -2. **Check if the issue has been fixed** — Try to reproduce the problem - using the code in the `master` branch. -3. **Isolate the problem** — Try to create an - [isolated test case][isolated-case] that consistently reproduces the problem. - -Please try to be as detailed as possible in your bug report, especially if an -isolated test case cannot be made. Some useful questions to include the answer -to are: - -- What steps can be used to reproduce the issue? -- What is the bug and what is the expected outcome? -- What browser(s) and Operating System have you tested with? -- Does the bug happen consistently across all tested browsers? -- What version of jQuery are you using? And what version of Select2? -- Are you using Select2 with other plugins? - -All of these questions will help people fix and identify any potential bugs. - -Requesting features in Select2 ------------------------------- -Select2 is a large library that carries with it a lot of functionality. Because -of this, many feature requests will not be implemented in the core library. - -Before starting work on a major feature for Select2, **contact the -[community][community] first** or you may risk spending a considerable amount of -time on something which the project developers are not interested in bringing -into the project. - -### Select2 4.0 - -Many feature requests will be closed off until 4.0, where Select2 plans to adopt -a more flexible API. If you are interested in helping with the development of -the next major Select2 release, please send a message to the -[mailing list][mailing-list] or [irc channel][irc-channel] for more information. - -Triaging issues and pull requests ---------------------------------- -Anyone can help the project maintainers triage issues and review pull requests. - -### Handling new issues - -Select2 regularly receives new issues which need to be tested and organized. - -When a new issue that comes in that is similar to another existing issue, it -should be checked to make sure it is not a duplicate. Duplicates issues should -be marked by replying to the issue with "Duplicate of #[issue number]" where -`[issue number]` is the url or issue number for the existing issue. This will -allow the project maintainers to quickly close off additional issues and keep -the discussion focused within a single issue. - -If you can test issues that are reported to Select2 that contain test cases and -confirm under what conditions bugs happen, that will allow others to identify -what causes a bug quicker. - -### Reviewing pull requests - -It is very common for pull requests to be opened for issues that contain a clear -solution to the problem. These pull requests should be rigorously reviewed by -the community before being accepted. If you are not sure about a piece of -submitted code, or know of a better way to do something, do not hesitate to make -a comment on the pull request. - -It should also be made clear that **all code contributed to Select** must be -licensable under the [Apache 2 or GPL 2 licenses][licensing]. Code that cannot -be released under either of these licenses **cannot be accepted** into the -project. - -[community]: https://github.com/ivaynberg/select2#community -[reporting-bugs]: #reporting-bugs-with-select2 -[requesting-features]: #requesting-features-in-select2 -[issue-tracker]: https://github.com/ivaynberg/select2/issues -[mailing-list]: https://github.com/ivaynberg/select2#mailing-list -[irc-channel]: https://github.com/ivaynberg/select2#irc-channel -[issue-search]: https://github.com/ivaynberg/select2/search?q=&type=Issues -[isolated-case]: http://css-tricks.com/6263-reduced-test-cases/ -[licensing]: https://github.com/ivaynberg/select2#copyright-and-license diff --git a/assets/inc/select2/LICENSE b/assets/inc/select2/LICENSE deleted file mode 100644 index 0247cc7..0000000 --- a/assets/inc/select2/LICENSE +++ /dev/null @@ -1,18 +0,0 @@ -Copyright 2014 Igor Vaynberg - -Version: @@ver@@ Timestamp: @@timestamp@@ - -This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU -General Public License version 2 (the "GPL License"). You may choose either license to govern your -use of this software only upon the condition that you accept all of the terms of either the Apache -License or the GPL License. - -You may obtain a copy of the Apache License and the GPL License at: - -http://www.apache.org/licenses/LICENSE-2.0 -http://www.gnu.org/licenses/gpl-2.0.html - -Unless required by applicable law or agreed to in writing, software distributed under the Apache License -or the GPL Licesnse is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, -either express or implied. See the Apache License and the GPL License for the specific language governing -permissions and limitations under the Apache License and the GPL License. diff --git a/assets/inc/select2/README.md b/assets/inc/select2/README.md deleted file mode 100644 index 64380c4..0000000 --- a/assets/inc/select2/README.md +++ /dev/null @@ -1,114 +0,0 @@ -Select2 -======= - -Select2 is a jQuery-based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results. - -To get started, checkout examples and documentation at http://ivaynberg.github.com/select2 - -Use cases ---------- - -* Enhancing native selects with search. -* Enhancing native selects with a better multi-select interface. -* Loading data from JavaScript: easily load items via ajax and have them searchable. -* Nesting optgroups: native selects only support one level of nested. Select2 does not have this restriction. -* Tagging: ability to add new items on the fly. -* Working with large, remote datasets: ability to partially load a dataset based on the search term. -* Paging of large datasets: easy support for loading more pages when the results are scrolled to the end. -* Templating: support for custom rendering of results and selections. - -Browser compatibility ---------------------- -* IE 8+ -* Chrome 8+ -* Firefox 10+ -* Safari 3+ -* Opera 10.6+ - -Usage ------ -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. - -Integrations ------------- - -* [Wicket-Select2](https://github.com/ivaynberg/wicket-select2) (Java / [Apache Wicket](http://wicket.apache.org)) -* [select2-rails](https://github.com/argerim/select2-rails) (Ruby on Rails) -* [AngularUI](http://angular-ui.github.io/#ui-select) ([AngularJS](https://angularjs.org/)) -* [Django](https://github.com/applegrew/django-select2) -* [Symfony](https://github.com/19Gerhard85/sfSelect2WidgetsPlugin) -* [Symfony2](https://github.com/avocode/FormExtensions) -* [Bootstrap 2](https://github.com/t0m/select2-bootstrap-css) and [Bootstrap 3](https://github.com/t0m/select2-bootstrap-css/tree/bootstrap3) (CSS skins) -* [Meteor](https://github.com/nate-strauser/meteor-select2) (modern reactive JavaScript framework; + [Bootstrap 3 skin](https://github.com/esperadomedia/meteor-select2-bootstrap3-css/)) -* [Meteor](https://jquery-select2.meteor.com) -* [Yii 2.x](http://demos.krajee.com/widgets#select2) -* [Yii 1.x](https://github.com/tonybolzan/yii-select2) -* [AtmosphereJS](https://atmospherejs.com/package/jquery-select2) - -### Example Integrations - -* [Knockout.js](https://github.com/ivaynberg/select2/wiki/Knockout.js-Integration) -* [Socket.IO](https://github.com/ivaynberg/select2/wiki/Socket.IO-Integration) -* [PHP](https://github.com/ivaynberg/select2/wiki/PHP-Example) -* [.Net MVC] (https://github.com/ivaynberg/select2/wiki/.Net-MVC-Example) - -Internationalization (i18n) ---------------------------- - -Select2 supports multiple languages by simply including the right language JS -file (`select2_locale_it.js`, `select2_locale_nl.js`, etc.) after `select2.js`. - -Missing a language? Just copy `select2_locale_en.js.template`, translate -it, and make a pull request back to Select2 here on GitHub. - -Documentation -------------- - -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). - -Community ---------- - -### Bug tracker - -Have a bug? Please create an issue here on GitHub! - -https://github.com/ivaynberg/select2/issues - -### Mailing list - -Have a question? Ask on our mailing list! - -select2@googlegroups.com - -https://groups.google.com/d/forum/select2 - -### IRC channel - -Need help implementing Select2 in your project? Ask in our IRC channel! - -**Network:** [Freenode](https://freenode.net/) (`chat.freenode.net`) - -**Channel:** `#select2` - -**Web access:** https://webchat.freenode.net/?channels=select2 - -Copyright and license ---------------------- - -Copyright 2012 Igor Vaynberg - -This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU -General Public License version 2 (the "GPL License"). You may choose either license to govern your -use of this software only upon the condition that you accept all of the terms of either the Apache -License or the GPL License. - -You may obtain a copy of the Apache License and the GPL License in the LICENSE file, or at: - -http://www.apache.org/licenses/LICENSE-2.0 -http://www.gnu.org/licenses/gpl-2.0.html - -Unless required by applicable law or agreed to in writing, software distributed under the Apache License -or the GPL License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, -either express or implied. See the Apache License and the GPL License for the specific language governing -permissions and limitations under the Apache License and the GPL License. diff --git a/assets/inc/select2/bower.json b/assets/inc/select2/bower.json deleted file mode 100644 index 54d44c4..0000000 --- a/assets/inc/select2/bower.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "select2", - "version": "3.5.2", - "main": ["select2.js", "select2.css", "select2.png", "select2x2.png", "select2-spinner.gif"], - "dependencies": { - "jquery": ">= 1.7.1" - } -} diff --git a/assets/inc/select2/component.json b/assets/inc/select2/component.json deleted file mode 100644 index 8bd3c02..0000000 --- a/assets/inc/select2/component.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "name": "select2", - "repo": "ivaynberg/select2", - "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", - "version": "3.5.2", - "demo": "http://ivaynberg.github.io/select2/", - "keywords": [ - "jquery" - ], - "main": "select2.js", - "styles": [ - "select2.css", - "select2-bootstrap.css" - ], - "scripts": [ - "select2.js", - "select2_locale_ar.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_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_nl.js", - "select2_locale_no.js", - "select2_locale_pl.js", - "select2_locale_pt-BR.js", - "select2_locale_pt-PT.js", - "select2_locale_ro.js", - "select2_locale_ru.js", - "select2_locale_sk.js", - "select2_locale_sv.js", - "select2_locale_th.js", - "select2_locale_tr.js", - "select2_locale_uk.js", - "select2_locale_vi.js", - "select2_locale_zh-CN.js", - "select2_locale_zh-TW.js" - ], - "images": [ - "select2-spinner.gif", - "select2.png", - "select2x2.png" - ], - "license": "MIT" -} diff --git a/assets/inc/select2/composer.json b/assets/inc/select2/composer.json deleted file mode 100644 index cd2d26a..0000000 --- a/assets/inc/select2/composer.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": - "ivaynberg/select2", - "description": "Select2 is a jQuery based replacement for select boxes.", - "version": "3.5.2", - "type": "component", - "homepage": "http://ivaynberg.github.io/select2/", - "license": "Apache-2.0", - "require": { - "robloach/component-installer": "*", - "components/jquery": ">=1.7.1" - }, - "extra": { - "component": { - "scripts": [ - "select2.js" - ], - "files": [ - "select2.js", - "select2_locale_*.js", - "select2.css", - "select2-bootstrap.css", - "select2-spinner.gif", - "select2.png", - "select2x2.png" - ] - } - } -} diff --git a/assets/inc/select2/package.json b/assets/inc/select2/package.json deleted file mode 100644 index 709cb1c..0000000 --- a/assets/inc/select2/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name" : "Select2", - "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", - "homepage": "http://ivaynberg.github.io/select2", - "author": "Igor Vaynberg", - "repository": {"type": "git", "url": "git://github.com/ivaynberg/select2.git"}, - "main": "select2.js", - "version": "3.5.2", - "jspm": { - "main": "select2", - "files": ["select2.js", "select2.png", "select2.css", "select2-spinner.gif"], - "shim": { - "select2": { - "imports": ["jquery", "./select2.css!"], - "exports": "$" - } - }, - "buildConfig": { "uglify": true } - } -} diff --git a/assets/inc/select2/release.sh b/assets/inc/select2/release.sh deleted file mode 100644 index 3b63f96..0000000 --- a/assets/inc/select2/release.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash -set -e - -echo -n "Enter the version for this release: " - -read ver - -if [ ! $ver ]; then - echo "Invalid version." - exit -fi - -name="select2" -js="$name.js" -mini="$name.min.js" -css="$name.css" -release="$name-$ver" -tag="$ver" -branch="build-$ver" -curbranch=`git branch | grep "*" | sed "s/* //"` -timestamp=$(date) -tokens="s/@@ver@@/$ver/g;s/\@@timestamp@@/$timestamp/g" -remote="origin" - -echo "Pulling from origin" - -git pull - -echo "Updating Version Identifiers" - -sed -E -e "s/\"version\": \"([0-9\.]+)\",/\"version\": \"$ver\",/g" -i -- bower.json select2.jquery.json component.json composer.json package.json - -git add bower.json -git add select2.jquery.json -git add component.json -git add composer.json -git add package.json - -git commit -m "modified version identifiers in descriptors for release $ver" -git push - -git branch "$branch" -git checkout "$branch" - -echo "Tokenizing..." - -find . -name "$js" | xargs -I{} sed -e "$tokens" -i -- {} -find . -name "$css" | xargs -I{} sed -e "$tokens" -i -- {} - -sed -e "s/latest/$ver/g" -i -- bower.json - -git add "$js" -git add "$css" - -echo "Minifying..." - -echo "/*" > "$mini" -cat LICENSE | sed "$tokens" >> "$mini" -echo "*/" >> "$mini" - -curl -s \ - --data-urlencode "js_code@$js" \ - http://marijnhaverbeke.nl/uglifyjs \ - >> "$mini" - -git add "$mini" - -git commit -m "release $ver" - -echo "Tagging..." -git tag -a "$tag" -m "tagged version $ver" -git push "$remote" --tags - -echo "Cleaning Up..." - -git checkout "$curbranch" -git branch -D "$branch" - -echo "Done" diff --git a/assets/inc/select2/select2-bootstrap.css b/assets/inc/select2/select2-bootstrap.css deleted file mode 100644 index 3b83f0a..0000000 --- a/assets/inc/select2/select2-bootstrap.css +++ /dev/null @@ -1,87 +0,0 @@ -.form-control .select2-choice { - border: 0; - border-radius: 2px; -} - -.form-control .select2-choice .select2-arrow { - border-radius: 0 2px 2px 0; -} - -.form-control.select2-container { - height: auto !important; - padding: 0; -} - -.form-control.select2-container.select2-dropdown-open { - border-color: #5897FB; - border-radius: 3px 3px 0 0; -} - -.form-control .select2-container.select2-dropdown-open .select2-choices { - border-radius: 3px 3px 0 0; -} - -.form-control.select2-container .select2-choices { - border: 0 !important; - border-radius: 3px; -} - -.control-group.warning .select2-container .select2-choice, -.control-group.warning .select2-container .select2-choices, -.control-group.warning .select2-container-active .select2-choice, -.control-group.warning .select2-container-active .select2-choices, -.control-group.warning .select2-dropdown-open.select2-drop-above .select2-choice, -.control-group.warning .select2-dropdown-open.select2-drop-above .select2-choices, -.control-group.warning .select2-container-multi.select2-container-active .select2-choices { - border: 1px solid #C09853 !important; -} - -.control-group.warning .select2-container .select2-choice div { - border-left: 1px solid #C09853 !important; - background: #FCF8E3 !important; -} - -.control-group.error .select2-container .select2-choice, -.control-group.error .select2-container .select2-choices, -.control-group.error .select2-container-active .select2-choice, -.control-group.error .select2-container-active .select2-choices, -.control-group.error .select2-dropdown-open.select2-drop-above .select2-choice, -.control-group.error .select2-dropdown-open.select2-drop-above .select2-choices, -.control-group.error .select2-container-multi.select2-container-active .select2-choices { - border: 1px solid #B94A48 !important; -} - -.control-group.error .select2-container .select2-choice div { - border-left: 1px solid #B94A48 !important; - background: #F2DEDE !important; -} - -.control-group.info .select2-container .select2-choice, -.control-group.info .select2-container .select2-choices, -.control-group.info .select2-container-active .select2-choice, -.control-group.info .select2-container-active .select2-choices, -.control-group.info .select2-dropdown-open.select2-drop-above .select2-choice, -.control-group.info .select2-dropdown-open.select2-drop-above .select2-choices, -.control-group.info .select2-container-multi.select2-container-active .select2-choices { - border: 1px solid #3A87AD !important; -} - -.control-group.info .select2-container .select2-choice div { - border-left: 1px solid #3A87AD !important; - background: #D9EDF7 !important; -} - -.control-group.success .select2-container .select2-choice, -.control-group.success .select2-container .select2-choices, -.control-group.success .select2-container-active .select2-choice, -.control-group.success .select2-container-active .select2-choices, -.control-group.success .select2-dropdown-open.select2-drop-above .select2-choice, -.control-group.success .select2-dropdown-open.select2-drop-above .select2-choices, -.control-group.success .select2-container-multi.select2-container-active .select2-choices { - border: 1px solid #468847 !important; -} - -.control-group.success .select2-container .select2-choice div { - border-left: 1px solid #468847 !important; - background: #DFF0D8 !important; -} diff --git a/assets/inc/select2/select2.jquery.json b/assets/inc/select2/select2.jquery.json deleted file mode 100644 index b005d8a..0000000 --- a/assets/inc/select2/select2.jquery.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "select2", - "title": "Select2", - "description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.", - "keywords": [ - "select", - "autocomplete", - "typeahead", - "dropdown", - "multiselect", - "tag", - "tagging" - ], - "version": "3.5.2", - "author": { - "name": "Igor Vaynberg", - "url": "https://github.com/ivaynberg" - }, - "licenses": [ - { - "type": "Apache", - "url": "http://www.apache.org/licenses/LICENSE-2.0" - }, - { - "type": "GPL v2", - "url": "http://www.gnu.org/licenses/gpl-2.0.html" - } - ], - "bugs": "https://github.com/ivaynberg/select2/issues", - "homepage": "http://ivaynberg.github.com/select2", - "docs": "http://ivaynberg.github.com/select2/", - "download": "https://github.com/ivaynberg/select2/tags", - "dependencies": { - "jquery": ">=1.7.1" - } -} diff --git a/assets/inc/select2/select2_locale_ar.js b/assets/inc/select2/select2_locale_ar.js deleted file mode 100644 index e991b72..0000000 --- a/assets/inc/select2/select2_locale_ar.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Arabic translation. - * - * Author: Adel KEDJOUR - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ar'] = { - formatNoMatches: function () { return "لم يتم العثور على مطابقات"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; if (n == 1){ return "الرجاء إدخال حرف واحد على الأكثر"; } return n == 2 ? "الرجاء إدخال حرفين على الأكثر" : "الرجاء إدخال " + n + " على الأكثر"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; if (n == 1){ return "الرجاء إدخال حرف واحد على الأقل"; } return n == 2 ? "الرجاء إدخال حرفين على الأقل" : "الرجاء إدخال " + n + " على الأقل "; }, - formatSelectionTooBig: function (limit) { if (limit == 1){ return "يمكنك أن تختار إختيار واحد فقط"; } return limit == 2 ? "يمكنك أن تختار إختيارين فقط" : "يمكنك أن تختار " + limit + " إختيارات فقط"; }, - formatLoadMore: function (pageNumber) { return "تحميل المزيد من النتائج…"; }, - formatSearching: function () { return "البحث…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ar']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_az.js b/assets/inc/select2/select2_locale_az.js deleted file mode 100644 index 19fd95b..0000000 --- a/assets/inc/select2/select2_locale_az.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Select2 Azerbaijani translation. - * - * Author: Farhad Safarov - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['az'] = { - 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."; }, - formatNoMatches: function () { return "Nəticə tapılmadı"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return n + " simvol daxil edin"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return n + " simvol silin"; }, - formatSelectionTooBig: function (limit) { return "Sadəcə " + limit + " element seçə bilərsiniz"; }, - formatLoadMore: function (pageNumber) { return "Daha çox nəticə yüklənir…"; }, - formatSearching: function () { return "Axtarılır…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['az']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_bg.js b/assets/inc/select2/select2_locale_bg.js deleted file mode 100644 index 3283d0a..0000000 --- a/assets/inc/select2/select2_locale_bg.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Select2 Bulgarian translation. - * - * @author Lubomir Vikev - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['bg'] = { - formatNoMatches: function () { return "Няма намерени съвпадения"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Моля въведете още " + n + " символ" + (n > 1 ? "а" : ""); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Моля въведете с " + n + " по-малко символ" + (n > 1 ? "а" : ""); }, - formatSelectionTooBig: function (limit) { return "Можете да направите до " + limit + (limit > 1 ? " избора" : " избор"); }, - formatLoadMore: function (pageNumber) { return "Зареждат се още…"; }, - formatSearching: function () { return "Търсене…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['bg']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ca.js b/assets/inc/select2/select2_locale_ca.js deleted file mode 100644 index dbea39e..0000000 --- a/assets/inc/select2/select2_locale_ca.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Catalan translation. - * - * Author: David Planella - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ca'] = { - formatNoMatches: function () { return "No s'ha trobat cap coincidència"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduïu " + n + " caràcter" + (n == 1 ? "" : "s") + " més"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Introduïu " + n + " caràcter" + (n == 1? "" : "s") + "menys"; }, - formatSelectionTooBig: function (limit) { return "Només podeu seleccionar " + limit + " element" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "S'estan carregant més resultats…"; }, - formatSearching: function () { return "S'està cercant…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ca']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_cs.js b/assets/inc/select2/select2_locale_cs.js deleted file mode 100644 index ef12185..0000000 --- a/assets/inc/select2/select2_locale_cs.js +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Select2 Czech translation. - * - * Author: Michal Marek - * Author - sklonovani: David Vallner - */ -(function ($) { - "use strict"; - // use text for the numbers 2 through 4 - var smallNumbers = { - 2: function(masc) { return (masc ? "dva" : "dvě"); }, - 3: function() { return "tři"; }, - 4: function() { return "čtyři"; } - } - $.fn.select2.locales['cs'] = { - formatNoMatches: function () { return "Nenalezeny žádné položky"; }, - formatInputTooShort: function (input, min) { - var n = min - input.length; - if (n == 1) { - return "Prosím zadejte ještě jeden znak"; - } else if (n <= 4) { - return "Prosím zadejte ještě další "+smallNumbers[n](true)+" znaky"; - } else { - return "Prosím zadejte ještě dalších "+n+" znaků"; - } - }, - formatInputTooLong: function (input, max) { - var n = input.length - max; - if (n == 1) { - return "Prosím zadejte o jeden znak méně"; - } else if (n <= 4) { - return "Prosím zadejte o "+smallNumbers[n](true)+" znaky méně"; - } else { - return "Prosím zadejte o "+n+" znaků méně"; - } - }, - formatSelectionTooBig: function (limit) { - if (limit == 1) { - return "Můžete zvolit jen jednu položku"; - } else if (limit <= 4) { - return "Můžete zvolit maximálně "+smallNumbers[limit](false)+" položky"; - } else { - return "Můžete zvolit maximálně "+limit+" položek"; - } - }, - formatLoadMore: function (pageNumber) { return "Načítají se další výsledky…"; }, - formatSearching: function () { return "Vyhledávání…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['cs']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_da.js b/assets/inc/select2/select2_locale_da.js deleted file mode 100644 index 702238b..0000000 --- a/assets/inc/select2/select2_locale_da.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Danish translation. - * - * Author: Anders Jenbo - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['da'] = { - formatNoMatches: function () { return "Ingen resultater fundet"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Angiv venligst " + n + " tegn mere"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Angiv venligst " + n + " tegn mindre"; }, - formatSelectionTooBig: function (limit) { return "Du kan kun vælge " + limit + " emne" + (limit === 1 ? "" : "r"); }, - formatLoadMore: function (pageNumber) { return "Indlæser flere resultater…"; }, - formatSearching: function () { return "Søger…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['da']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_de.js b/assets/inc/select2/select2_locale_de.js deleted file mode 100644 index 49ae986..0000000 --- a/assets/inc/select2/select2_locale_de.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Select2 German translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['de'] = { - formatNoMatches: function () { return "Keine Übereinstimmungen gefunden"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Bitte " + n + " Zeichen mehr eingeben"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Bitte " + n + " Zeichen weniger eingeben"; }, - formatSelectionTooBig: function (limit) { return "Sie können nur " + limit + " Eintr" + (limit === 1 ? "ag" : "äge") + " auswählen"; }, - formatLoadMore: function (pageNumber) { return "Lade mehr Ergebnisse…"; }, - formatSearching: function () { return "Suche…"; }, - formatMatches: function (matches) { return matches + " Ergebnis " + (matches > 1 ? "se" : "") + " verfügbar, zum Navigieren die Hoch-/Runter-Pfeiltasten verwenden."; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['de']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_el.js b/assets/inc/select2/select2_locale_el.js deleted file mode 100644 index d52b9f1..0000000 --- a/assets/inc/select2/select2_locale_el.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Greek translation. - * - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['el'] = { - formatNoMatches: function () { return "Δεν βρέθηκαν αποτελέσματα"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Παρακαλούμε εισάγετε " + n + " περισσότερο" + (n > 1 ? "υς" : "") + " χαρακτήρ" + (n > 1 ? "ες" : "α"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Παρακαλούμε διαγράψτε " + n + " χαρακτήρ" + (n > 1 ? "ες" : "α"); }, - formatSelectionTooBig: function (limit) { return "Μπορείτε να επιλέξετε μόνο " + limit + " αντικείμεν" + (limit > 1 ? "α" : "ο"); }, - formatLoadMore: function (pageNumber) { return "Φόρτωση περισσότερων…"; }, - formatSearching: function () { return "Αναζήτηση…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['el']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_en.js.template b/assets/inc/select2/select2_locale_en.js.template deleted file mode 100644 index f758b11..0000000 --- a/assets/inc/select2/select2_locale_en.js.template +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Select2 translation. - * - * Author: Your Name - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['en'] = { - 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."; }, - formatNoMatches: function () { return "No matches found"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Please enter " + n + " or more character" + (n == 1 ? "" : "s"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Please delete " + n + " character" + (n == 1 ? "" : "s"); }, - formatSelectionTooBig: function (limit) { return "You can only select " + limit + " item" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Loading more results…"; }, - formatSearching: function () { return "Searching…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['en']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_es.js b/assets/inc/select2/select2_locale_es.js deleted file mode 100644 index 92a1986..0000000 --- a/assets/inc/select2/select2_locale_es.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Spanish translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['es'] = { - 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."; }, - formatNoMatches: function () { return "No se encontraron resultados"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Por favor, introduzca " + n + " car" + (n == 1? "ácter" : "acteres"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Por favor, elimine " + n + " car" + (n == 1? "ácter" : "acteres"); }, - formatSelectionTooBig: function (limit) { return "Sólo puede seleccionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Cargando más resultados…"; }, - formatSearching: function () { return "Buscando…"; }, - formatAjaxError: function() { return "La carga falló"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['es']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_et.js b/assets/inc/select2/select2_locale_et.js deleted file mode 100644 index 4d69f55..0000000 --- a/assets/inc/select2/select2_locale_et.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Estonian translation. - * - * Author: Kuldar Kalvik - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['et'] = { - formatNoMatches: function () { return "Tulemused puuduvad"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Sisesta " + n + " täht" + (n == 1 ? "" : "e") + " rohkem"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Sisesta " + n + " täht" + (n == 1? "" : "e") + " vähem"; }, - formatSelectionTooBig: function (limit) { return "Saad vaid " + limit + " tulemus" + (limit == 1 ? "e" : "t") + " valida"; }, - formatLoadMore: function (pageNumber) { return "Laen tulemusi.."; }, - formatSearching: function () { return "Otsin.."; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['et']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_eu.js b/assets/inc/select2/select2_locale_eu.js deleted file mode 100644 index 67ae8d0..0000000 --- a/assets/inc/select2/select2_locale_eu.js +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Select2 Basque translation. - * - * Author: Julen Ruiz Aizpuru - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['eu'] = { - formatNoMatches: function () { - return "Ez da bat datorrenik aurkitu"; - }, - formatInputTooShort: function (input, min) { - var n = min - input.length; - if (n === 1) { - return "Idatzi karaktere bat gehiago"; - } else { - return "Idatzi " + n + " karaktere gehiago"; - } - }, - formatInputTooLong: function (input, max) { - var n = input.length - max; - if (n === 1) { - return "Idatzi karaktere bat gutxiago"; - } else { - return "Idatzi " + n + " karaktere gutxiago"; - } - }, - formatSelectionTooBig: function (limit) { - if (limit === 1 ) { - return "Elementu bakarra hauta dezakezu"; - } else { - return limit + " elementu hauta ditzakezu soilik"; - } - }, - formatLoadMore: function (pageNumber) { - return "Emaitza gehiago kargatzen…"; - }, - formatSearching: function () { - return "Bilatzen…"; - } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['eu']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_fa.js b/assets/inc/select2/select2_locale_fa.js deleted file mode 100644 index b3ffd8b..0000000 --- a/assets/inc/select2/select2_locale_fa.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Select2 Persian translation. - * - * Author: Ali Choopan - * Author: Ebrahim Byagowi - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['fa'] = { - formatMatches: function (matches) { return matches + " نتیجه موجود است، کلیدهای جهت بالا و پایین را برای گشتن استفاده کنید."; }, - formatNoMatches: function () { return "نتیجه‌ای یافت نشد."; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "لطفاً " + n + " نویسه بیشتر وارد نمایید"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "لطفاً " + n + " نویسه را حذف کنید."; }, - formatSelectionTooBig: function (limit) { return "شما فقط می‌توانید " + limit + " مورد را انتخاب کنید"; }, - formatLoadMore: function (pageNumber) { return "در حال بارگیری موارد بیشتر…"; }, - formatSearching: function () { return "در حال جستجو…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['fa']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_fi.js b/assets/inc/select2/select2_locale_fi.js deleted file mode 100644 index 6487fbd..0000000 --- a/assets/inc/select2/select2_locale_fi.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Select2 Finnish translation - */ -(function ($) { - "use strict"; - $.fn.select2.locales['fi'] = { - formatNoMatches: function () { - return "Ei tuloksia"; - }, - formatInputTooShort: function (input, min) { - var n = min - input.length; - return "Ole hyvä ja anna " + n + " merkkiä lisää"; - }, - formatInputTooLong: function (input, max) { - var n = input.length - max; - return "Ole hyvä ja anna " + n + " merkkiä vähemmän"; - }, - formatSelectionTooBig: function (limit) { - return "Voit valita ainoastaan " + limit + " kpl"; - }, - formatLoadMore: function (pageNumber) { - return "Ladataan lisää tuloksia…"; - }, - formatSearching: function () { - return "Etsitään…"; - } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['fi']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_fr.js b/assets/inc/select2/select2_locale_fr.js deleted file mode 100644 index d5485d6..0000000 --- a/assets/inc/select2/select2_locale_fr.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Select2 French translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['fr'] = { - formatMatches: function (matches) { return matches + " résultats sont disponibles, utilisez les flèches haut et bas pour naviguer."; }, - formatNoMatches: function () { return "Aucun résultat trouvé"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Saisissez " + n + " caractère" + (n == 1? "" : "s") + " supplémentaire" + (n == 1? "" : "s") ; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Supprimez " + n + " caractère" + (n == 1? "" : "s"); }, - formatSelectionTooBig: function (limit) { return "Vous pouvez seulement sélectionner " + limit + " élément" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Chargement de résultats supplémentaires…"; }, - formatSearching: function () { return "Recherche en cours…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['fr']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_gl.js b/assets/inc/select2/select2_locale_gl.js deleted file mode 100644 index 9335167..0000000 --- a/assets/inc/select2/select2_locale_gl.js +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Select2 Galician translation - * - * Author: Leandro Regueiro - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['gl'] = { - formatNoMatches: function () { - return "Non se atoparon resultados"; - }, - formatInputTooShort: function (input, min) { - var n = min - input.length; - if (n === 1) { - return "Engada un carácter"; - } else { - return "Engada " + n + " caracteres"; - } - }, - formatInputTooLong: function (input, max) { - var n = input.length - max; - if (n === 1) { - return "Elimine un carácter"; - } else { - return "Elimine " + n + " caracteres"; - } - }, - formatSelectionTooBig: function (limit) { - if (limit === 1 ) { - return "Só pode seleccionar un elemento"; - } else { - return "Só pode seleccionar " + limit + " elementos"; - } - }, - formatLoadMore: function (pageNumber) { - return "Cargando máis resultados…"; - }, - formatSearching: function () { - return "Buscando…"; - } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['gl']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_he.js b/assets/inc/select2/select2_locale_he.js deleted file mode 100644 index 789dcdc..0000000 --- a/assets/inc/select2/select2_locale_he.js +++ /dev/null @@ -1,19 +0,0 @@ -/** -* Select2 Hebrew translation. -* -* Author: Yakir Sitbon -*/ -(function ($) { - "use strict"; - - $.fn.select2.locales['he'] = { - formatNoMatches: function () { return "לא נמצאו התאמות"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "נא להזין עוד " + n + " תווים נוספים"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "נא להזין פחות " + n + " תווים"; }, - formatSelectionTooBig: function (limit) { return "ניתן לבחור " + limit + " פריטים"; }, - formatLoadMore: function (pageNumber) { return "טוען תוצאות נוספות…"; }, - formatSearching: function () { return "מחפש…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['he']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_hr.js b/assets/inc/select2/select2_locale_hr.js deleted file mode 100644 index ce8051c..0000000 --- a/assets/inc/select2/select2_locale_hr.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Select2 Croatian translation. - * - * @author Edi Modrić - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['hr'] = { - formatNoMatches: function () { return "Nema rezultata"; }, - formatInputTooShort: function (input, min) { return "Unesite još" + character(min - input.length); }, - formatInputTooLong: function (input, max) { return "Unesite" + character(input.length - max) + " manje"; }, - formatSelectionTooBig: function (limit) { return "Maksimalan broj odabranih stavki je " + limit; }, - formatLoadMore: function (pageNumber) { return "Učitavanje rezultata…"; }, - formatSearching: function () { return "Pretraga…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['hr']); - - function character (n) { - return " " + n + " znak" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "a" : "" : "ova"); - } -})(jQuery); diff --git a/assets/inc/select2/select2_locale_hu.js b/assets/inc/select2/select2_locale_hu.js deleted file mode 100644 index f431f24..0000000 --- a/assets/inc/select2/select2_locale_hu.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Hungarian translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['hu'] = { - formatNoMatches: function () { return "Nincs találat."; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Túl rövid. Még " + n + " karakter hiányzik."; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Túl hosszú. " + n + " karakterrel több, mint kellene."; }, - formatSelectionTooBig: function (limit) { return "Csak " + limit + " elemet lehet kiválasztani."; }, - formatLoadMore: function (pageNumber) { return "Töltés…"; }, - formatSearching: function () { return "Keresés…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['hu']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_id.js b/assets/inc/select2/select2_locale_id.js deleted file mode 100644 index e9c1fd9..0000000 --- a/assets/inc/select2/select2_locale_id.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Indonesian translation. - * - * Author: Ibrahim Yusuf - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['id'] = { - formatNoMatches: function () { return "Tidak ada data yang sesuai"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Masukkan " + n + " huruf lagi" + (n == 1 ? "" : "s"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Hapus " + n + " huruf" + (n == 1 ? "" : "s"); }, - formatSelectionTooBig: function (limit) { return "Anda hanya dapat memilih " + limit + " pilihan" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Mengambil data…"; }, - formatSearching: function () { return "Mencari…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['id']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_is.js b/assets/inc/select2/select2_locale_is.js deleted file mode 100644 index 273f33d..0000000 --- a/assets/inc/select2/select2_locale_is.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Icelandic translation. - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['is'] = { - formatNoMatches: function () { return "Ekkert fannst"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Vinsamlegast skrifið " + n + " staf" + (n > 1 ? "i" : "") + " í viðbót"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Vinsamlegast styttið texta um " + n + " staf" + (n > 1 ? "i" : ""); }, - formatSelectionTooBig: function (limit) { return "Þú getur aðeins valið " + limit + " atriði"; }, - formatLoadMore: function (pageNumber) { return "Sæki fleiri niðurstöður…"; }, - formatSearching: function () { return "Leita…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['is']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_it.js b/assets/inc/select2/select2_locale_it.js deleted file mode 100644 index 7dc5194..0000000 --- a/assets/inc/select2/select2_locale_it.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Italian translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['it'] = { - formatNoMatches: function () { return "Nessuna corrispondenza trovata"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Inserisci ancora " + n + " caratter" + (n == 1? "e" : "i"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Inserisci " + n + " caratter" + (n == 1? "e" : "i") + " in meno"; }, - formatSelectionTooBig: function (limit) { return "Puoi selezionare solo " + limit + " element" + (limit == 1 ? "o" : "i"); }, - formatLoadMore: function (pageNumber) { return "Caricamento in corso…"; }, - formatSearching: function () { return "Ricerca…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['it']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ja.js b/assets/inc/select2/select2_locale_ja.js deleted file mode 100644 index 7dbd8d7..0000000 --- a/assets/inc/select2/select2_locale_ja.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Japanese translation. - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ja'] = { - formatNoMatches: function () { return "該当なし"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "後" + n + "文字入れてください"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "検索文字列が" + n + "文字長すぎます"; }, - formatSelectionTooBig: function (limit) { return "最多で" + limit + "項目までしか選択できません"; }, - formatLoadMore: function (pageNumber) { return "読込中・・・"; }, - formatSearching: function () { return "検索中・・・"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ja']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ka.js b/assets/inc/select2/select2_locale_ka.js deleted file mode 100644 index 6cbe1d8..0000000 --- a/assets/inc/select2/select2_locale_ka.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Georgian (Kartuli) translation. - * - * Author: Dimitri Kurashvili dimakura@gmail.com - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ka'] = { - formatNoMatches: function () { return "ვერ მოიძებნა"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "გთხოვთ შეიყვანოთ კიდევ " + n + " სიმბოლო"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "გთხოვთ წაშალოთ " + n + " სიმბოლო"; }, - formatSelectionTooBig: function (limit) { return "თქვენ შეგიძლიათ მხოლოდ " + limit + " ჩანაწერის მონიშვნა"; }, - formatLoadMore: function (pageNumber) { return "შედეგის ჩატვირთვა…"; }, - formatSearching: function () { return "ძებნა…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ka']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ko.js b/assets/inc/select2/select2_locale_ko.js deleted file mode 100644 index bf036e0..0000000 --- a/assets/inc/select2/select2_locale_ko.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Korean translation. - * - * @author Swen Mun - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ko'] = { - formatNoMatches: function () { return "결과 없음"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "너무 짧습니다. "+n+"글자 더 입력해주세요."; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "너무 깁니다. "+n+"글자 지워주세요."; }, - formatSelectionTooBig: function (limit) { return "최대 "+limit+"개까지만 선택하실 수 있습니다."; }, - formatLoadMore: function (pageNumber) { return "불러오는 중…"; }, - formatSearching: function () { return "검색 중…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ko']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_lt.js b/assets/inc/select2/select2_locale_lt.js deleted file mode 100644 index 7d7040f..0000000 --- a/assets/inc/select2/select2_locale_lt.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Select2 Lithuanian translation. - * - * @author CRONUS Karmalakas - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['lt'] = { - formatNoMatches: function () { return "Atitikmenų nerasta"; }, - formatInputTooShort: function (input, min) { return "Įrašykite dar" + character(min - input.length); }, - formatInputTooLong: function (input, max) { return "Pašalinkite" + character(input.length - max); }, - formatSelectionTooBig: function (limit) { - return "Jūs galite pasirinkti tik " + limit + " element" + ((limit%100 > 9 && limit%100 < 21) || limit%10 == 0 ? "ų" : limit%10 > 1 ? "us" : "ą"); - }, - formatLoadMore: function (pageNumber) { return "Kraunama daugiau rezultatų…"; }, - formatSearching: function () { return "Ieškoma…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['lt']); - - function character (n) { - return " " + n + " simbol" + ((n%100 > 9 && n%100 < 21) || n%10 == 0 ? "ių" : n%10 > 1 ? "ius" : "į"); - } -})(jQuery); diff --git a/assets/inc/select2/select2_locale_lv.js b/assets/inc/select2/select2_locale_lv.js deleted file mode 100644 index 4afc5b4..0000000 --- a/assets/inc/select2/select2_locale_lv.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Latvian translation. - * - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['lv'] = { - formatNoMatches: function () { return "Sakritību nav"; }, - 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"); }, - 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"; }, - formatSelectionTooBig: function (limit) { return "Jūs varat izvēlēties ne vairāk kā " + limit + " element" + (limit == 11 ? "us" : limit%10 == 1 ? "u" : "us"); }, - formatLoadMore: function (pageNumber) { return "Datu ielāde…"; }, - formatSearching: function () { return "Meklēšana…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['lv']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_mk.js b/assets/inc/select2/select2_locale_mk.js deleted file mode 100644 index 5eaef8b..0000000 --- a/assets/inc/select2/select2_locale_mk.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Macedonian translation. - * - * Author: Marko Aleksic - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['mk'] = { - formatNoMatches: function () { return "Нема пронајдено совпаѓања"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Ве молиме внесете уште " + n + " карактер" + (n == 1 ? "" : "и"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Ве молиме внесете " + n + " помалку карактер" + (n == 1? "" : "и"); }, - formatSelectionTooBig: function (limit) { return "Можете да изберете само " + limit + " ставк" + (limit == 1 ? "а" : "и"); }, - formatLoadMore: function (pageNumber) { return "Вчитување резултати…"; }, - formatSearching: function () { return "Пребарување…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['mk']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ms.js b/assets/inc/select2/select2_locale_ms.js deleted file mode 100644 index 46588d6..0000000 --- a/assets/inc/select2/select2_locale_ms.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Malay translation. - * - * Author: Kepoweran - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ms'] = { - formatNoMatches: function () { return "Tiada padanan yang ditemui"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Sila masukkan " + n + " aksara lagi"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Sila hapuskan " + n + " aksara"; }, - formatSelectionTooBig: function (limit) { return "Anda hanya boleh memilih " + limit + " pilihan"; }, - formatLoadMore: function (pageNumber) { return "Sedang memuatkan keputusan…"; }, - formatSearching: function () { return "Mencari…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ms']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_nb.js b/assets/inc/select2/select2_locale_nb.js deleted file mode 100644 index cb5dfae..0000000 --- a/assets/inc/select2/select2_locale_nb.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Select2 Norwegian Bokmål translation. - * - * Author: Torgeir Veimo - * Author: Bjørn Johansen - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['nb'] = { - 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."; }, - formatNoMatches: function () { return "Ingen treff"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Vennligst skriv inn " + n + (n>1 ? " flere tegn" : " tegn til"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Vennligst fjern " + n + " tegn"; }, - formatSelectionTooBig: function (limit) { return "Du kan velge maks " + limit + " elementer"; }, - formatLoadMore: function (pageNumber) { return "Laster flere resultater …"; }, - formatSearching: function () { return "Søker …"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['no']); -})(jQuery); - diff --git a/assets/inc/select2/select2_locale_nl.js b/assets/inc/select2/select2_locale_nl.js deleted file mode 100644 index 985741e..0000000 --- a/assets/inc/select2/select2_locale_nl.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Dutch translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['nl'] = { - formatNoMatches: function () { return "Geen resultaten gevonden"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Vul nog " + n + " karakter" + (n == 1? "" : "s") + " in"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Haal " + n + " karakter" + (n == 1? "" : "s") + " weg"; }, - formatSelectionTooBig: function (limit) { return "Maximaal " + limit + " item" + (limit == 1 ? "" : "s") + " toegestaan"; }, - formatLoadMore: function (pageNumber) { return "Meer resultaten laden…"; }, - formatSearching: function () { return "Zoeken…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['nl']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_pl.js b/assets/inc/select2/select2_locale_pl.js deleted file mode 100644 index 87c2619..0000000 --- a/assets/inc/select2/select2_locale_pl.js +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Select2 Polish translation. - * - * @author Jan Kondratowicz - * @author Uriy Efremochkin - * @author Michał Połtyn - * @author Damian Zajkowski - */ -(function($) { - "use strict"; - - $.fn.select2.locales['pl'] = { - formatNoMatches: function() { - return "Brak wyników"; - }, - formatInputTooShort: function(input, min) { - return "Wpisz co najmniej" + character(min - input.length, "znak", "i"); - }, - formatInputTooLong: function(input, max) { - return "Wpisana fraza jest za długa o" + character(input.length - max, "znak", "i"); - }, - formatSelectionTooBig: function(limit) { - return "Możesz zaznaczyć najwyżej" + character(limit, "element", "y"); - }, - formatLoadMore: function(pageNumber) { - return "Ładowanie wyników…"; - }, - formatSearching: function() { - return "Szukanie…"; - } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['pl']); - - function character(n, word, pluralSuffix) { - //Liczba pojedyncza - brak suffiksu - //jeden znak - //jeden element - var suffix = ''; - if (n > 1 && n < 5) { - //Liczaba mnoga ilość od 2 do 4 - własny suffiks - //Dwa znaki, trzy znaki, cztery znaki. - //Dwa elementy, trzy elementy, cztery elementy - suffix = pluralSuffix; - } else if (n == 0 || n >= 5) { - //Ilość 0 suffiks ów - //Liczaba mnoga w ilości 5 i więcej - suffiks ów (nie poprawny dla wszystkich wyrazów, np. 100 wiadomości) - //Zero znaków, Pięć znaków, sześć znaków, siedem znaków, osiem znaków. - //Zero elementów Pięć elementów, sześć elementów, siedem elementów, osiem elementów. - suffix = 'ów'; - } - return " " + n + " " + word + suffix; - } -})(jQuery); diff --git a/assets/inc/select2/select2_locale_pt-BR.js b/assets/inc/select2/select2_locale_pt-BR.js deleted file mode 100644 index 51b037d..0000000 --- a/assets/inc/select2/select2_locale_pt-BR.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Select2 Brazilian Portuguese translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['pt-BR'] = { - formatNoMatches: function () { return "Nenhum resultado encontrado"; }, - formatAjaxError: function () { return "Erro na busca"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Digite " + (min == 1 ? "" : "mais") + " " + n + " caracter" + (n == 1? "" : "es"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " caracter" + (n == 1? "" : "es"); }, - formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Carregando mais resultados…"; }, - formatSearching: function () { return "Buscando…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['pt-BR']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_pt-PT.js b/assets/inc/select2/select2_locale_pt-PT.js deleted file mode 100644 index ae55a4f..0000000 --- a/assets/inc/select2/select2_locale_pt-PT.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Portuguese (Portugal) translation - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['pt-PT'] = { - formatNoMatches: function () { return "Nenhum resultado encontrado"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduza " + n + " car" + (n == 1 ? "ácter" : "acteres"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " car" + (n == 1 ? "ácter" : "acteres"); }, - formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "A carregar mais resultados…"; }, - formatSearching: function () { return "A pesquisar…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['pt-PT']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ro.js b/assets/inc/select2/select2_locale_ro.js deleted file mode 100644 index 21b0cf1..0000000 --- a/assets/inc/select2/select2_locale_ro.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Select2 Romanian translation. - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ro'] = { - formatNoMatches: function () { return "Nu a fost găsit nimic"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Vă rugăm să introduceți incă " + n + " caracter" + (n == 1 ? "" : "e"); }, - 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"); }, - formatSelectionTooBig: function (limit) { return "Aveți voie să selectați cel mult " + limit + " element" + (limit == 1 ? "" : "e"); }, - formatLoadMore: function (pageNumber) { return "Se încarcă…"; }, - formatSearching: function () { return "Căutare…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ro']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_rs.js b/assets/inc/select2/select2_locale_rs.js deleted file mode 100644 index 72c1638..0000000 --- a/assets/inc/select2/select2_locale_rs.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Serbian translation. - * - * @author Limon Monte - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['rs'] = { - formatNoMatches: function () { return "Ništa nije pronađeno"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Ukucajte bar još " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Obrišite " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); }, - 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")); }, - formatLoadMore: function (pageNumber) { return "Preuzimanje još rezultata…"; }, - formatSearching: function () { return "Pretraga…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['rs']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ru.js b/assets/inc/select2/select2_locale_ru.js deleted file mode 100644 index 2a6c770..0000000 --- a/assets/inc/select2/select2_locale_ru.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Select2 Russian translation. - * - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['ru'] = { - formatNoMatches: function () { return "Совпадений не найдено"; }, - formatInputTooShort: function (input, min) { return "Пожалуйста, введите еще хотя бы" + character(min - input.length); }, - formatInputTooLong: function (input, max) { return "Пожалуйста, введите на" + character(input.length - max) + " меньше"; }, - formatSelectionTooBig: function (limit) { return "Вы можете выбрать не более " + limit + " элемент" + (limit%10 == 1 && limit%100 != 11 ? "а" : "ов"); }, - formatLoadMore: function (pageNumber) { return "Загрузка данных…"; }, - formatSearching: function () { return "Поиск…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ru']); - - function character (n) { - return " " + n + " символ" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 20) ? n%10 > 1 ? "a" : "" : "ов"); - } -})(jQuery); diff --git a/assets/inc/select2/select2_locale_sk.js b/assets/inc/select2/select2_locale_sk.js deleted file mode 100644 index 027530c..0000000 --- a/assets/inc/select2/select2_locale_sk.js +++ /dev/null @@ -1,50 +0,0 @@ -/** - * Select2 Slovak translation. - * - * Author: David Vallner - */ -(function ($) { - "use strict"; - // use text for the numbers 2 through 4 - var smallNumbers = { - 2: function(masc) { return (masc ? "dva" : "dve"); }, - 3: function() { return "tri"; }, - 4: function() { return "štyri"; } - }; - $.fn.select2.locales['sk'] = { - formatNoMatches: function () { return "Nenašli sa žiadne položky"; }, - formatInputTooShort: function (input, min) { - var n = min - input.length; - if (n == 1) { - return "Prosím, zadajte ešte jeden znak"; - } else if (n <= 4) { - return "Prosím, zadajte ešte ďalšie "+smallNumbers[n](true)+" znaky"; - } else { - return "Prosím, zadajte ešte ďalších "+n+" znakov"; - } - }, - formatInputTooLong: function (input, max) { - var n = input.length - max; - if (n == 1) { - return "Prosím, zadajte o jeden znak menej"; - } else if (n >= 2 && n <= 4) { - return "Prosím, zadajte o "+smallNumbers[n](true)+" znaky menej"; - } else { - return "Prosím, zadajte o "+n+" znakov menej"; - } - }, - formatSelectionTooBig: function (limit) { - if (limit == 1) { - return "Môžete zvoliť len jednu položku"; - } else if (limit >= 2 && limit <= 4) { - return "Môžete zvoliť najviac "+smallNumbers[limit](false)+" položky"; - } else { - return "Môžete zvoliť najviac "+limit+" položiek"; - } - }, - formatLoadMore: function (pageNumber) { return "Načítavajú sa ďalšie výsledky…"; }, - formatSearching: function () { return "Vyhľadávanie…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['sk']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_sv.js b/assets/inc/select2/select2_locale_sv.js deleted file mode 100644 index 96f8c0a..0000000 --- a/assets/inc/select2/select2_locale_sv.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Swedish translation. - * - * Author: Jens Rantil - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['sv'] = { - formatNoMatches: function () { return "Inga träffar"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "Var god skriv in " + n + (n>1 ? " till tecken" : " tecken till"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Var god sudda ut " + n + " tecken"; }, - formatSelectionTooBig: function (limit) { return "Du kan max välja " + limit + " element"; }, - formatLoadMore: function (pageNumber) { return "Laddar fler resultat…"; }, - formatSearching: function () { return "Söker…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['sv']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_th.js b/assets/inc/select2/select2_locale_th.js deleted file mode 100644 index 7f3e6ef..0000000 --- a/assets/inc/select2/select2_locale_th.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Thai translation. - * - * Author: Atsawin Chaowanakritsanakul - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['th'] = { - formatNoMatches: function () { return "ไม่พบข้อมูล"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "โปรดพิมพ์เพิ่มอีก " + n + " ตัวอักษร"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "โปรดลบออก " + n + " ตัวอักษร"; }, - formatSelectionTooBig: function (limit) { return "คุณสามารถเลือกได้ไม่เกิน " + limit + " รายการ"; }, - formatLoadMore: function (pageNumber) { return "กำลังค้นข้อมูลเพิ่ม…"; }, - formatSearching: function () { return "กำลังค้นข้อมูล…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['th']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_tr.js b/assets/inc/select2/select2_locale_tr.js deleted file mode 100644 index 1dda95c..0000000 --- a/assets/inc/select2/select2_locale_tr.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Select2 Turkish translation. - * - * Author: Salim KAYABAŞI - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['tr'] = { - formatNoMatches: function () { return "Sonuç bulunamadı"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "En az " + n + " karakter daha girmelisiniz"; }, - formatInputTooLong: function (input, max) { var n = input.length - max; return n + " karakter azaltmalısınız"; }, - formatSelectionTooBig: function (limit) { return "Sadece " + limit + " seçim yapabilirsiniz"; }, - formatLoadMore: function (pageNumber) { return "Daha fazla…"; }, - formatSearching: function () { return "Aranıyor…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['tr']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_ug-CN.js b/assets/inc/select2/select2_locale_ug-CN.js deleted file mode 100644 index 579588a..0000000 --- a/assets/inc/select2/select2_locale_ug-CN.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Select2 Uyghur translation - */ -(function ($) { - "use strict"; - $.fn.select2.locales['ug-CN'] = { - formatNoMatches: function () { return "ماس كېلىدىغان ئۇچۇر تېپىلمىدى"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "يەنە " + n + " ھەرپ كىرگۈزۈڭ";}, - formatInputTooLong: function (input, max) { var n = input.length - max; return "" + n + "ھەرپ ئۆچۈرۈڭ";}, - formatSelectionTooBig: function (limit) { return "ئەڭ كۆپ بولغاندا" + limit + " تال ئۇچۇر تاللىيالايسىز"; }, - formatLoadMore: function (pageNumber) { return "ئۇچۇرلار ئوقۇلىۋاتىدۇ…"; }, - formatSearching: function () { return "ئىزدەۋاتىدۇ…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['ug-CN']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_uk.js b/assets/inc/select2/select2_locale_uk.js deleted file mode 100644 index b5bd0e0..0000000 --- a/assets/inc/select2/select2_locale_uk.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Select2 Ukrainian translation. - * - * @author bigmihail - * @author Uriy Efremochkin - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['uk'] = { - formatMatches: function (matches) { return character(matches, "результат") + " знайдено, використовуйте клавіші зі стрілками вверх та вниз для навігації."; }, - formatNoMatches: function () { return "Нічого не знайдено"; }, - formatInputTooShort: function (input, min) { return "Введіть буль ласка ще " + character(min - input.length, "символ"); }, - formatInputTooLong: function (input, max) { return "Введіть буль ласка на " + character(input.length - max, "символ") + " менше"; }, - formatSelectionTooBig: function (limit) { return "Ви можете вибрати лише " + character(limit, "елемент"); }, - formatLoadMore: function (pageNumber) { return "Завантаження даних…"; }, - formatSearching: function () { return "Пошук…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['uk']); - - function character (n, word) { - return n + " " + word + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "и" : "" : "ів"); - } -})(jQuery); diff --git a/assets/inc/select2/select2_locale_vi.js b/assets/inc/select2/select2_locale_vi.js deleted file mode 100644 index cc67065..0000000 --- a/assets/inc/select2/select2_locale_vi.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Select2 Vietnamese translation. - * - * Author: Long Nguyen - */ -(function ($) { - "use strict"; - - $.fn.select2.locales['vi'] = { - formatNoMatches: function () { return "Không tìm thấy kết quả"; }, - 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"); }, - formatInputTooLong: function (input, max) { var n = input.length - max; return "Vui lòng nhập ít hơn " + n + " ký tự" + (n == 1? "" : "s"); }, - formatSelectionTooBig: function (limit) { return "Chỉ có thể chọn được " + limit + " tùy chọn" + (limit == 1 ? "" : "s"); }, - formatLoadMore: function (pageNumber) { return "Đang lấy thêm kết quả…"; }, - formatSearching: function () { return "Đang tìm…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['vi']); -})(jQuery); - diff --git a/assets/inc/select2/select2_locale_zh-CN.js b/assets/inc/select2/select2_locale_zh-CN.js deleted file mode 100644 index e988dac..0000000 --- a/assets/inc/select2/select2_locale_zh-CN.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Select2 Chinese translation - */ -(function ($) { - "use strict"; - $.fn.select2.locales['zh-CN'] = { - formatNoMatches: function () { return "没有找到匹配项"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "请再输入" + n + "个字符";}, - formatInputTooLong: function (input, max) { var n = input.length - max; return "请删掉" + n + "个字符";}, - formatSelectionTooBig: function (limit) { return "你只能选择最多" + limit + "项"; }, - formatLoadMore: function (pageNumber) { return "加载结果中…"; }, - formatSearching: function () { return "搜索中…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-CN']); -})(jQuery); diff --git a/assets/inc/select2/select2_locale_zh-TW.js b/assets/inc/select2/select2_locale_zh-TW.js deleted file mode 100644 index 85dbd5a..0000000 --- a/assets/inc/select2/select2_locale_zh-TW.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Select2 Traditional Chinese translation - */ -(function ($) { - "use strict"; - $.fn.select2.locales['zh-TW'] = { - formatNoMatches: function () { return "沒有找到相符的項目"; }, - formatInputTooShort: function (input, min) { var n = min - input.length; return "請再輸入" + n + "個字元";}, - formatInputTooLong: function (input, max) { var n = input.length - max; return "請刪掉" + n + "個字元";}, - formatSelectionTooBig: function (limit) { return "你只能選擇最多" + limit + "項"; }, - formatLoadMore: function (pageNumber) { return "載入中…"; }, - formatSearching: function () { return "搜尋中…"; } - }; - - $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-TW']); -})(jQuery); diff --git a/assets/inc/timepicker/jquery-ui-timepicker-addon.css b/assets/inc/timepicker/jquery-ui-timepicker-addon.css new file mode 100644 index 0000000..02f77ba --- /dev/null +++ b/assets/inc/timepicker/jquery-ui-timepicker-addon.css @@ -0,0 +1,30 @@ +.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; } +.ui-timepicker-div dl { text-align: left; } +.ui-timepicker-div dl dt { float: left; clear:left; padding: 0 0 0 5px; } +.ui-timepicker-div dl dd { margin: 0 10px 10px 40%; } +.ui-timepicker-div td { font-size: 90%; } +.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; } +.ui-timepicker-div .ui_tpicker_unit_hide{ display: none; } + +.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input { background: none; color: inherit; border: none; outline: none; border-bottom: solid 1px #555; width: 95%; } +.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input:focus { border-bottom-color: #aaa; } + +.ui-timepicker-rtl{ direction: rtl; } +.ui-timepicker-rtl dl { text-align: right; padding: 0 5px 0 0; } +.ui-timepicker-rtl dl dt{ float: right; clear: right; } +.ui-timepicker-rtl dl dd { margin: 0 40% 10px 10px; } + +/* Shortened version style */ +.ui-timepicker-div.ui-timepicker-oneLine { padding-right: 2px; } +.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time, +.ui-timepicker-div.ui-timepicker-oneLine dt { display: none; } +.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label { display: block; padding-top: 2px; } +.ui-timepicker-div.ui-timepicker-oneLine dl { text-align: right; } +.ui-timepicker-div.ui-timepicker-oneLine dl dd, +.ui-timepicker-div.ui-timepicker-oneLine dl dd > div { display:inline-block; margin:0; } +.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_minute:before, +.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_second:before { content:':'; display:inline-block; } +.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_millisec:before, +.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_microsec:before { content:'.'; display:inline-block; } +.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide, +.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide:before{ display: none; } diff --git a/assets/inc/timepicker/jquery-ui-timepicker-addon.js b/assets/inc/timepicker/jquery-ui-timepicker-addon.js new file mode 100644 index 0000000..d37bc02 --- /dev/null +++ b/assets/inc/timepicker/jquery-ui-timepicker-addon.js @@ -0,0 +1,2291 @@ +/*! jQuery Timepicker Addon - v1.6.3 - 2016-04-20 +* http://trentrichardson.com/examples/timepicker +* Copyright (c) 2016 Trent Richardson; Licensed MIT */ +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery', 'jquery-ui'], factory); + } else { + factory(jQuery); + } +}(function ($) { + + /* + * Lets not redefine timepicker, Prevent "Uncaught RangeError: Maximum call stack size exceeded" + */ + $.ui.timepicker = $.ui.timepicker || {}; + if ($.ui.timepicker.version) { + return; + } + + /* + * Extend jQueryUI, get it started with our version number + */ + $.extend($.ui, { + timepicker: { + version: "1.6.3" + } + }); + + /* + * Timepicker manager. + * Use the singleton instance of this class, $.timepicker, to interact with the time picker. + * Settings for (groups of) time pickers are maintained in an instance object, + * allowing multiple different settings on the same page. + */ + var Timepicker = function () { + this.regional = []; // Available regional settings, indexed by language code + this.regional[''] = { // Default regional settings + currentText: 'Now', + closeText: 'Done', + amNames: ['AM', 'A'], + pmNames: ['PM', 'P'], + timeFormat: 'HH:mm', + timeSuffix: '', + timeOnlyTitle: 'Choose Time', + timeText: 'Time', + hourText: 'Hour', + minuteText: 'Minute', + secondText: 'Second', + millisecText: 'Millisecond', + microsecText: 'Microsecond', + timezoneText: 'Time Zone', + isRTL: false + }; + this._defaults = { // Global defaults for all the datetime picker instances + showButtonPanel: true, + timeOnly: false, + timeOnlyShowDate: false, + showHour: null, + showMinute: null, + showSecond: null, + showMillisec: null, + showMicrosec: null, + showTimezone: null, + showTime: true, + stepHour: 1, + stepMinute: 1, + stepSecond: 1, + stepMillisec: 1, + stepMicrosec: 1, + hour: 0, + minute: 0, + second: 0, + millisec: 0, + microsec: 0, + timezone: null, + hourMin: 0, + minuteMin: 0, + secondMin: 0, + millisecMin: 0, + microsecMin: 0, + hourMax: 23, + minuteMax: 59, + secondMax: 59, + millisecMax: 999, + microsecMax: 999, + minDateTime: null, + maxDateTime: null, + maxTime: null, + minTime: null, + onSelect: null, + hourGrid: 0, + minuteGrid: 0, + secondGrid: 0, + millisecGrid: 0, + microsecGrid: 0, + alwaysSetTime: true, + separator: ' ', + altFieldTimeOnly: true, + altTimeFormat: null, + altSeparator: null, + altTimeSuffix: null, + altRedirectFocus: true, + pickerTimeFormat: null, + pickerTimeSuffix: null, + showTimepicker: true, + timezoneList: null, + addSliderAccess: false, + sliderAccessArgs: null, + controlType: 'slider', + oneLine: false, + defaultValue: null, + parse: 'strict', + afterInject: null + }; + $.extend(this._defaults, this.regional['']); + }; + + $.extend(Timepicker.prototype, { + $input: null, + $altInput: null, + $timeObj: null, + inst: null, + hour_slider: null, + minute_slider: null, + second_slider: null, + millisec_slider: null, + microsec_slider: null, + timezone_select: null, + maxTime: null, + minTime: null, + hour: 0, + minute: 0, + second: 0, + millisec: 0, + microsec: 0, + timezone: null, + hourMinOriginal: null, + minuteMinOriginal: null, + secondMinOriginal: null, + millisecMinOriginal: null, + microsecMinOriginal: null, + hourMaxOriginal: null, + minuteMaxOriginal: null, + secondMaxOriginal: null, + millisecMaxOriginal: null, + microsecMaxOriginal: null, + ampm: '', + formattedDate: '', + formattedTime: '', + formattedDateTime: '', + timezoneList: null, + units: ['hour', 'minute', 'second', 'millisec', 'microsec'], + support: {}, + control: null, + + /* + * Override the default settings for all instances of the time picker. + * @param {Object} settings object - the new settings to use as defaults (anonymous object) + * @return {Object} the manager object + */ + setDefaults: function (settings) { + extendRemove(this._defaults, settings || {}); + return this; + }, + + /* + * Create a new Timepicker instance + */ + _newInst: function ($input, opts) { + var tp_inst = new Timepicker(), + inlineSettings = {}, + fns = {}, + overrides, i; + + for (var attrName in this._defaults) { + if (this._defaults.hasOwnProperty(attrName)) { + var attrValue = $input.attr('time:' + attrName); + if (attrValue) { + try { + inlineSettings[attrName] = eval(attrValue); + } catch (err) { + inlineSettings[attrName] = attrValue; + } + } + } + } + + overrides = { + beforeShow: function (input, dp_inst) { + if ($.isFunction(tp_inst._defaults.evnts.beforeShow)) { + return tp_inst._defaults.evnts.beforeShow.call($input[0], input, dp_inst, tp_inst); + } + }, + onChangeMonthYear: function (year, month, dp_inst) { + // Update the time as well : this prevents the time from disappearing from the $input field. + // tp_inst._updateDateTime(dp_inst); + if ($.isFunction(tp_inst._defaults.evnts.onChangeMonthYear)) { + tp_inst._defaults.evnts.onChangeMonthYear.call($input[0], year, month, dp_inst, tp_inst); + } + }, + onClose: function (dateText, dp_inst) { + if (tp_inst.timeDefined === true && $input.val() !== '') { + tp_inst._updateDateTime(dp_inst); + } + if ($.isFunction(tp_inst._defaults.evnts.onClose)) { + tp_inst._defaults.evnts.onClose.call($input[0], dateText, dp_inst, tp_inst); + } + } + }; + for (i in overrides) { + if (overrides.hasOwnProperty(i)) { + fns[i] = opts[i] || this._defaults[i] || null; + } + } + + tp_inst._defaults = $.extend({}, this._defaults, inlineSettings, opts, overrides, { + evnts: fns, + timepicker: tp_inst // add timepicker as a property of datepicker: $.datepicker._get(dp_inst, 'timepicker'); + }); + tp_inst.amNames = $.map(tp_inst._defaults.amNames, function (val) { + return val.toUpperCase(); + }); + tp_inst.pmNames = $.map(tp_inst._defaults.pmNames, function (val) { + return val.toUpperCase(); + }); + + // detect which units are supported + tp_inst.support = detectSupport( + tp_inst._defaults.timeFormat + + (tp_inst._defaults.pickerTimeFormat ? tp_inst._defaults.pickerTimeFormat : '') + + (tp_inst._defaults.altTimeFormat ? tp_inst._defaults.altTimeFormat : '')); + + // controlType is string - key to our this._controls + if (typeof(tp_inst._defaults.controlType) === 'string') { + if (tp_inst._defaults.controlType === 'slider' && typeof($.ui.slider) === 'undefined') { + tp_inst._defaults.controlType = 'select'; + } + tp_inst.control = tp_inst._controls[tp_inst._defaults.controlType]; + } + // controlType is an object and must implement create, options, value methods + else { + tp_inst.control = tp_inst._defaults.controlType; + } + + // prep the timezone options + var timezoneList = [-720, -660, -600, -570, -540, -480, -420, -360, -300, -270, -240, -210, -180, -120, -60, + 0, 60, 120, 180, 210, 240, 270, 300, 330, 345, 360, 390, 420, 480, 525, 540, 570, 600, 630, 660, 690, 720, 765, 780, 840]; + if (tp_inst._defaults.timezoneList !== null) { + timezoneList = tp_inst._defaults.timezoneList; + } + var tzl = timezoneList.length, tzi = 0, tzv = null; + if (tzl > 0 && typeof timezoneList[0] !== 'object') { + for (; tzi < tzl; tzi++) { + tzv = timezoneList[tzi]; + timezoneList[tzi] = { value: tzv, label: $.timepicker.timezoneOffsetString(tzv, tp_inst.support.iso8601) }; + } + } + tp_inst._defaults.timezoneList = timezoneList; + + // set the default units + tp_inst.timezone = tp_inst._defaults.timezone !== null ? $.timepicker.timezoneOffsetNumber(tp_inst._defaults.timezone) : + ((new Date()).getTimezoneOffset() * -1); + tp_inst.hour = tp_inst._defaults.hour < tp_inst._defaults.hourMin ? tp_inst._defaults.hourMin : + tp_inst._defaults.hour > tp_inst._defaults.hourMax ? tp_inst._defaults.hourMax : tp_inst._defaults.hour; + tp_inst.minute = tp_inst._defaults.minute < tp_inst._defaults.minuteMin ? tp_inst._defaults.minuteMin : + tp_inst._defaults.minute > tp_inst._defaults.minuteMax ? tp_inst._defaults.minuteMax : tp_inst._defaults.minute; + tp_inst.second = tp_inst._defaults.second < tp_inst._defaults.secondMin ? tp_inst._defaults.secondMin : + tp_inst._defaults.second > tp_inst._defaults.secondMax ? tp_inst._defaults.secondMax : tp_inst._defaults.second; + tp_inst.millisec = tp_inst._defaults.millisec < tp_inst._defaults.millisecMin ? tp_inst._defaults.millisecMin : + tp_inst._defaults.millisec > tp_inst._defaults.millisecMax ? tp_inst._defaults.millisecMax : tp_inst._defaults.millisec; + tp_inst.microsec = tp_inst._defaults.microsec < tp_inst._defaults.microsecMin ? tp_inst._defaults.microsecMin : + tp_inst._defaults.microsec > tp_inst._defaults.microsecMax ? tp_inst._defaults.microsecMax : tp_inst._defaults.microsec; + tp_inst.ampm = ''; + tp_inst.$input = $input; + + if (tp_inst._defaults.altField) { + tp_inst.$altInput = $(tp_inst._defaults.altField); + if (tp_inst._defaults.altRedirectFocus === true) { + tp_inst.$altInput.css({ + cursor: 'pointer' + }).focus(function () { + $input.trigger("focus"); + }); + } + } + + if (tp_inst._defaults.minDate === 0 || tp_inst._defaults.minDateTime === 0) { + tp_inst._defaults.minDate = new Date(); + } + if (tp_inst._defaults.maxDate === 0 || tp_inst._defaults.maxDateTime === 0) { + tp_inst._defaults.maxDate = new Date(); + } + + // datepicker needs minDate/maxDate, timepicker needs minDateTime/maxDateTime.. + if (tp_inst._defaults.minDate !== undefined && tp_inst._defaults.minDate instanceof Date) { + tp_inst._defaults.minDateTime = new Date(tp_inst._defaults.minDate.getTime()); + } + if (tp_inst._defaults.minDateTime !== undefined && tp_inst._defaults.minDateTime instanceof Date) { + tp_inst._defaults.minDate = new Date(tp_inst._defaults.minDateTime.getTime()); + } + if (tp_inst._defaults.maxDate !== undefined && tp_inst._defaults.maxDate instanceof Date) { + tp_inst._defaults.maxDateTime = new Date(tp_inst._defaults.maxDate.getTime()); + } + if (tp_inst._defaults.maxDateTime !== undefined && tp_inst._defaults.maxDateTime instanceof Date) { + tp_inst._defaults.maxDate = new Date(tp_inst._defaults.maxDateTime.getTime()); + } + tp_inst.$input.bind('focus', function () { + tp_inst._onFocus(); + }); + + return tp_inst; + }, + + /* + * add our sliders to the calendar + */ + _addTimePicker: function (dp_inst) { + var currDT = $.trim((this.$altInput && this._defaults.altFieldTimeOnly) ? this.$input.val() + ' ' + this.$altInput.val() : this.$input.val()); + + this.timeDefined = this._parseTime(currDT); + this._limitMinMaxDateTime(dp_inst, false); + this._injectTimePicker(); + this._afterInject(); + }, + + /* + * parse the time string from input value or _setTime + */ + _parseTime: function (timeString, withDate) { + if (!this.inst) { + this.inst = $.datepicker._getInst(this.$input[0]); + } + + if (withDate || !this._defaults.timeOnly) { + var dp_dateFormat = $.datepicker._get(this.inst, 'dateFormat'); + try { + var parseRes = parseDateTimeInternal(dp_dateFormat, this._defaults.timeFormat, timeString, $.datepicker._getFormatConfig(this.inst), this._defaults); + if (!parseRes.timeObj) { + return false; + } + $.extend(this, parseRes.timeObj); + } catch (err) { + $.timepicker.log("Error parsing the date/time string: " + err + + "\ndate/time string = " + timeString + + "\ntimeFormat = " + this._defaults.timeFormat + + "\ndateFormat = " + dp_dateFormat); + return false; + } + return true; + } else { + var timeObj = $.datepicker.parseTime(this._defaults.timeFormat, timeString, this._defaults); + if (!timeObj) { + return false; + } + $.extend(this, timeObj); + return true; + } + }, + + /* + * Handle callback option after injecting timepicker + */ + _afterInject: function() { + var o = this.inst.settings; + if ($.isFunction(o.afterInject)) { + o.afterInject.call(this); + } + }, + + /* + * generate and inject html for timepicker into ui datepicker + */ + _injectTimePicker: function () { + var $dp = this.inst.dpDiv, + o = this.inst.settings, + tp_inst = this, + litem = '', + uitem = '', + show = null, + max = {}, + gridSize = {}, + size = null, + i = 0, + l = 0; + + // Prevent displaying twice + if ($dp.find("div.ui-timepicker-div").length === 0 && o.showTimepicker) { + var noDisplay = ' ui_tpicker_unit_hide', + html = '
' + '
' + o.timeText + '
' + + '
'; + + // Create the markup + for (i = 0, l = this.units.length; i < l; i++) { + litem = this.units[i]; + uitem = litem.substr(0, 1).toUpperCase() + litem.substr(1); + show = o['show' + uitem] !== null ? o['show' + uitem] : this.support[litem]; + + // Added by Peter Medeiros: + // - Figure out what the hour/minute/second max should be based on the step values. + // - Example: if stepMinute is 15, then minMax is 45. + max[litem] = parseInt((o[litem + 'Max'] - ((o[litem + 'Max'] - o[litem + 'Min']) % o['step' + uitem])), 10); + gridSize[litem] = 0; + + html += '
' + o[litem + 'Text'] + '
' + + '
'; + + if (show && o[litem + 'Grid'] > 0) { + html += '
'; + + if (litem === 'hour') { + for (var h = o[litem + 'Min']; h <= max[litem]; h += parseInt(o[litem + 'Grid'], 10)) { + gridSize[litem]++; + var tmph = $.datepicker.formatTime(this.support.ampm ? 'hht' : 'HH', {hour: h}, o); + html += ''; + } + } + else { + for (var m = o[litem + 'Min']; m <= max[litem]; m += parseInt(o[litem + 'Grid'], 10)) { + gridSize[litem]++; + html += ''; + } + } + + html += '
' + tmph + '' + ((m < 10) ? '0' : '') + m + '
'; + } + html += '
'; + } + + // Timezone + var showTz = o.showTimezone !== null ? o.showTimezone : this.support.timezone; + html += '
' + o.timezoneText + '
'; + html += '
'; + + // Create the elements from string + html += '
'; + var $tp = $(html); + + // if we only want time picker... + if (o.timeOnly === true) { + $tp.prepend('
' + '
' + o.timeOnlyTitle + '
' + '
'); + $dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide(); + } + + // add sliders, adjust grids, add events + for (i = 0, l = tp_inst.units.length; i < l; i++) { + litem = tp_inst.units[i]; + uitem = litem.substr(0, 1).toUpperCase() + litem.substr(1); + show = o['show' + uitem] !== null ? o['show' + uitem] : this.support[litem]; + + // add the slider + tp_inst[litem + '_slider'] = tp_inst.control.create(tp_inst, $tp.find('.ui_tpicker_' + litem + '_slider'), litem, tp_inst[litem], o[litem + 'Min'], max[litem], o['step' + uitem]); + + // adjust the grid and add click event + if (show && o[litem + 'Grid'] > 0) { + size = 100 * gridSize[litem] * o[litem + 'Grid'] / (max[litem] - o[litem + 'Min']); + $tp.find('.ui_tpicker_' + litem + ' table').css({ + width: size + "%", + marginLeft: o.isRTL ? '0' : ((size / (-2 * gridSize[litem])) + "%"), + marginRight: o.isRTL ? ((size / (-2 * gridSize[litem])) + "%") : '0', + borderCollapse: 'collapse' + }).find("td").click(function (e) { + var $t = $(this), + h = $t.html(), + n = parseInt(h.replace(/[^0-9]/g), 10), + ap = h.replace(/[^apm]/ig), + f = $t.data('for'); // loses scope, so we use data-for + + if (f === 'hour') { + if (ap.indexOf('p') !== -1 && n < 12) { + n += 12; + } + else { + if (ap.indexOf('a') !== -1 && n === 12) { + n = 0; + } + } + } + + tp_inst.control.value(tp_inst, tp_inst[f + '_slider'], litem, n); + + tp_inst._onTimeChange(); + tp_inst._onSelectHandler(); + }).css({ + cursor: 'pointer', + width: (100 / gridSize[litem]) + '%', + textAlign: 'center', + overflow: 'hidden' + }); + } // end if grid > 0 + } // end for loop + + // Add timezone options + this.timezone_select = $tp.find('.ui_tpicker_timezone').append('').find("select"); + $.fn.append.apply(this.timezone_select, + $.map(o.timezoneList, function (val, idx) { + return $("