diff --git a/admin/auth.php b/admin/auth.php index 934acd371ef..43109017fb8 100644 --- a/admin/auth.php +++ b/admin/auth.php @@ -10,6 +10,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); require_login(); require_capability('moodle/site:config', context_system::instance()); @@ -51,7 +52,8 @@ switch ($action) { if ($auth == $CFG->registerauth) { set_config('registerauth', ''); } - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. + plugin_manager::reset_caches(); break; case 'enable': @@ -61,7 +63,8 @@ switch ($action) { $authsenabled = array_unique($authsenabled); set_config('auth', implode(',', $authsenabled)); } - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. + plugin_manager::reset_caches(); break; case 'down': diff --git a/admin/block.php b/admin/block.php deleted file mode 100644 index 59938ec1fef..00000000000 --- a/admin/block.php +++ /dev/null @@ -1,76 +0,0 @@ -libdir.'/adminlib.php'); - - $blockid = required_param('block', PARAM_INT); - - if(!$blockrecord = blocks_get_record($blockid)) { - print_error('blockdoesnotexist', 'error'); - } - - admin_externalpage_setup('blocksetting'.$blockrecord->name); - - $block = block_instance($blockrecord->name); - if($block === false) { - print_error('blockcannotinistantiate', 'error'); - } - - // Define the data we're going to silently include in the instance config form here, - // so we can strip them from the submitted data BEFORE handling it. - $hiddendata = array( - 'block' => $blockid, - 'sesskey' => sesskey() - ); - - /// If data submitted, then process and store. - - if ($config = data_submitted()) { - - if (!confirm_sesskey()) { - print_error('confirmsesskeybad', 'error'); - } - if(!$block->has_config()) { - print_error('blockcannotconfig', 'error'); - } - $remove = array_keys($hiddendata); - foreach($remove as $item) { - unset($config->$item); - } - $block->config_save($config); - redirect("$CFG->wwwroot/$CFG->admin/blocks.php", get_string("changessaved"), 1); - exit; - } - - /// Otherwise print the form. - - $strmanageblocks = get_string('manageblocks'); - $strblockname = $block->get_title(); - - echo $OUTPUT->header(); - - echo $OUTPUT->heading($strblockname); - - echo $OUTPUT->notification('This block still uses an old-style config_global.html file. ' . - 'It must be updated by a developer to use a settings.php file.'); - - echo $OUTPUT->box(get_string('configwarning', 'admin'), 'generalbox boxwidthnormal boxaligncenter'); - echo '
'; - - echo '
'; - echo '

'; - foreach($hiddendata as $name => $val) { - echo ''; - } - echo '

'; - - echo $OUTPUT->box_start(); - include($CFG->dirroot.'/blocks/'. $block->name() .'/config_global.html'); - echo $OUTPUT->box_end(); - - echo '
'; - echo $OUTPUT->footer(); - - diff --git a/admin/blocks.php b/admin/blocks.php index 6a2d31efd6e..1e37dd26d73 100644 --- a/admin/blocks.php +++ b/admin/blocks.php @@ -5,6 +5,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); + require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('manageblocks'); @@ -29,9 +30,6 @@ $strprotect = get_string('blockprotect', 'admin'); $strunprotect = get_string('blockunprotect', 'admin'); - // Purge all caches related to blocks administration. - cache::make('core', 'plugininfo_block')->purge(); - /// If data submitted, then process and store. if (!empty($hide) && confirm_sesskey()) { @@ -39,6 +37,7 @@ print_error('blockdoesnotexist', 'error'); } $DB->set_field('block', 'visible', '0', array('id'=>$block->id)); // Hide block + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -47,6 +46,7 @@ print_error('blockdoesnotexist', 'error'); } $DB->set_field('block', 'visible', '1', array('id'=>$block->id)); // Show block + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -120,12 +120,13 @@ foreach ($blocknames as $blockid=>$strblockname) { $block = $blocks[$blockid]; $blockname = $block->name; + $dbversion = get_config('block_'.$block->name, 'version'); if (!file_exists("$CFG->dirroot/blocks/$blockname/block_$blockname.php")) { $blockobject = false; $strblockname = ''.$strblockname.' ('.get_string('missingfromdisk').')'; $plugin = new stdClass(); - $plugin->version = $block->version; + $plugin->version = $dbversion; } else { $plugin = new stdClass(); @@ -186,10 +187,10 @@ $class = ' class="dimmed_text"'; // Leading space required! } - if ($block->version == $plugin->version) { - $version = $block->version; + if ($dbversion == $plugin->version) { + $version = $dbversion; } else { - $version = "$block->version ($plugin->version)"; + $version = "$dbversion ($plugin->version)"; } if (!$blockobject) { diff --git a/admin/cli/install.php b/admin/cli/install.php index fcd25b248fa..0a5ce9be3f5 100644 --- a/admin/cli/install.php +++ b/admin/cli/install.php @@ -151,6 +151,7 @@ if (version_compare(phpversion(), "5.3.3") < 0) { } // set up configuration +global $CFG; $CFG = new stdClass(); $CFG->lang = 'en'; $CFG->dirroot = dirname(dirname(dirname(__FILE__))); @@ -189,9 +190,37 @@ require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/componentlib.class.php'); require_once($CFG->dirroot.'/cache/lib.php'); +// Register our classloader, in theory somebody might want to replace it to load other hacked core classes. +// Required because the database checks below lead to session interaction which is going to lead us to requiring autoloaded classes. +if (defined('COMPONENT_CLASSLOADER')) { + spl_autoload_register(COMPONENT_CLASSLOADER); +} else { + spl_autoload_register('core_component::classloader'); +} + require($CFG->dirroot.'/version.php'); $CFG->target_release = $release; +$_SESSION = array(); +$_SESSION['SESSION'] = new stdClass(); +$_SESSION['SESSION']->lang = $CFG->lang; +$_SESSION['USER'] = new stdClass(); +$_SESSION['USER']->id = 0; +$_SESSION['USER']->mnethostid = 1; + +global $SESSION; +global $USER; +$SESSION = &$_SESSION['SESSION']; +$USER = &$_SESSION['USER']; + +global $COURSE; +$COURSE = new stdClass(); +$COURSE->id = 1; + +global $SITE; +$SITE = $COURSE; +define('SITEID', 1); + //Database types $databases = array('mysqli' => moodle_database::get_driver_instance('mysqli', 'native'), 'mariadb'=> moodle_database::get_driver_instance('mariadb', 'native'), diff --git a/admin/cli/upgrade.php b/admin/cli/upgrade.php index 98e87264b0b..28d7c8d2342 100644 --- a/admin/cli/upgrade.php +++ b/admin/cli/upgrade.php @@ -172,7 +172,7 @@ set_config('branch', $branch); upgrade_noncore(true); // log in as admin - we need doanything permission when applying defaults -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // apply all default settings, just in case do it twice to fill all defaults admin_apply_default_settings(NULL, false); diff --git a/admin/courseformats.php b/admin/courseformats.php index 7ea15e86d16..f86c4becc8c 100644 --- a/admin/courseformats.php +++ b/admin/courseformats.php @@ -53,11 +53,13 @@ switch ($action) { print_error('cannotdisableformat', 'error', $return); } set_config('disabled', 1, 'format_'. $formatname); + plugin_manager::reset_caches(); } break; case 'enable': if (!$formatplugins[$formatname]->is_enabled()) { unset_config('disabled', 'format_'. $formatname); + plugin_manager::reset_caches(); } break; case 'up': diff --git a/admin/cron.php b/admin/cron.php index e4115458c76..ed19d46360e 100644 --- a/admin/cron.php +++ b/admin/cron.php @@ -53,7 +53,7 @@ require_once($CFG->libdir.'/clilib.php'); require_once($CFG->libdir.'/cronlib.php'); // extra safety -session_get_instance()->write_close(); +\core\session\manager::write_close(); // check if execution allowed if (!empty($CFG->cronclionly)) { diff --git a/admin/editors.php b/admin/editors.php index da846faf2f8..50ee7a51086 100644 --- a/admin/editors.php +++ b/admin/editors.php @@ -7,6 +7,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); $action = required_param('action', PARAM_ALPHANUMEXT); $editor = required_param('editor', PARAM_PLUGIN); @@ -93,6 +94,7 @@ if (empty($active_editors)) { } set_config('texteditors', implode(',', $active_editors)); +plugin_manager::reset_caches(); if ($return) { redirect ($returnurl); diff --git a/admin/enrol.php b/admin/enrol.php index 59f77c53aee..14a7649f899 100644 --- a/admin/enrol.php +++ b/admin/enrol.php @@ -27,6 +27,7 @@ define('NO_OUTPUT_BUFFERING', true); require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir.'/pluginlib.php'); $action = required_param('action', PARAM_ALPHANUMEXT); $enrol = required_param('enrol', PARAM_PLUGIN); @@ -50,6 +51,7 @@ switch ($action) { case 'disable': unset($enabled[$enrol]); set_config('enrol_plugins_enabled', implode(',', array_keys($enabled))); + plugin_manager::reset_caches(); $syscontext->mark_dirty(); // resets all enrol caches break; @@ -60,6 +62,7 @@ switch ($action) { $enabled = array_keys($enabled); $enabled[] = $enrol; set_config('enrol_plugins_enabled', implode(',', $enabled)); + plugin_manager::reset_caches(); $syscontext->mark_dirty(); // resets all enrol caches break; diff --git a/admin/filters.php b/admin/filters.php index 6c585046ab9..05c463ab419 100644 --- a/admin/filters.php +++ b/admin/filters.php @@ -33,6 +33,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->libdir . '/adminlib.php'); + require_once($CFG->libdir . '/pluginlib.php'); $action = optional_param('action', '', PARAM_ALPHANUMEXT); $filterpath = optional_param('filterpath', '', PARAM_SAFEDIR); @@ -44,9 +45,6 @@ $returnurl = "$CFG->wwwroot/$CFG->admin/filters.php"; admin_externalpage_setup('managefilters'); - // Purge all caches related to filter administration. - cache::make('core', 'plugininfo_filter')->purge(); - $filters = filter_get_global_states(); // In case any new filters have been installed, but not put in the table yet. @@ -59,7 +57,7 @@ /// Process actions ============================================================ if ($action) { - if (!isset($filters[$filterpath]) && !isset($newfilters[$filterpath])) { + if ($action !== 'delete' and !isset($filters[$filterpath]) and !isset($newfilters[$filterpath])) { throw new moodle_exception('filternotinstalled', 'error', $returnurl, $filterpath); } @@ -97,38 +95,6 @@ filter_set_global_state($filterpath, $filters[$filterpath]->active, -1); } break; - - case 'delete': - // If not yet confirmed, display a confirmation message. - if (!optional_param('confirm', '', PARAM_BOOL)) { - $filtername = filter_get_name($filterpath); - - $title = get_string('deletefilterareyousure', 'admin', $filtername); - echo $OUTPUT->header(); - echo $OUTPUT->heading($title); - - $linkcontinue = new moodle_url($returnurl, array('action' => 'delete', 'filterpath' => $filterpath, 'confirm' => 1)); - $formcancel = new single_button(new moodle_url($returnurl), get_string('no'), 'get'); - echo $OUTPUT->confirm(get_string('deletefilterareyousuremessage', 'admin', $filtername), $linkcontinue, $formcancel); - echo $OUTPUT->footer(); - exit; - } - - // Do the deletion. - $title = get_string('deletingfilter', 'admin', $filterpath); - echo $OUTPUT->header(); - echo $OUTPUT->heading($title); - - // Delete all data for this plugin. - filter_delete_all_for_filter($filterpath); - - $a = new stdClass; - $a->filter = $filterpath; - $a->directory = "$CFG->dirroot/filter/$filterpath"; - echo $OUTPUT->box(get_string('deletefilterfiles', 'admin', $a), 'generalbox', 'notice'); - echo $OUTPUT->continue_button($returnurl); - echo $OUTPUT->footer(); - exit; } // Add any missing filters to the DB table. @@ -138,6 +104,7 @@ // Reset caches and return if ($action) { + plugin_manager::reset_caches(); reset_text_filters_cache(); redirect($returnurl); } @@ -212,6 +179,9 @@ /// Display helper functions =================================================== function filters_action_url($filterpath, $action) { + if ($action === 'delete') { + return new moodle_url('/admin/plugins.php', array('sesskey'=>sesskey(), 'uninstall'=>'filter_'.$filterpath)); + } return new moodle_url('/admin/filters.php', array('sesskey'=>sesskey(), 'filterpath'=>$filterpath, 'action'=>$action)); } diff --git a/admin/index.php b/admin/index.php index 1f186b6417a..cf2e78ae416 100644 --- a/admin/index.php +++ b/admin/index.php @@ -163,7 +163,7 @@ if (!core_tables_exist()) { $strinstallation = get_string('installation', 'install'); // remove current session content completely - session_get_instance()->terminate_current(); + \core\session\manager::terminate_current(); if (empty($agreelicense)) { $strlicense = get_string('license'); @@ -249,6 +249,13 @@ if ($CFG->version != $DB->get_field('config', 'value', array('name'=>'version')) } if (!$cache and $version > $CFG->version) { // upgrade + + // Warning about upgrading a test site. + $testsite = false; + if (defined('BEHAT_SITE_RUNNING')) { + $testsite = 'behat'; + } + // We purge all of MUC's caches here. // Caches are disabled for upgrade by CACHE_DISABLE_ALL so we must set the first arg to true. // This ensures a real config object is loaded and the stores will be purged. @@ -283,7 +290,7 @@ if (!$cache and $version > $CFG->version) { // upgrade /** @var core_admin_renderer $output */ $output = $PAGE->get_renderer('core', 'admin'); - echo $output->upgrade_confirm_page($a->newversion, $maturity); + echo $output->upgrade_confirm_page($a->newversion, $maturity, $testsite); die(); } else if (empty($confirmrelease)){ diff --git a/admin/localplugins.php b/admin/localplugins.php index be09151a5a3..8286e96fee5 100644 --- a/admin/localplugins.php +++ b/admin/localplugins.php @@ -30,6 +30,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('managelocalplugins'); diff --git a/admin/message.php b/admin/message.php index 88e8f856617..f9fee27c2f6 100644 --- a/admin/message.php +++ b/admin/message.php @@ -24,6 +24,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->dirroot . '/message/lib.php'); require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir.'/pluginlib.php'); // This is an admin page admin_externalpage_setup('managemessageoutputs'); @@ -34,8 +35,6 @@ require_capability('moodle/site:config', context_system::instance()); // Get the submitted params $disable = optional_param('disable', 0, PARAM_INT); $enable = optional_param('enable', 0, PARAM_INT); -$uninstall = optional_param('uninstall', 0, PARAM_INT); -$confirm = optional_param('confirm', false, PARAM_BOOL); $headingtitle = get_string('managemessageoutputs', 'message'); @@ -44,6 +43,7 @@ if (!empty($disable) && confirm_sesskey()) { print_error('outputdoesnotexist', 'message'); } $DB->set_field('message_processors', 'enabled', '0', array('id'=>$processor->id)); // Disable output + plugin_manager::reset_caches(); } if (!empty($enable) && confirm_sesskey()) { @@ -51,33 +51,10 @@ if (!empty($enable) && confirm_sesskey()) { print_error('outputdoesnotexist', 'message'); } $DB->set_field('message_processors', 'enabled', '1', array('id'=>$processor->id)); // Enable output + plugin_manager::reset_caches(); } -if (!empty($uninstall) && confirm_sesskey()) { - echo $OUTPUT->header(); - echo $OUTPUT->heading($headingtitle); - - if (!$processor = $DB->get_record('message_processors', array('id'=>$uninstall))) { - print_error('outputdoesnotexist', 'message'); - } - - $processorname = get_string('pluginname', 'message_'.$processor->name); - - if (!$confirm) { - echo $OUTPUT->confirm(get_string('processordeleteconfirm', 'message', $processorname), 'message.php?uninstall='.$processor->id.'&confirm=1', 'message.php'); - echo $OUTPUT->footer(); - exit; - - } else { - message_processor_uninstall($processor->name); - $a = new stdClass(); - $a->processor = $processorname; - $a->directory = $CFG->dirroot.'/message/output/'.$processor->name; - notice(get_string('processordeletefiles', 'message', $a), 'message.php'); - } -} - -if ($disable || $enable || $uninstall) { +if ($disable || $enable) { $url = new moodle_url('message.php'); redirect($url); } @@ -95,4 +72,4 @@ $messageoutputs = $renderer->manage_messageoutputs($processors); echo $OUTPUT->header(); echo $OUTPUT->heading($headingtitle); echo $messageoutputs; -echo $OUTPUT->footer(); \ No newline at end of file +echo $OUTPUT->footer(); diff --git a/admin/modules.php b/admin/modules.php index c8f69d45f37..a964c73dfe4 100644 --- a/admin/modules.php +++ b/admin/modules.php @@ -5,6 +5,7 @@ require_once('../course/lib.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); + require_once($CFG->libdir.'/pluginlib.php'); // defines define('MODULE_TABLE','module_administration_table'); @@ -27,9 +28,6 @@ $stractivitymodule = get_string("activitymodule"); $strshowmodulecourse = get_string('showmodulecourse'); - // Purge all caches related to activity modules administration. - cache::make('core', 'plugininfo_mod')->purge(); - /// If data submitted, then process and store. if (!empty($hide) and confirm_sesskey()) { @@ -50,6 +48,7 @@ FROM {course_modules} WHERE visibleold=1 AND module=?)", array($module->id)); + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -66,6 +65,7 @@ FROM {course_modules} WHERE visible=1 AND module=?)", array($module->id)); + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -143,12 +143,12 @@ $visible = ""; $class = ""; } - + $version = get_config('mod_'.$module->name, 'version'); $table->add_data(array( ''.$strmodulename.'', $countlink, - ''.$module->version.'', + ''.$version.'', $visible, $uninstall, $settings diff --git a/admin/plagiarism.php b/admin/plagiarism.php index ace710fd7bd..d5fc85ae125 100644 --- a/admin/plagiarism.php +++ b/admin/plagiarism.php @@ -29,6 +29,8 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); + admin_externalpage_setup('manageplagiarismplugins'); diff --git a/admin/portfolio.php b/admin/portfolio.php index f5940536139..3b460fdce2e 100644 --- a/admin/portfolio.php +++ b/admin/portfolio.php @@ -4,6 +4,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir . '/portfoliolib.php'); require_once($CFG->libdir . '/portfolio/forms.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); $portfolio = optional_param('pf', '', PARAM_ALPHANUMEXT); $action = optional_param('action', '', PARAM_ALPHA); @@ -43,9 +44,6 @@ $configstr = get_string('manageportfolios', 'portfolio'); $return = true; // direct back to the main page -// Purge all caches related to portfolio administration. -cache::make('core', 'plugininfo_portfolio')->purge(); - /** * Helper function that generates a moodle_url object * relevant to the portfolio @@ -91,6 +89,7 @@ if (($action == 'edit') || ($action == 'new')) { } else { portfolio_static_function($plugin, 'create_instance', $plugin, $fromform->name, $fromform); } + plugin_manager::reset_caches(); $savedstr = get_string('instancesaved', 'portfolio'); redirect($baseurl, $savedstr, 1); exit; @@ -119,6 +118,7 @@ if (($action == 'edit') || ($action == 'new')) { $instance->set('visible', $visible); $instance->save(); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'delete') { $instance = portfolio_instance($portfolio); diff --git a/admin/qbehaviours.php b/admin/qbehaviours.php index 85f0c8ef905..8e98af4237e 100644 --- a/admin/qbehaviours.php +++ b/admin/qbehaviours.php @@ -92,6 +92,7 @@ if (($disable = optional_param('disable', '', PARAM_PLUGIN)) && confirm_sesskey( $disabledbehaviours[] = $disable; set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question'); } + plugin_manager::reset_caches(); redirect($thispageurl); } @@ -109,6 +110,7 @@ if (($enable = optional_param('enable', '', PARAM_PLUGIN)) && confirm_sesskey()) unset($disabledbehaviours[$key]); set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question'); } + plugin_manager::reset_caches(); redirect($thispageurl); } diff --git a/admin/renderer.php b/admin/renderer.php index 350254c296b..ca1a28c6778 100644 --- a/admin/renderer.php +++ b/admin/renderer.php @@ -135,9 +135,10 @@ class core_admin_renderer extends plugin_renderer_base { * during upgrade. * @param string $strnewversion * @param int $maturity + * @param string $testsite * @return string HTML to output. */ - public function upgrade_confirm_page($strnewversion, $maturity) { + public function upgrade_confirm_page($strnewversion, $maturity, $testsite) { $output = ''; $continueurl = new moodle_url('/admin/index.php', array('confirmupgrade' => 1)); @@ -146,6 +147,7 @@ class core_admin_renderer extends plugin_renderer_base { $output .= $this->header(); $output .= $this->maturity_warning($maturity); + $output .= $this->test_site_warning($testsite); $output .= $this->confirm(get_string('upgradesure', 'admin', $strnewversion), $continue, $cancelurl); $output .= $this->footer(); @@ -614,6 +616,24 @@ class core_admin_renderer extends plugin_renderer_base { 'generalbox maturitywarning'); } + /* + * If necessary, displays a warning about upgrading a test site. + * + * @param string $testsite + * @return string HTML + */ + protected function test_site_warning($testsite) { + + if (!$testsite) { + return ''; + } + + return $this->box( + $this->container(get_string('testsiteupgradewarning', 'admin', $testsite)), + 'generalbox testsitewarning' + ); + } + /** * Output the copyright notice. * @return string HTML to output. diff --git a/admin/reports.php b/admin/reports.php index 0a73d226db9..879497c5222 100644 --- a/admin/reports.php +++ b/admin/reports.php @@ -30,6 +30,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('managereports'); diff --git a/admin/repository.php b/admin/repository.php index 8f976cf3222..05fc7557893 100644 --- a/admin/repository.php +++ b/admin/repository.php @@ -17,6 +17,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->dirroot . '/repository/lib.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); $repository = optional_param('repos', '', PARAM_ALPHANUMEXT); $action = optional_param('action', '', PARAM_ALPHANUMEXT); @@ -61,9 +62,6 @@ if (!empty($action)) { require_sesskey(); } -// Purge all caches related to repositories administration. -cache::make('core', 'plugininfo_repository')->purge(); - /** * Helper function that generates a moodle_url object * relevant to the repository @@ -151,6 +149,7 @@ if (($action == 'edit') || ($action == 'new')) { } if ($success) { // configs saved + plugin_manager::reset_caches(); redirect($baseurl); } else { print_error('instancenotsaved', 'repository', $baseurl); @@ -191,6 +190,7 @@ if (($action == 'edit') || ($action == 'new')) { print_error('invalidplugin', 'repository', '', $repository); } $repositorytype->update_visibility(true); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'hide') { if (!confirm_sesskey()) { @@ -201,6 +201,7 @@ if (($action == 'edit') || ($action == 'new')) { print_error('invalidplugin', 'repository', '', $repository); } $repositorytype->update_visibility(false); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'delete') { $repositorytype = repository::get_type_by_typename($repository); @@ -211,6 +212,7 @@ if (($action == 'edit') || ($action == 'new')) { } if ($repositorytype->delete($downloadcontents)) { + plugin_manager::reset_caches(); redirect($baseurl); } else { print_error('instancenotdeleted', 'repository', $baseurl); diff --git a/admin/repositoryinstance.php b/admin/repositoryinstance.php index b5eab73ffea..3def4f3ab5d 100644 --- a/admin/repositoryinstance.php +++ b/admin/repositoryinstance.php @@ -17,6 +17,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->dirroot . '/repository/lib.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); require_sesskey(); @@ -102,6 +103,7 @@ if (!empty($edit) || !empty($new)) { $data = data_submitted(); } if ($success) { + plugin_manager::reset_caches(); redirect($parenturl); } else { print_error('instancenotsaved', 'repository', $parenturl); @@ -118,6 +120,7 @@ if (!empty($edit) || !empty($new)) { } else if (!empty($hide)) { $instance = repository::get_type_by_typename($hide); $instance->hide(); + plugin_manager::reset_caches(); $return = true; } else if (!empty($delete)) { $instance = repository::get_instance($delete); @@ -130,6 +133,7 @@ if (!empty($edit) || !empty($new)) { if ($sure) { if ($instance->delete($downloadcontents)) { $deletedstr = get_string('instancedeleted', 'repository'); + plugin_manager::reset_caches(); redirect($parenturl, $deletedstr, 3); } else { print_error('instancenotdeleted', 'repository', $parenturl); diff --git a/admin/settings/plugins.php b/admin/settings/plugins.php index 502d5e667ad..19bace3728f 100644 --- a/admin/settings/plugins.php +++ b/admin/settings/plugins.php @@ -14,6 +14,9 @@ if ($hassiteconfig) { $ADMIN->add('modules', new admin_category('modsettings', new lang_string('activitymodules'))); $ADMIN->add('modsettings', new admin_page_managemods()); foreach ($allplugins['mod'] as $module) { + if (!$module->is_updated()) { + continue; + } $module->load_settings($ADMIN, 'modsettings', $hassiteconfig); } @@ -23,6 +26,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageformats()); $ADMIN->add('formatsettings', $temp); foreach ($allplugins['format'] as $format) { + if (!$format->is_updated()) { + continue; + } $format->load_settings($ADMIN, 'formatsettings', $hassiteconfig); } @@ -30,6 +36,9 @@ if ($hassiteconfig) { $ADMIN->add('modules', new admin_category('blocksettings', new lang_string('blocks'))); $ADMIN->add('blocksettings', new admin_page_manageblocks()); foreach ($allplugins['block'] as $block) { + if (!$block->is_updated()) { + continue; + } $block->load_settings($ADMIN, 'blocksettings', $hassiteconfig); } @@ -38,6 +47,9 @@ if ($hassiteconfig) { $ADMIN->add('messageoutputs', new admin_page_managemessageoutputs()); $ADMIN->add('messageoutputs', new admin_page_defaultmessageoutputs()); foreach ($allplugins['message'] as $processor) { + if (!$processor->is_updated()) { + continue; + } $processor->load_settings($ADMIN, 'messageoutputs', $hassiteconfig); } @@ -67,6 +79,9 @@ if ($hassiteconfig) { $ADMIN->add('authsettings', $temp); foreach ($allplugins['auth'] as $auth) { + if (!$auth->is_updated()) { + continue; + } $auth->load_settings($ADMIN, 'authsettings', $hassiteconfig); } @@ -76,6 +91,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageenrols()); $ADMIN->add('enrolments', $temp); foreach($allplugins['enrol'] as $enrol) { + if (!$enrol->is_updated()) { + continue; + } $enrol->load_settings($ADMIN, 'enrolments', $hassiteconfig); } @@ -86,6 +104,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageeditors()); $ADMIN->add('editorsettings', $temp); foreach ($allplugins['editor'] as $editor) { + if (!$editor->is_updated()) { + continue; + } $editor->load_settings($ADMIN, 'editorsettings', $hassiteconfig); } @@ -148,6 +169,9 @@ if ($hassiteconfig) { $ADMIN->add('filtersettings', $temp); foreach ($allplugins['filter'] as $filter) { + if (!$filter->is_updated()) { + continue; + } $filter->load_settings($ADMIN, 'filtersettings', $hassiteconfig); } @@ -239,6 +263,9 @@ if ($hassiteconfig) { $ADMIN->add('repositorysettings', new admin_externalpage('repositoryinstanceedit', new lang_string('editrepositoryinstance', 'repository'), $url, 'moodle/site:config', true)); foreach ($allplugins['repository'] as $repositorytype) { + if (!$repositorytype->is_updated()) { + continue; + } $repositorytype->load_settings($ADMIN, 'repositorysettings', $hassiteconfig); } @@ -288,6 +315,9 @@ if ($hassiteconfig) { $ADMIN->add('webservicesettings', $temp); /// links to protocol pages foreach ($allplugins['webservice'] as $webservice) { + if (!$webservice->is_updated()) { + continue; + } $webservice->load_settings($ADMIN, 'webservicesettings', $hassiteconfig); } /// manage token page link @@ -363,6 +393,9 @@ if ($hassiteconfig || has_capability('moodle/question:config', $systemcontext)) // Settings for particular question types. foreach ($allplugins['qtype'] as $qtype) { + if (!$qtype->is_updated()) { + continue; + } $qtype->load_settings($ADMIN, 'qtypesettings', $hassiteconfig); } } @@ -374,6 +407,9 @@ if ($hassiteconfig && !empty($CFG->enableplagiarism)) { $CFG->wwwroot . '/' . $CFG->admin . '/plagiarism.php')); foreach ($allplugins['plagiarism'] as $plugin) { + if (!$plugin->is_updated()) { + continue; + } $plugin->load_settings($ADMIN, 'plagiarism', $hassiteconfig); } } diff --git a/admin/settings/server.php b/admin/settings/server.php index 3a58d34479e..ea2491a14bc 100644 --- a/admin/settings/server.php +++ b/admin/settings/server.php @@ -35,7 +35,9 @@ $ADMIN->add('server', $temp); // "sessionhandling" settingpage $temp = new admin_settingpage('sessionhandling', new lang_string('sessionhandling', 'admin')); -$temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 1)); +if (empty($CFG->session_handler_class) and $DB->session_lock_supported()) { + $temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 0)); +} $temp->add(new admin_setting_configselect('sessiontimeout', new lang_string('sessiontimeout', 'admin'), new lang_string('configsessiontimeout', 'admin'), 7200, array(14400 => new lang_string('numhours', '', 4), 10800 => new lang_string('numhours', '', 3), 7200 => new lang_string('numhours', '', 2), diff --git a/admin/settings/subsystems.php b/admin/settings/subsystems.php index 961ab764602..30299996de6 100644 --- a/admin/settings/subsystems.php +++ b/admin/settings/subsystems.php @@ -35,6 +35,14 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page $optionalsubsystems->add(new admin_setting_configcheckbox('enablecompletion', new lang_string('enablecompletion','completion'), new lang_string('configenablecompletion','completion'), 0)); + + $options = array( + 1 => get_string('completionactivitydefault', 'completion'), + 0 => get_string('completion_none', 'completion') + ); + $optionalsubsystems->add(new admin_setting_configselect('completiondefault', new lang_string('completiondefault', 'completion'), + new lang_string('configcompletiondefault', 'completion'), 1, $options)); + $optionalsubsystems->add($checkbox = new admin_setting_configcheckbox('enableavailability', new lang_string('enableavailability','condition'), new lang_string('configenableavailability','condition'), 0)); diff --git a/admin/tool/assignmentupgrade/batchupgrade.php b/admin/tool/assignmentupgrade/batchupgrade.php index bab7a943cbb..0d92dc0cb56 100644 --- a/admin/tool/assignmentupgrade/batchupgrade.php +++ b/admin/tool/assignmentupgrade/batchupgrade.php @@ -47,7 +47,7 @@ if (!$confirm) { } raise_memory_limit(MEMORY_EXTRA); // Release session. -session_get_instance()->write_close(); +\core\session\manager::write_close(); echo $renderer->header(); echo $renderer->heading(get_string('batchupgrade', 'tool_assignmentupgrade')); diff --git a/admin/tool/dbtransfer/locallib.php b/admin/tool/dbtransfer/locallib.php index 190d86fc84a..3357365165d 100644 --- a/admin/tool/dbtransfer/locallib.php +++ b/admin/tool/dbtransfer/locallib.php @@ -52,7 +52,7 @@ require_once($CFG->libdir.'/dtllib.php'); function tool_dbtransfer_export_xml_database($description, $mdb) { @set_time_limit(0); - session_get_instance()->write_close(); // Release session. + \core\session\manager::write_close(); // Release session. header('Content-Type: application/xhtml+xml; charset=utf-8'); header('Content-Disposition: attachment; filename=database.xml'); @@ -79,7 +79,7 @@ function tool_dbtransfer_export_xml_database($description, $mdb) { function tool_dbtransfer_transfer_database(moodle_database $sourcedb, moodle_database $targetdb, progress_trace $feedback = null) { @set_time_limit(0); - session_get_instance()->write_close(); // Release session. + \core\session\manager::write_close(); // Release session. $var = new database_mover($sourcedb, $targetdb, true, $feedback); $var->export_database(null); diff --git a/admin/tool/generator/classes/backend.php b/admin/tool/generator/classes/backend.php index 20b3370bd1f..da931db0f90 100644 --- a/admin/tool/generator/classes/backend.php +++ b/admin/tool/generator/classes/backend.php @@ -51,6 +51,11 @@ abstract class tool_generator_backend { */ protected $fixeddataset; + /** + * @var int|bool Maximum number of bytes for file. + */ + protected $filesizelimit; + /** * @var bool True if displaying progress */ @@ -81,10 +86,11 @@ abstract class tool_generator_backend { * * @param int $size Size as numeric index * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed * @throws coding_exception If parameters are invalid */ - public function __construct($size, $fixeddataset = false, $progress = true) { + public function __construct($size, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Check parameter. if ($size < self::MIN_SIZE || $size > self::MAX_SIZE) { @@ -94,6 +100,7 @@ abstract class tool_generator_backend { // Set parameters. $this->size = $size; $this->fixeddataset = $fixeddataset; + $this->filesizelimit = $filesizelimit; $this->progress = $progress; } diff --git a/admin/tool/generator/classes/course_backend.php b/admin/tool/generator/classes/course_backend.php index 07e1e7b1c85..7d740723cf8 100644 --- a/admin/tool/generator/classes/course_backend.php +++ b/admin/tool/generator/classes/course_backend.php @@ -100,15 +100,24 @@ class tool_generator_course_backend extends tool_generator_backend { * @param string $shortname Course shortname * @param int $size Size as numeric index * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed - * @return int Course id */ - public function __construct($shortname, $size, $fixeddataset = false, $progress = true) { + public function __construct($shortname, $size, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Set parameters. $this->shortname = $shortname; - parent::__construct($size, $fixeddataset, $progress); + parent::__construct($size, $fixeddataset, $filesizelimit, $progress); + } + + /** + * Returns the relation between users and course sizes. + * + * @return array + */ + public static function get_users_per_size() { + return self::$paramusers; } /** @@ -280,6 +289,8 @@ class tool_generator_course_backend extends tool_generator_backend { * @param int $last Number of last user */ private function create_user_accounts($first, $last) { + global $CFG; + $this->log('createaccounts', (object)array('from' => $first, 'to' => $last), true); $count = $last - $first + 1; $done = 0; @@ -294,6 +305,12 @@ class tool_generator_course_backend extends tool_generator_backend { // Create user account. $record = array('firstname' => get_string('firstname', 'tool_generator'), 'lastname' => $number, 'username' => $username); + + // We add a user password if it has been specified. + if (!empty($CFG->tool_generator_users_password)) { + $record['password'] = $CFG->tool_generator_users_password; + } + $user = $this->generator->create_user($record); $this->userids[$number] = (int)$user->id; $this->dot($done, $count); @@ -311,7 +328,7 @@ class tool_generator_course_backend extends tool_generator_backend { // Create pages. $number = self::$parampages[$this->size]; $this->log('createpages', $number, true); - for ($i=0; $i<$number; $i++) { + for ($i = 0; $i < $number; $i++) { $record = array('course' => $this->course->id); $options = array('section' => $this->get_target_section()); $pagegenerator->create_instance($record, $options); @@ -345,7 +362,7 @@ class tool_generator_course_backend extends tool_generator_backend { // Generate random binary data (different for each file so it // doesn't compress unrealistically). - $data = self::get_random_binary(self::$paramsmallfilesize[$this->size]); + $data = self::get_random_binary($this->limit_filesize(self::$paramsmallfilesize[$this->size])); $fs->create_file_from_string($filerecord, $data); $this->dot($i, $count); @@ -362,13 +379,14 @@ class tool_generator_course_backend extends tool_generator_backend { * @return Random data */ private static function get_random_binary($length) { + $data = microtime(true); if (strlen($data) > $length) { // Use last digits of data. return substr($data, -$length); } $length -= strlen($data); - for ($j=0; $j < $length; $j++) { + for ($j = 0; $j < $length; $j++) { $data .= chr(rand(1, 255)); } return $data; @@ -382,8 +400,9 @@ class tool_generator_course_backend extends tool_generator_backend { // Work out how many files and how many blocks to use (up to 64KB). $count = self::$parambigfilecount[$this->size]; - $blocks = ceil(self::$parambigfilesize[$this->size] / 65536); - $blocksize = floor(self::$parambigfilesize[$this->size] / $blocks); + $filesize = $this->limit_filesize(self::$parambigfilesize[$this->size]); + $blocks = ceil($filesize / 65536); + $blocksize = floor($filesize / $blocks); $this->log('createbigfiles', $count, true); @@ -446,13 +465,13 @@ class tool_generator_course_backend extends tool_generator_backend { // Add discussions and posts. $sofar = 0; - for ($i=0; $i < $discussions; $i++) { + for ($i = 0; $i < $discussions; $i++) { $record = array('forum' => $forum->id, 'course' => $this->course->id, 'userid' => $this->get_target_user()); $discussion = $forumgenerator->create_discussion($record); $parentid = $DB->get_field('forum_posts', 'id', array('discussion' => $discussion->id), MUST_EXIST); $sofar++; - for ($j=0; $j < $posts - 1; $j++, $sofar++) { + for ($j = 0; $j < $posts - 1; $j++, $sofar++) { $record = array('discussion' => $discussion->id, 'userid' => $this->get_target_user(), 'parent' => $parentid); $forumgenerator->create_post($record); @@ -504,4 +523,20 @@ class tool_generator_course_backend extends tool_generator_backend { return $userid; } + /** + * Restricts the binary file size if necessary + * + * @param int $length The total length + * @return int The limited length if a limit was specified. + */ + private function limit_filesize($length) { + + // Limit to $this->filesizelimit. + if (is_numeric($this->filesizelimit) && $length > $this->filesizelimit) { + $length = floor($this->filesizelimit); + } + + return $length; + } + } diff --git a/admin/tool/generator/classes/make_form.php b/admin/tool/generator/classes/make_course_form.php similarity index 78% rename from admin/tool/generator/classes/make_form.php rename to admin/tool/generator/classes/make_course_form.php index 879364d2174..5c965152501 100644 --- a/admin/tool/generator/classes/make_form.php +++ b/admin/tool/generator/classes/make_course_form.php @@ -14,6 +14,14 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . +/** + * Course form. + * + * @package tool_generator + * @copyright 2013 The Open University + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + defined('MOODLE_INTERNAL') || die(); require_once($CFG->libdir . '/formslib.php'); @@ -25,8 +33,13 @@ require_once($CFG->libdir . '/formslib.php'); * @copyright 2013 The Open University * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -class tool_generator_make_form extends moodleform { +class tool_generator_make_course_form extends moodleform { + /** + * Course generation tool form definition. + * + * @return void + */ public function definition() { $mform = $this->_form; @@ -41,6 +54,13 @@ class tool_generator_make_form extends moodleform { $mform->addElement('submit', 'submit', get_string('createcourse', 'tool_generator')); } + /** + * Form validation. + * + * @param array $data + * @param array $files + * @return void + */ public function validation($data, $files) { global $DB; $errors = array(); @@ -48,7 +68,7 @@ class tool_generator_make_form extends moodleform { // Check course doesn't already exist. if (!empty($data['shortname'])) { // Check shortname. - $error = tool_generator_course_backend::check_shortname_available($data['shortname']); + $error = tool_generator_course_backend::check_shortname_available($data['shortname']); if ($error) { $errors['shortname'] = $error; } diff --git a/admin/tool/generator/classes/make_testplan_form.php b/admin/tool/generator/classes/make_testplan_form.php new file mode 100644 index 00000000000..15552d5775a --- /dev/null +++ b/admin/tool/generator/classes/make_testplan_form.php @@ -0,0 +1,82 @@ +. + +/** + * Test plan form. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +require_once($CFG->libdir . '/formslib.php'); + +/** + * Form with options for creating large course. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_make_testplan_form extends moodleform { + + /** + * Test plan form definition. + * + * @return void + */ + public function definition() { + $mform = $this->_form; + + $mform->addElement('select', 'size', get_string('size', 'tool_generator'), + tool_generator_testplan_backend::get_size_choices()); + $mform->setDefault('size', tool_generator_testplan_backend::DEFAULT_SIZE); + + $mform->addElement('select', 'courseid', get_string('targetcourse', 'tool_generator'), + tool_generator_testplan_backend::get_course_options()); + + $mform->addElement('advcheckbox', 'updateuserspassword', get_string('updateuserspassword', 'tool_generator')); + $mform->addHelpButton('updateuserspassword', 'updateuserspassword', 'tool_generator'); + + $mform->addElement('submit', 'submit', get_string('createtestplan', 'tool_generator')); + } + + /** + * Checks that the submitted data allows us to create a test plan. + * + * @param array $data + * @param array $files + * @return array An array of errors + */ + public function validation($data, $files) { + global $CFG; + + $errors = array(); + if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { + $errors['updateuserspassword'] = get_string('error_nouserspassword', 'tool_generator'); + } + + // Better to repeat here the query than to do it afterwards and end up with an exception. + if ($courseerrors = tool_generator_testplan_backend::has_selected_course_any_problem($data['courseid'], $data['size'])) { + $errors = array_merge($errors, $courseerrors); + } + + return $errors; + } + +} diff --git a/admin/tool/generator/classes/site_backend.php b/admin/tool/generator/classes/site_backend.php index 01bde976ec5..b0f7f6851db 100644 --- a/admin/tool/generator/classes/site_backend.php +++ b/admin/tool/generator/classes/site_backend.php @@ -61,15 +61,16 @@ class tool_generator_site_backend extends tool_generator_backend { * @param int $size Size as numeric index * @param bool $bypasscheck If debugging level checking was skipped. * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed * @return int Course id */ - public function __construct($size, $bypasscheck, $fixeddataset = false, $progress = true) { + public function __construct($size, $bypasscheck, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Set parameters. $this->bypasscheck = $bypasscheck; - parent::__construct($size, $fixeddataset, $progress); + parent::__construct($size, $fixeddataset, $filesizelimit, $progress); } /** @@ -104,7 +105,7 @@ class tool_generator_site_backend extends tool_generator_backend { // Create courses. $prevchdir = getcwd(); chdir($CFG->dirroot); - $ncourse = $this->get_last_testcourse_id(); + $ncourse = self::get_last_testcourse_id(); foreach (self::$sitecourses as $coursesize => $ncourses) { for ($i = 1; $i <= $ncourses[$this->size]; $i++) { // Non language-dependant shortname. @@ -148,6 +149,10 @@ class tool_generator_site_backend extends tool_generator_backend { $options[] = '--quiet'; } + if ($this->filesizelimit) { + $options[] = '--filesizelimit="' . $this->filesizelimit . '"'; + } + // Extend options. $optionstoextend = array( 'fixeddataset' => 'fixeddataset', @@ -177,26 +182,30 @@ class tool_generator_site_backend extends tool_generator_backend { * * @return int The last generated numeric value. */ - protected function get_last_testcourse_id() { + protected static function get_last_testcourse_id() { global $DB; $params = array(); $params['shortnameprefix'] = $DB->sql_like_escape(self::SHORTNAMEPREFIX) . '%'; $like = $DB->sql_like('shortname', ':shortnameprefix'); - if (!$testcourses = $DB->get_records_select('course', $like, $params, 'shortname DESC')) { + if (!$testcourses = $DB->get_records_select('course', $like, $params, '', 'shortname')) { return 0; } + // SQL order by is not appropiate here as is ordering strings. + $shortnames = array_keys($testcourses); + core_collator::asort($shortnames, core_collator::SORT_NATURAL); + $shortnames = array_reverse($shortnames); // They come ordered by shortname DESC, so non-numeric values will be the first ones. - foreach ($testcourses as $testcourse) { - $sufix = substr($testcourse->shortname, strlen(self::SHORTNAMEPREFIX)); - if (is_numeric($sufix)) { + $prefixnchars = strlen(self::SHORTNAMEPREFIX); + foreach ($shortnames as $shortname) { + $sufix = substr($shortname, $prefixnchars); + if (preg_match('/^[\d]+$/', $sufix)) { return $sufix; } } - - // If all sufixes are not numeric this is the fist make test site run. + // If all sufixes are not numeric this is the first make test site run. return 0; } diff --git a/admin/tool/generator/classes/testplan_backend.php b/admin/tool/generator/classes/testplan_backend.php new file mode 100644 index 00000000000..6f70dad3ed9 --- /dev/null +++ b/admin/tool/generator/classes/testplan_backend.php @@ -0,0 +1,328 @@ +. + +/** + * Test plan generator. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Generates the files required by JMeter. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_testplan_backend extends tool_generator_backend { + + /** + * @var The URL to the repository of the external project. + */ + protected static $repourl = 'https://github.com/moodlehq/moodle-performance-comparison'; + + /** + * @var Number of users depending on the selected size. + */ + protected static $users = array(1, 30, 200, 1000, 5000, 10000); + + /** + * @var Number of loops depending on the selected size. + */ + protected static $loops = array(1, 1, 2, 3, 3, 5); + + /** + * @var Rampup period depending on the selected size. + */ + protected static $rampups = array(1, 6, 40, 100, 500, 800); + + /** + * Gets a list of size choices supported by this backend. + * + * @return array List of size (int) => text description for display + */ + public static function get_size_choices() { + + $options = array(); + for ($size = self::MIN_SIZE; $size <= self::MAX_SIZE; $size++) { + $a = new stdClass(); + $a->users = self::$users[$size]; + $a->loops = self::$loops[$size]; + $a->rampup = self::$rampups[$size]; + $options[$size] = get_string('testplansize_' . $size, 'tool_generator', $a); + } + return $options; + } + + /** + * Gets the list of courses that can be used used to generate a test. + * + * @return array The list of options as courseid => name + */ + public static function get_course_options() { + $courses = get_courses('all', 'c.sortorder ASC', 'c.id, c.shortname, c.fullname'); + if (!$courses) { + print_error('error_nocourses', 'tool_generator'); + } + + $options = array(); + unset($courses[1]); + foreach ($courses as $course) { + $options[$course->id] = $course->fullname . '(' . $course->shortname . ')'; + } + return $options; + } + + /** + * Getter for moodle-performance-comparison project URL. + * + * @return string + */ + public static function get_repourl() { + return self::$repourl; + } + + /** + * Creates the test plan file. + * + * @param int $courseid The target course id + * @param int $size The test plan size + * @return stored_file + */ + public static function create_testplan_file($courseid, $size) { + $jmxcontents = self::generate_test_plan($courseid, $size); + + $fs = get_file_storage(); + $filerecord = self::get_file_record('testplan', 'jmx'); + return $fs->create_file_from_string($filerecord, $jmxcontents); + } + + /** + * Creates the users data file. + * + * @param int $courseid The target course id + * @param bool $updateuserspassword Updates the course users password to $CFG->tool_generator_users_password + * @return stored_file + */ + public static function create_users_file($courseid, $updateuserspassword) { + $csvcontents = self::generate_users_file($courseid, $updateuserspassword); + + $fs = get_file_storage(); + $filerecord = self::get_file_record('users', 'csv'); + return $fs->create_file_from_string($filerecord, $csvcontents); + } + + /** + * Generates the test plan according to the target course contents. + * + * @param int $targetcourseid The target course id + * @param int $size The test plan size + * @return string The test plan as a string + */ + protected static function generate_test_plan($targetcourseid, $size) { + global $CFG; + + // Getting the template. + $template = file_get_contents(__DIR__ . '/../testplan.template.jmx'); + + // Getting the course modules data. + $coursedata = self::get_course_test_data($targetcourseid); + + // Host and path to the site. + $urlcomponents = parse_url($CFG->wwwroot); + if (empty($urlcomponents['path'])) { + $urlcomponents['path'] = ''; + } + + $replacements = array( + self::$users[$size], + self::$loops[$size], + self::$rampups[$size], + $urlcomponents['host'], + $urlcomponents['path'], + get_string('shortsize_' . $size, 'tool_generator'), + $targetcourseid, + $coursedata->pageid, + $coursedata->forumid, + $coursedata->forumdiscussionid, + $coursedata->forumreplyid + ); + + $placeholders = array( + '{{USERS_PLACEHOLDER}}', + '{{LOOPS_PLACEHOLDER}}', + '{{RAMPUP_PLACEHOLDER}}', + '{{HOST_PLACEHOLDER}}', + '{{SITEPATH_PLACEHOLDER}}', + '{{SIZE_PLACEHOLDER}}', + '{{COURSEID_PLACEHOLDER}}', + '{{PAGEACTIVITYID_PLACEHOLDER}}', + '{{FORUMACTIVITYID_PLACEHOLDER}}', + '{{FORUMDISCUSSIONID_PLACEHOLDER}}', + '{{FORUMREPLYID_PLACEHOLDER}}' + ); + + // Fill the template with the target course values. + return str_replace($placeholders, $replacements, $template); + } + + /** + * Generates the user's credentials file with all the course's users + * + * @param int $targetcourseid + * @param bool $updateuserspassword Updates the course users password to $CFG->tool_generator_users_password + * @return string The users csv file contents. + */ + protected static function generate_users_file($targetcourseid, $updateuserspassword) { + global $CFG; + + $coursecontext = context_course::instance($targetcourseid); + + $users = get_enrolled_users($coursecontext, '', 0, 'u.id, u.username, u.auth', 'u.username ASC'); + if (!$users) { + print_error('coursewithoutusers', 'tool_generator'); + } + + $lines = array(); + foreach ($users as $user) { + + // Updating password to the one set in config.php. + if ($updateuserspassword) { + $userauth = get_auth_plugin($user->auth); + if (!$userauth->user_update_password($user, $CFG->tool_generator_users_password)) { + print_error('errorpasswordupdate', 'auth'); + } + } + + // Here we already checked that $CFG->tool_generator_users_password is not null. + $lines[] = $user->username . ',' . $CFG->tool_generator_users_password; + } + + return implode(PHP_EOL, $lines); + } + + /** + * Returns a tool_generator file record + * + * @param string $filearea testplan or users + * @param string $filetype The file extension jmx or csv + * @return stdClass The file record to use when creating tool_generator files + */ + protected static function get_file_record($filearea, $filetype) { + + $systemcontext = context_system::instance(); + + $filerecord = new stdClass(); + $filerecord->contextid = $systemcontext->id; + $filerecord->component = 'tool_generator'; + $filerecord->filearea = $filearea; + $filerecord->itemid = 0; + $filerecord->filepath = '/'; + + // Random generated number to avoid concurrent execution problems. + $filerecord->filename = $filearea . '_' . date('YmdHi', time()) . '_' . rand(1000, 9999) . '.' . $filetype; + + return $filerecord; + } + + /** + * Gets the data required to fill the test plan template with the database contents. + * + * @param int $targetcourseid The target course id + * @return stdClass The ids required by the test plan + */ + protected static function get_course_test_data($targetcourseid) { + global $DB, $USER; + + $data = new stdClass(); + + // Getting course contents info as the current user (will be an admin). + $course = new stdClass(); + $course->id = $targetcourseid; + $courseinfo = new course_modinfo($course, $USER->id); + + // Getting the first page module instance. + if (!$pages = $courseinfo->get_instances_of('page')) { + print_error('error_nopageinstances', 'tool_generator'); + } + $data->pageid = reset($pages)->id; + + // Getting the first forum module instance and it's first discussion and reply as well. + if (!$forums = $courseinfo->get_instances_of('forum')) { + print_error('error_noforuminstances', 'tool_generator'); + } + $forum = reset($forums); + + // Getting the first discussion (and reply). + if (!$discussions = forum_get_discussions($forum, 'd.timemodified ASC', false, -1, 1)) { + print_error('error_noforumdiscussions', 'tool_generator'); + } + $discussion = reset($discussions); + + $data->forumid = $forum->id; + $data->forumdiscussionid = $discussion->discussion; + $data->forumreplyid = $discussion->id; + + // According to the current test plan. + return $data; + } + + /** + * Checks if the selected target course is ok. + * + * @param int|string $course + * @param int $size + * @return array Errors array or false if everything is ok + */ + public static function has_selected_course_any_problem($course, $size) { + global $DB; + + $errors = array(); + + if (!is_numeric($course)) { + if (!$course = $DB->get_field('course', 'id', array('shortname' => $course))) { + $errors['courseid'] = get_string('error_nonexistingcourse', 'tool_generator'); + return $errors; + } + } + + $coursecontext = context_course::instance($course, IGNORE_MISSING); + if (!$coursecontext) { + $errors['courseid'] = get_string('error_nonexistingcourse', 'tool_generator'); + return $errors; + } + + if (!$users = get_enrolled_users($coursecontext, '', 0, 'u.id')) { + $errors['courseid'] = get_string('coursewithoutusers', 'tool_generator'); + } + + // Checks that the selected course has enough users. + $coursesizes = tool_generator_course_backend::get_users_per_size(); + if (count($users) < $coursesizes[$size]) { + $errors['size'] = get_string('notenoughusers', 'tool_generator'); + } + + if (empty($errors)) { + return false; + } + + return $errors; + } +} diff --git a/admin/tool/generator/cli/maketestcourse.php b/admin/tool/generator/cli/maketestcourse.php index 407a58f12db..aa57828f5a5 100644 --- a/admin/tool/generator/cli/maketestcourse.php +++ b/admin/tool/generator/cli/maketestcourse.php @@ -35,6 +35,7 @@ list($options, $unrecognized) = cli_get_params( 'shortname' => false, 'size' => false, 'fixeddataset' => false, + 'filesizelimit' => false, 'bypasscheck' => false, 'quiet' => false ), @@ -52,11 +53,12 @@ Not for use on live sites; only normally works if debugging is set to DEVELOPER level. Options: ---shortname Shortname of course to create (required) ---size Size of course to create XS, S, M, L, XL, or XXL (required) ---fixeddataset Use a fixed data set instead of randomly generated data ---bypasscheck Bypasses the developer-mode check (be careful!) ---quiet Do not show any output +--shortname Shortname of course to create (required) +--size Size of course to create XS, S, M, L, XL, or XXL (required) +--fixeddataset Use a fixed data set instead of randomly generated data +--filesizelimit Limits the size of the generated files to the specified bytes +--bypasscheck Bypasses the developer-mode check (be careful!) +--quiet Do not show any output -h, --help Print out this help @@ -76,6 +78,7 @@ if (empty($options['bypasscheck']) && !debugging('', DEBUG_DEVELOPER)) { $shortname = $options['shortname']; $sizename = $options['size']; $fixeddataset = $options['fixeddataset']; +$filesizelimit = $options['filesizelimit']; // Check size. try { @@ -90,8 +93,8 @@ if ($error = tool_generator_course_backend::check_shortname_available($shortname } // Switch to admin user account. -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // Do backend code to generate course. -$backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, empty($options['quiet'])); +$backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, $filesizelimit, empty($options['quiet'])); $id = $backend->make(); diff --git a/admin/tool/generator/cli/maketestplan.php b/admin/tool/generator/cli/maketestplan.php new file mode 100644 index 00000000000..456393d81a9 --- /dev/null +++ b/admin/tool/generator/cli/maketestplan.php @@ -0,0 +1,122 @@ +. + +/** + * CLI interface for creating a test plan + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +define('CLI_SCRIPT', true); +define('NO_OUTPUT_BUFFERING', true); + +require(dirname(__FILE__) . '/../../../../config.php'); +require_once($CFG->libdir. '/clilib.php'); + +// CLI options. +list($options, $unrecognized) = cli_get_params( + array( + 'help' => false, + 'shortname' => false, + 'size' => false, + 'bypasscheck' => false, + 'updateuserspassword' => false + ), + array( + 'h' => 'help' + ) +); + +$testplansizes = '* ' . implode(PHP_EOL . '* ', tool_generator_testplan_backend::get_size_choices()); + +// Display help. +if (!empty($options['help']) || empty($options['shortname']) || empty($options['size'])) { + + echo get_string('testplanexplanation', 'tool_generator', tool_generator_testplan_backend::get_repourl()) . +"Options: +-h, --help Print out this help +--shortname Shortname of the test plan's target course (required) +--size Size of the test plan to create XS, S, M, L, XL, or XXL (required) +--bypasscheck Bypasses the developer-mode check (be careful!) +--updateuserspassword Updates the target course users password according to \$CFG->tool_generator_users_password + +$testplansizes + +Consider that, the server resources you will need to run the test plan will be higher as the test plan size is higher. + +Example from Moodle root directory: +\$ sudo -u www-data /usr/bin/php admin/tool/generator/cli/maketestplan.php --shortname=\"testcourse_12\" --size=S +"; + // Exit with error unless we're showing this because they asked for it. + exit(empty($options['help']) ? 1 : 0); +} + +// Check debugging is set to developer level. +if (empty($options['bypasscheck']) && !$CFG->debugdeveloper) { + cli_error(get_string('error_notdebugging', 'tool_generator')); +} + +// Get options. +$shortname = $options['shortname']; +$sizename = $options['size']; + +// Check size. +try { + $size = tool_generator_testplan_backend::size_for_name($sizename); +} catch (coding_exception $e) { + cli_error("Error: Invalid size ($sizename). Use --help for help."); +} + +// Check selected course. +if ($errors = tool_generator_testplan_backend::has_selected_course_any_problem($shortname, $size)) { + // Showing the first reported problem. + cli_error("Error: " . reset($errors)); +} + +// Checking if test users password is set. +if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { + cli_error("Error: " . get_string('error_nouserspassword', 'tool_generator')); +} + +// Switch to admin user account. +session_set_user(get_admin()); + +// Create files. +$courseid = $DB->get_field('course', 'id', array('shortname' => $shortname)); +$usersfile = tool_generator_testplan_backend::create_users_file($courseid, !empty($options['updateuserspassword'])); +$testplanfile = tool_generator_testplan_backend::create_testplan_file($courseid, $size); + +// One file path per line so other CLI scripts can easily parse the output. +echo moodle_url::make_pluginfile_url( + $testplanfile->get_contextid(), + $testplanfile->get_component(), + $testplanfile->get_filearea(), + $testplanfile->get_itemid(), + $testplanfile->get_filepath(), + $testplanfile->get_filename() + ) . + PHP_EOL . + moodle_url::make_pluginfile_url( + $usersfile->get_contextid(), + $usersfile->get_component(), + $usersfile->get_filearea(), + $usersfile->get_itemid(), + $usersfile->get_filepath(), + $usersfile->get_filename() + ) . + PHP_EOL; diff --git a/admin/tool/generator/cli/maketestsite.php b/admin/tool/generator/cli/maketestsite.php index bc91d7d8a9f..cd9985c58bc 100644 --- a/admin/tool/generator/cli/maketestsite.php +++ b/admin/tool/generator/cli/maketestsite.php @@ -34,6 +34,7 @@ list($options, $unrecognized) = cli_get_params( 'help' => false, 'size' => false, 'fixeddataset' => false, + 'filesizelimit' => false, 'bypasscheck' => false, 'quiet' => false ), @@ -57,10 +58,11 @@ Consider that, depending on the size you select, this CLI tool can really genera $sitesizes Options: ---size Size of the generated site, this value affects the number of courses and their size. Accepted values: XS, S, M, L, XL, or XXL (required) ---fixeddataset Use a fixed data set instead of randomly generated data ---bypasscheck Bypasses the developer-mode check (be careful!) ---quiet Do not show any output +--size Size of the generated site, this value affects the number of courses and their size. Accepted values: XS, S, M, L, XL, or XXL (required) +--fixeddataset Use a fixed data set instead of randomly generated data +--filesizelimit Limits the size of the generated files to the specified bytes +--bypasscheck Bypasses the developer-mode check (be careful!) +--quiet Do not show any output -h, --help Print out this help @@ -79,6 +81,7 @@ if (empty($options['bypasscheck']) && !$CFG->debugdeveloper) { // Get options. $sizename = $options['size']; $fixeddataset = $options['fixeddataset']; +$filesizelimit = $options['filesizelimit']; // Check size. try { @@ -88,8 +91,8 @@ try { } // Switch to admin user account. -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // Do backend code to generate site. -$backend = new tool_generator_site_backend($size, $options['bypasscheck'], $fixeddataset, empty($options['quiet'])); +$backend = new tool_generator_site_backend($size, $options['bypasscheck'], $fixeddataset, $filesizelimit, empty($options['quiet'])); $backend->make(); diff --git a/admin/tool/generator/index.php b/admin/tool/generator/index.php index 7a917e91bae..3c26f503740 100644 --- a/admin/tool/generator/index.php +++ b/admin/tool/generator/index.php @@ -15,34 +15,14 @@ // along with Moodle. If not, see . /** - * Random course generator. + * Development data generator. * - * @package tool - * @subpackage generator + * @package tool_generator * @copyright 2009 Nicolas Connault * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ - require(dirname(__FILE__) . '/../../../config.php'); -require_once('locallib.php'); - -require_login(); -$systemcontext = context_system::instance(); -require_capability('moodle/site:config', $systemcontext); -if (!is_siteadmin()) { - error('Only for admins'); -} - -if (!$CFG->debugdeveloper) { - error('This script is for developers only!!!'); -} - -$PAGE->set_url('/admin/tool/generator/index.php'); -$PAGE->set_context(context_system::instance()); -$PAGE->set_pagelayout('base'); -$generator = new generator_web(); -$generator->setup(); -$generator->display(); -$generator->generate_data(); -$generator->complete(); +// This index page was previously in use, for now we redirect to the make test +// course page - but we might reinstate this page in the future. +redirect(new moodle_url('/admin/tool/generator/maketestcourse.php')); diff --git a/admin/tool/generator/lang/en/tool_generator.php b/admin/tool/generator/lang/en/tool_generator.php index a204ce8aed7..83964c8e344 100644 --- a/admin/tool/generator/lang/en/tool_generator.php +++ b/admin/tool/generator/lang/en/tool_generator.php @@ -23,16 +23,7 @@ */ $string['bigfile'] = 'Big file {$a}'; -$string['coursesize_0'] = 'XS (~10KB; create in ~1 second)'; -$string['coursesize_1'] = 'S (~10MB; create in ~30 seconds)'; -$string['coursesize_2'] = 'M (~100MB; create in ~5 minutes)'; -$string['coursesize_3'] = 'L (~1GB; create in ~1 hour)'; -$string['coursesize_4'] = 'XL (~10GB; create in ~4 hours)'; -$string['coursesize_5'] = 'XXL (~20GB; create in ~8 hours)'; -$string['createcourse'] = 'Create course'; -$string['creating'] = 'Creating course'; -$string['done'] = 'done ({$a}s)'; -$string['explanation'] = 'This tool creates standard test courses that include many +$string['courseexplanation'] = 'This tool creates standard test courses that include many sections, activities, and files. This is intended to provide a standardised measure for checking the reliability @@ -50,16 +41,38 @@ filesystem space (tens of gigabytes). You will need to delete the courses (To avoid accidental use, this feature is disabled unless you have also selected DEVELOPER debugging level.)'; +$string['coursesize_0'] = 'XS (~10KB; create in ~1 second)'; +$string['coursesize_1'] = 'S (~10MB; create in ~30 seconds)'; +$string['coursesize_2'] = 'M (~100MB; create in ~5 minutes)'; +$string['coursesize_3'] = 'L (~1GB; create in ~1 hour)'; +$string['coursesize_4'] = 'XL (~10GB; create in ~4 hours)'; +$string['coursesize_5'] = 'XXL (~20GB; create in ~8 hours)'; +$string['coursewithoutusers'] = 'The selected course has no users'; +$string['createcourse'] = 'Create course'; +$string['createtestplan'] = 'Create test plan'; +$string['creating'] = 'Creating course'; +$string['done'] = 'done ({$a}s)'; +$string['downloadtestplan'] = 'Download test plan'; +$string['downloadusersfile'] = 'Download users file'; +$string['error_nocourses'] = 'There are no courses to generate the test plan'; +$string['error_noforumdiscussions'] = 'The selected course does not contain forum discussions'; +$string['error_noforuminstances'] = 'The selected course does not contain forum module instances'; +$string['error_noforumreplies'] = 'The selected course does not contain forum replies'; +$string['error_nonexistingcourse'] = 'The specified course does not exist'; +$string['error_nopageinstances'] = 'The selected course does not contain page module instances'; $string['error_notdebugging'] = 'Not available on this server because debugging is not set to DEVELOPER'; +$string['error_nouserspassword'] = 'You need to set $CFG->tool_generator_users_password in config.php to generate the test plan'; $string['firstname'] = 'Test course user'; $string['fullname'] = 'Test course: {$a->size}'; $string['maketestcourse'] = 'Make test course'; +$string['maketestplan'] = 'Make JMeter test plan'; +$string['notenoughusers'] = 'The selected course does not have enough users'; $string['pluginname'] = 'Development data generator'; -$string['progress_createcourse'] = 'Creating course {$a}'; $string['progress_checkaccounts'] = 'Checking user accounts ({$a})'; $string['progress_coursecompleted'] = 'Course completed ({$a}s)'; $string['progress_createaccounts'] = 'Creating user accounts ({$a->from} - {$a->to})'; $string['progress_createbigfiles'] = 'Creating big files ({$a})'; +$string['progress_createcourse'] = 'Creating course {$a}'; $string['progress_createforum'] = 'Creating forum ({$a} posts)'; $string['progress_createpages'] = 'Creating pages ({$a})'; $string['progress_createsmallfiles'] = 'Creating small files ({$a})'; @@ -79,3 +92,33 @@ $string['sitesize_4'] = 'XL (~10GB; 1065 courses, created in ~5 hours)'; $string['sitesize_5'] = 'XXL (~20GB; 4177 courses, created in ~10 hours)'; $string['size'] = 'Size of course'; $string['smallfiles'] = 'Small files'; +$string['targetcourse'] = 'Test target course'; +$string['testplanexplanation'] = 'This tool creates a JMeter test plan file along with the user credentials file. + +This test plan is designed to work along with {$a}, which makes easier to run the test plan in a specific Moodle environment, gathers information about the runs and compares the results, so you will need to download it and use it\'s test_runner.sh script or follow the installation and usage instructions. + +You need to set a password for the course users in config.php (e.g. $CFG->tool_generator_users_password = \'moodle\';). There is no default value for this password to prevent unintended usages of the tool. You need to use the update passwords option in case your course users have other passwords or they were generated by tool_generator but without setting a $CFG->tool_generator_users_password value. + +It is part of tool_generator so it works well with the courses generated by the courses and the site generators, it can +also be used with any course that contains, at least: + +* Enough enrolled users (depends on the test plan size you select) with the password reset to \'moodle\' +* A page module instance +* A forum module instance with at least one discussion and one reply + +You might want to consider your servers capacity when running large test plans as the amount to load generated by JMeter +can be specially big. The ramp up period has been adjusted according to the number of threads (users) to reduce this kind +of issues but the load is still huge. + +**Do not run the test plan on a live system**. This feature only creates the files to feed JMeter so is not dangerous by +itself, but you should **NEVER** run this test plan in a production site. + +'; +$string['testplansize_0'] = 'XS ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_1'] = 'S ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_2'] = 'M ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_3'] = 'L ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_4'] = 'XL ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_5'] = 'XXL ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['updateuserspassword'] = 'Update course users password'; +$string['updateuserspassword_help'] = 'JMeter needs to login as the course users, you can set the users password using $CFG->tool_generator_users_password in config.php; this setting updates the course user\'s password according to $CFG->tool_generator_users_password. It can be useful in case you are using a course not generated by tool_generator or $CFG->tool_generator_users_password was not set when you created the test courses.'; diff --git a/admin/tool/generator/lib.php b/admin/tool/generator/lib.php new file mode 100644 index 00000000000..18e8a0905fe --- /dev/null +++ b/admin/tool/generator/lib.php @@ -0,0 +1,59 @@ +. + +/** + * Generator tool functions. + * + * @package tool_generator + * @copyright David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Files support. + * + * Exits if the required permissions are not satisfied. + * + * @param stdClass $course course object + * @param stdClass $cm + * @param stdClass $context context object + * @param string $filearea file area + * @param array $args extra arguments + * @param bool $forcedownload whether or not force download + * @param array $options additional options affecting the file serving + * @return void The file is sent along with it's headers + */ +function tool_generator_pluginfile($course, $cm, $context, $filearea, $args, $forcedownload, array $options = array()) { + + // Only for admins or CLI. + if (!defined('CLI_SCRIPT') && !is_siteadmin()) { + die; + } + + if ($context->contextlevel != CONTEXT_SYSTEM) { + send_file_not_found(); + } + + $fs = get_file_storage(); + $file = $fs->get_file($context->id, 'tool_generator', $filearea, $args[0], '/', $args[1]); + + // Send the file, always forcing download, we don't want options. + session_get_instance()->write_close(); + send_stored_file($file, 0, 0, true); +} + diff --git a/admin/tool/generator/locallib.php b/admin/tool/generator/locallib.php deleted file mode 100644 index 117e1ace33e..00000000000 --- a/admin/tool/generator/locallib.php +++ /dev/null @@ -1,1311 +0,0 @@ -. - -/** - * Random course generator. By Nicolas Connault and friends. - * - * @package tool - * @subpackage generator - * @copyright 2009 Nicolas Connault - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -defined('MOODLE_INTERNAL') || die(); - -require_once($CFG->libdir . '/formslib.php'); -require_once($CFG->dirroot .'/course/lib.php'); -require_once($CFG->libdir .'/filelib.php'); - -define('GENERATOR_RANDOM', 0); -define('GENERATOR_SEQUENCE', 1); - -/** - * Controller class for data generation - */ -class generator { - public $modules_to_ignore = array('hotpot', 'lams', 'journal', 'scorm', 'exercise', 'dialogue'); - public $modules_list = array('forum' => 'forum', - 'assignment' => 'assignment', - 'chat' => 'chat', - 'data' => 'data', - 'glossary' => 'glossary', - 'quiz' => 'quiz', - 'comments' => 'comments', - 'feedback' => 'feedback', - 'label' => 'label', - 'lesson' => 'lesson', - 'chat' => 'chat', - 'choice' => 'choice', - 'resource' => 'resource', - 'survey' => 'survey', - 'wiki' => 'wiki', - 'workshop' => 'workshop'); - - public $resource_types = array('text', 'file', 'html', 'repository', 'directory', 'ims'); - public $glossary_formats = array('continuous', 'encyclopedia', 'entrylist', 'faq', 'fullwithauthor', 'fullwithoutauthor', 'dictionary'); - public $assignment_types = array('upload', 'uploadsingle', 'online', 'offline'); - public $forum_types = array('general'); // others include 'single', 'eachuser', 'qanda' - - public $resource_type_counter = 0; - public $assignment_type_counter = 0; - public $forum_type_counter = 0; - - public $settings = array(); - public $eolchar = '
'; - public $do_generation = false; - public $starttime; - public $original_db; - - public function __construct($settings = array(), $generate=false) { - global $CFG; - - $this->starttime = time()+microtime(); - - $arguments = array( - array('short'=>'u', 'long'=>'username', - 'help' => 'Your moodle username', 'type'=>'STRING', 'default' => ''), - array('short'=>'pw', 'long'=>'password', - 'help' => 'Your moodle password', 'type'=>'STRING', 'default' => ''), - array('short'=>'P', 'long' => 'database_prefix', - 'help' => 'Database prefix to use: tables must already exist or the script will abort!', - 'type'=>'STRING', 'default' => $CFG->prefix), - array('short'=>'c', 'long' => 'pre_cleanup', 'help' => 'Delete previously generated data'), - array('short'=>'C', 'long' => 'post_cleanup', - 'help' => 'Deletes all generated data at the end of the script (for benchmarking of generation only)'), - array('short'=>'t', 'long' => 'time_limit', - 'help' => 'Optional time limit after which to abort the generation, 0 = no limit. Default=0', - 'type'=>'SECONDS', 'default' => 0), - array('short'=>'v', 'long' => 'verbose', 'help' => 'Display extra information about the data generation'), - array('short'=>'q', 'long' => 'quiet', 'help' => 'Inhibits all outputs'), - array('short'=>'i', 'long' => 'ignore_errors', 'help' => 'Continue script execution when errors occur'), - array('short'=>'N', 'long' => 'no_data', 'help' => 'Generate nothing (used for cleaning up only)'), - array('short'=>'T', 'long' => 'tiny', - 'help' => 'Generates a tiny data set (1 of each course, module, user and section)', - 'default' => 0), - array('short'=>'nc', 'long' => 'number_of_courses', - 'help' => 'The number of courses to generate. Default=1', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'ns', 'long' => 'number_of_students', - 'help' => 'The number of students to generate. Default=250', - 'type'=>'NUMBER', 'default' => 250), - array('short'=>'sc', 'long' => 'students_per_course', - 'help' => 'The number of students to enrol in each course. Default=20', - 'type'=>'NUMBER', 'default' => 20), - array('short'=>'nsec', 'long' => 'number_of_sections', - 'help' => 'The number of sections to generate in each course. Default=10', - 'type'=>'NUMBER', 'default' => 10), - array('short'=>'nmod', 'long' => 'number_of_modules', - 'help' => 'The number of modules to generate in each section. Default=10', - 'type'=>'NUMBER', 'default' => 10), - array('short'=>'mods', 'long' => 'modules_list', - 'help' => 'The list of modules you want to generate', 'default' => $this->modules_list, - 'type' => 'mod1,mod2...'), - array('short'=>'rt', 'long' => 'resource_type', - 'help' => 'The specific type of resource you want to generate. Defaults to all', - 'default' => $this->resource_types, - 'type' => 'SELECT'), - array('short'=>'at', 'long' => 'assignment_type', - 'help' => 'The specific type of assignment you want to generate. Defaults to all', - 'default' => $this->assignment_types, - 'type' => 'SELECT'), - array('short'=>'ft', 'long' => 'forum_type', - 'help' => 'The specific type of forum you want to generate. Defaults to all', - 'default' => $this->forum_types, - 'type' => 'SELECT'), - array('short'=>'gf', 'long' => 'glossary_format', - 'help' => 'The specific format of glossary you want to generate. Defaults to all', - 'default' => $this->glossary_formats, - 'type' => 'SELECT'), - array('short'=>'ag', 'long' => 'assignment_grades', - 'help' => 'Generate random grades for each student/assignment tuple', 'default' => true), - array('short'=>'qg', 'long' => 'quiz_grades', - 'help' => 'Generate random grades for each student/quiz tuple', 'default' => true), - array('short'=>'eg', 'long' => 'entries_per_glossary', - 'help' => 'The number of definitions to generate per glossary. Default=0', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'nq', 'long' => 'questions_per_course', - 'help' => 'The number of questions to generate per course. Default=20', - 'type'=>'NUMBER', 'default' => 20), - array('short'=>'qq', 'long' => 'questions_per_quiz', - 'help' => 'The number of questions to assign to each quiz. Default=5', - 'type'=>'NUMBER', 'default' => 5), - array('short'=>'df', 'long' => 'discussions_per_forum', - 'help' => 'The number of discussions to generate for each forum. Default=5', - 'type'=>'NUMBER', 'default' => 5), - array('short'=>'pd', 'long' => 'posts_per_discussion', - 'help' => 'The number of posts to generate for each forum discussion. Default=15', - 'type'=>'NUMBER', 'default' => 15), - array('short'=>'fd', 'long' => 'fields_per_database', - 'help' => 'The number of fields to generate for each database. Default=4', - 'type'=>'NUMBER', 'default' => 4), - array('short'=>'drs', 'long' => 'database_records_per_student', - 'help' => 'The number of records to generate for each student/database tuple. Default=1', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'mc', 'long' => 'messages_per_chat', - 'help' => 'The number of messages to generate for each chat module. Default=10', - 'type'=>'NUMBER', 'default' => 10), - ); - - foreach ($arguments as $args_array) { - $this->settings[$args_array['long']] = new generator_argument($args_array); - } - - foreach ($settings as $setting => $value) { - $this->settings[$setting]->value = $value; - } - - if ($generate) { - $this->generate_data(); - } - } - - public function connect() { - global $DB, $CFG; - $this->original_db = $DB; - - $class = get_class($DB); - $DB = new $class(); - $DB->connect($CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $this->get('database_prefix')); - } - - public function dispose() { - global $DB; - $DB->dispose(); - $DB = $this->original_db; - } - - public function generate_users() { - global $DB, $CFG; - - /** - * USER GENERATION - */ - $this->verbose("Generating ".$this->get('number_of_students')." students..."); - $lastnames = array('SMITH','JOHNSON','WILLIAMS','JONES','BROWN','DAVIS','MILLER','WILSON', - 'MOORE','TAYLOR','ANDERSON','THOMAS','JACKSON','WHITE','HARRIS','MARTIN','THOMPSON', - 'GARCIA','MARTINEZ','ROBINSON','CLARK','RODRIGUEZ','LEWIS','LEE','WALKER','HALL', - 'ALLEN','YOUNG','HERNANDEZ','KING','WRIGHT','LOPEZ','HILL','SCOTT','GREEN','ADAMS', - 'BAKER','GONZALEZ','NELSON','CARTER','MITCHELL','PEREZ','ROBERTS','TURNER','PHILLIPS', - 'CAMPBELL','PARKER','EVANS','EDWARDS','COLLINS','STEWART','SANCHEZ','MORRIS','ROGERS', - 'REED','COOK','MORGAN','BELL','MURPHY','BAILEY','RIVERA','COOPER','RICHARDSON','COX', - 'HOWARD','WARD','TORRES','PETERSON','GRAY','RAMIREZ','JAMES','WATSON','BROOKS','KELLY', - 'SANDERS','PRICE','BENNETT','WOOD','BARNES','ROSS','HENDERSON','COLEMAN','JENKINS','PERRY', - 'POWELL','LONG','PATTERSON','HUGHES','FLORES','WASHINGTON','BUTLER','SIMMONS','FOSTER', - 'GONZALES','BRYANT','ALEXANDER','RUSSELL','GRIFFIN','DIAZ','HAYES','MYERS','FORD','HAMILTON', - 'GRAHAM','SULLIVAN','WALLACE','WOODS','COLE','WEST','JORDAN','OWENS','REYNOLDS','FISHER', - 'ELLIS','HARRISON','GIBSON','MCDONALD','CRUZ','MARSHALL','ORTIZ','GOMEZ','MURRAY','FREEMAN', - 'WELLS','WEBB','SIMPSON','STEVENS','TUCKER','PORTER','HUNTER','HICKS','CRAWFORD','HENRY', - 'BOYD','MASON','MORALES','KENNEDY','WARREN','DIXON','RAMOS','REYES','BURNS','GORDON','SHAW', - 'HOLMES','RICE','ROBERTSON','HUNT','BLACK','DANIELS','PALMER','MILLS','NICHOLS','GRANT', - 'KNIGHT','FERGUSON','ROSE','STONE','HAWKINS','DUNN','PERKINS','HUDSON','SPENCER','GARDNER', - 'STEPHENS','PAYNE','PIERCE','BERRY','MATTHEWS','ARNOLD','WAGNER','WILLIS','RAY','WATKINS', - 'OLSON','CARROLL','DUNCAN','SNYDER','HART','CUNNINGHAM','BRADLEY','LANE','ANDREWS','RUIZ', - 'HARPER','FOX','RILEY','ARMSTRONG','CARPENTER','WEAVER','GREENE','LAWRENCE','ELLIOTT','CHAVEZ', - 'SIMS','AUSTIN','PETERS','KELLEY','FRANKLIN','LAWSON','FIELDS','GUTIERREZ','RYAN','SCHMIDT', - 'CARR','VASQUEZ','CASTILLO','WHEELER','CHAPMAN','OLIVER','MONTGOMERY','RICHARDS','WILLIAMSON', - 'JOHNSTON','BANKS','MEYER','BISHOP','MCCOY','HOWELL','ALVAREZ','MORRISON','HANSEN','FERNANDEZ', - 'GARZA','HARVEY','LITTLE','BURTON','STANLEY','NGUYEN','GEORGE','JACOBS','REID','KIM','FULLER', - 'LYNCH','DEAN','GILBERT','GARRETT','ROMERO','WELCH','LARSON','FRAZIER','BURKE','HANSON','DAY', - 'MENDOZA','MORENO','BOWMAN','MEDINA','FOWLER'); - $firstnames = array( 'JAMES','JOHN','ROBERT','MARY','MICHAEL','WILLIAM','DAVID','RICHARD', - 'CHARLES','JOSEPH','THOMAS','PATRICIA','LINDA','CHRISTOPHER','BARBARA','DANIEL','PAUL', - 'MARK','ELIZABETH','JENNIFER','DONALD','GEORGE','MARIA','KENNETH','SUSAN','STEVEN','EDWARD', - 'MARGARET','BRIAN','DOROTHY','RONALD','ANTHONY','LISA','KEVIN','NANCY','KAREN','BETTY', - 'HELEN','JASON','MATTHEW','GARY','TIMOTHY','SANDRA','JOSE','LARRY','JEFFREY','DONNA', - 'FRANK','CAROL','RUTH','SCOTT','ERIC','STEPHEN','ANDREW','SHARON','MICHELLE','LAURA', - 'SARAH','KIMBERLY','DEBORAH','JESSICA','RAYMOND','SHIRLEY','CYNTHIA','ANGELA','MELISSA', - 'BRENDA','AMY','GREGORY','ANNA','JOSHUA','JERRY','REBECCA','VIRGINIA','KATHLEEN','PAMELA', - 'DENNIS','MARTHA','DEBRA','AMANDA','STEPHANIE','WALTER','PATRICK','CAROLYN','CHRISTINE', - 'PETER','MARIE','JANET','CATHERINE','HAROLD','FRANCES','DOUGLAS','HENRY','ANN','JOYCE', - 'DIANE','ALICE','JULIE','CARL','HEATHER'); - $users_count = 0; - $users = array(); - - shuffle($lastnames); - shuffle($firstnames); - - $next_user_id = $DB->get_field_sql("SELECT MAX(id) FROM {user}") + 1; - - for ($i = 0; $i < $this->get('number_of_students'); $i++) { - - $lastname = trim(ucfirst(strtolower($lastnames[rand(0, count($lastnames) - 1)]))); - $firstname = $firstnames[rand(0, count($firstnames) - 1)]; - - $user = new stdClass(); - $user->firstname = trim(ucfirst(strtolower($firstname))); - $user->username = strtolower(substr($firstname, 0, 7) . substr($lastname, 0, 7)) . $next_user_id++; - $user->lastname = $lastname; - $user->email = $user->username . '@example.com'; - $user->mnethostid = 1; - $user->city = 'Test City'; - $user->country = 'AU'; - $user->password = md5('password'); - $user->auth = 'manual'; - $user->confirmed = 1; - $user->lang = $CFG->lang; - $user->timemodified= time(); - - $user->id = $DB->insert_record("user", $user); - $users_count++; - $users[] = $user->id; - $next_user_id = $user->id + 1; - $this->verbose("Inserted $user->firstname $user->lastname into DB " - ."(username=$user->username, password=password)."); - } - - if (!$this->get('quiet')) { - echo "$users_count users correctly inserted in the database.{$this->eolchar}"; - } - return $users; - } - - public function generate_data() { - if (!$this->do_generation) { - return false; - } - - set_time_limit($this->get('time_limit')); - - // Process tiny data set - $tiny = $this->get('tiny'); - if (!empty($tiny)) { - $this->verbose("Generating a tiny data set: 1 student in 1 course with 1 module in 1 section..."); - $this->set('number_of_courses',1); - $this->set('number_of_students',1); - $this->set('number_of_modules',1); - $this->set('number_of_sections',1); - $this->set('assignment_grades',false); - $this->set('quiz_grades',false); - $this->set('students_per_course',1); - $this->set('questions_per_course',1); - $this->set('questions_per_quiz',1); - } - - if ($this->get('pre_cleanup')) { - $this->verbose("Deleting previous test data..."); - $this->data_cleanup(); - - if (!$this->get('quiet')) { - echo "Previous test data has been deleted.{$this->eolchar}"; - } - } - - - if (!$this->get('no_data')) { - $users = $this->generate_users(); - $courses = $this->generate_courses(); - $modules = $this->generate_modules($courses); - $questions = $this->generate_questions($courses, $modules); - $course_users = $this->generate_role_assignments($users, $courses); - $this->generate_forum_posts($course_users, $modules); - $this->generate_grades($course_users, $courses, $modules); - $this->generate_module_content($course_users, $courses, $modules); - } - - if ($this->get('post_cleanup')) { - if (!$this->get('quiet')) { - echo "Removing generated data..." . $this->eolchar; - } - $this->data_cleanup(); - if (!$this->get('quiet')) { - echo "Generated data has been deleted." . $this->eolchar; - } - } - - /** - * FINISHING SCRIPT - */ - $stoptimer = time()+microtime(); - $timer = round($stoptimer-$this->starttime,4); - if (!$this->get('quiet')) { - echo "End of script! ($timer seconds taken){$this->eolchar}"; - } - - } - - public function generate_courses() { - global $DB; - - $this->verbose("Generating " . $this->get('number_of_courses')." courses..."); - $base_course = new stdClass(); - $next_course_id = $DB->get_field_sql("SELECT MAX(id) FROM {course}") + 1; - - $base_course->MAX_FILE_SIZE = '2097152'; - $base_course->category = '1'; - $base_course->summary = 'Blah Blah'; - $base_course->format = 'weeks'; - $base_course->numsections = '10'; - $base_course->startdate = time(); - $base_course->id = '0'; - - $courses_count = 0; - $courses = array(); - for ($i = 1; $i <= $this->get('number_of_courses'); $i++) { - $newcourse = fullclone($base_course); - $newcourse->fullname = "Test course $next_course_id"; - $newcourse->shortname = "Test $next_course_id"; - $newcourse->idnumber = $next_course_id; - if (!$course = create_course($newcourse)) { - $this->verbose("Error inserting a new course in the database!"); - if (!$this->get('ignore_errors')) { - die(); - } - } else { - $courses_count++; - $next_course_id++; - $courses[] = $course->id; - $next_course_id = $course->id + 1; - $this->verbose("Inserted $course->fullname into DB (idnumber=$course->idnumber)."); - } - } - - if (!$this->get('quiet')) { - echo "$courses_count test courses correctly inserted into the database.{$this->eolchar}"; - } - return $courses; - } - - public function generate_modules($courses) { - global $DB, $CFG; - // Parse the modules-list variable - - $this->verbose("Generating " . $this->get('number_of_sections')." sections with " - .$this->get('number_of_modules')." modules in each section, for each course..."); - - list($modules_list_sql, $modules_params) = - $DB->get_in_or_equal($this->get('modules_list'), SQL_PARAMS_NAMED, 'mod', true); - - list($modules_ignored_sql, $ignore_params) = - $DB->get_in_or_equal($this->modules_to_ignore, SQL_PARAMS_NAMED, 'ignore', false); - - $wheresql = "name $modules_list_sql AND name $modules_ignored_sql"; - $modules = $DB->get_records_select('modules', $wheresql, array_merge($modules_params, $ignore_params)); - - foreach ($modules as $key => $module) { - $module->count = 0; - - // Scorm, lams and hotpot are too complex to set up, remove them - if (in_array($module->name, $this->modules_to_ignore) || - !in_array($module->name, $this->modules_list)) { - unset($modules[$key]); - } - } - - // Dirty hack for renumbering the modules array's keys - $first_module = reset($modules); - array_shift($modules); - array_unshift($modules, $first_module); - - $modules_array = array(); - - if (count($courses) > 0) { - $libraries = array(); - foreach ($courses as $courseid) { - - // Text resources - for ($i = 1; $i <= $this->get('number_of_sections'); $i++) { - for ($j = 0; $j < $this->get('number_of_modules'); $j++) { - - $module = new stdClass(); - - // If only one module is created, and we also need to add a question to a quiz, create only a quiz - if ($this->get('number_of_modules') == 1 - && $this->get('questions_per_quiz') > 0 - && !empty($modules[8])) { - $moduledata = $modules[8]; - } else { - $moduledata = $modules[array_rand($modules)]; - } - - $libfile = "$CFG->dirroot/mod/$moduledata->name/lib.php"; - if (file_exists($libfile)) { - if (!in_array($libfile, $libraries)) { - $this->verbose("Including library for $moduledata->name..."); - $libraries[] = $libfile; - require_once($libfile); - } - } else { - $this->verbose("Could not load lib file for module $moduledata->name!"); - if (!$this->get('ignore_errors')) { - die(); - } - } - - // Basically 2 types of text fields: description and content - $description = "This $moduledata->name has been randomly generated by a very useful script, " - . "for the purpose of testing " - . "the boundaries of Moodle in various contexts. Moodle should be able to scale to " - . "any size without " - . "its speed and ease of use being affected dramatically."; - $content = 'Very useful content, I am sure you would agree'; - - $module_type_index = 0; - $module->introformat = FORMAT_MOODLE; - $module->messageformat = FORMAT_MOODLE; - - // Special module-specific config - switch ($moduledata->name) { - case 'assignment': - $module->intro = $description; - $module->assignmenttype = $this->get_module_type('assignment'); - $module->timedue = time() + 89487321; - $module->grade = rand(50,100); - break; - case 'chat': - $module->intro = $description; - $module->schedule = 1; - $module->chattime = 60 * 60 * 4; - break; - case 'data': - $module->intro = $description; - $module->name = 'test'; - break; - case 'choice': - $module->intro = $description; - $module->text = $content; - $module->option = array('Good choice', 'Bad choice', 'No choice'); - $module->limit = array(1, 5, 0); - break; - case 'comments': - $module->intro = $description; - $module->comments = $content; - break; - case 'feedback': - $module->intro = $description; - $module->page_after_submit = $description; - $module->comments = $content; - break; - case 'forum': - $module->intro = $description; - $module->type = $this->get_module_type('forum'); - $module->forcesubscribe = rand(0, 1); - $module->format = 1; - break; - case 'glossary': - $module->intro = $description; - $module->displayformat = $this->glossary_formats[rand(0, count($this->glossary_formats) - 1)]; - $module->cmidnumber = rand(0,999999); - break; - case 'label': - $module->content = $content; - $module->intro = $description; - break; - case 'lesson': - $module->lessondefault = 1; - $module->available = time(); - $module->deadline = time() + 719891987; - $module->grade = 100; - break; - case 'quiz': - $module->intro = $description; - $module->feedbacktext = 'blah'; - $module->feedback = 1; - $module->feedbackboundaries = array(2, 1); - $module->grade = 10; - $module->timeopen = time(); - $module->timeclose = time() + 68854; - $module->shufflequestions = true; - $module->shuffleanswers = true; - $module->quizpassword = ''; - break; - case 'resource': - $module->type = $this->get_module_type('resource'); - $module->alltext = $content; - $module->summary = $description; - $module->windowpopup = rand(0,1); - $module->display = rand(0,1); - $module->resizable = rand(0,1); - $module->scrollbars = rand(0,1); - $module->directories = rand(0,1); - $module->location = 'file.txt'; - $module->menubar = rand(0,1); - $module->toolbar = rand(0,1); - $module->status = rand(0,1); - $module->width = rand(200,600); - $module->height = rand(200,600); - $module->directories = rand(0,1); - $module->files = false; - $module->param_navigationmenu = rand(0,1); - $module->param_navigationbuttons = rand(0,1); - $module->reference = 1; - $module->forcedownload = 1; - break; - case 'survey': - $module->template = rand(1,5); - $module->intro = $description; - break; - case 'wiki': - $module->intro = $description; - $module->summary = $description; - break; - } - - $module->name = ucfirst($moduledata->name) . ' ' . $moduledata->count++; - - $module->course = $courseid; - $module->section = 0; - $module->module = $moduledata->id; - $module->modulename = $moduledata->name; - $module->add = $moduledata->name; - $module->cmidnumber = ''; - $module->coursemodule = ''; - $add_instance_function = $moduledata->name . '_add_instance'; - - $module->coursemodule = add_course_module($module); - - if (function_exists($add_instance_function)) { - $this->verbose("Calling module function $add_instance_function"); - $module->instance = $add_instance_function($module, ''); - $DB->set_field('course_modules', 'instance', $module->instance, array('id'=>$module->coursemodule)); - } else { - $this->verbose("Function $add_instance_function does not exist!"); - if (!$this->get('ignore_errors')) { - die(); - } - } - - $module->section = course_add_cm_to_section($courseid, $module->coursemodule, $i); - - $module->cmidnumber = set_coursemodule_idnumber($module->coursemodule, ''); - - $this->verbose("A $moduledata->name module was added to section $i (id $module->section) " - ."of course $courseid."); - - $module_instance = $DB->get_field('course_modules', 'instance', array('id' => $module->coursemodule)); - $module_record = $DB->get_record($moduledata->name, array('id' => $module_instance)); - $module_record->instance = $module_instance; - - if (empty($modules_array[$moduledata->name])) { - $modules_array[$moduledata->name] = array(); - } - - // TODO Find out why some $module_record end up empty here... (particularly quizzes) - if (!empty($module_record->instance)) { - $modules_array[$moduledata->name][] = $module_record; - } - } - } - } - - if (!$this->get('quiet')) { - echo "Successfully generated " . $this->get('number_of_modules') * $this->get('number_of_sections') - . " modules in each course!{$this->eolchar}"; - } - - return $modules_array; - } - return null; - } - - public function generate_questions($courses, $modules) { - global $DB, $CFG; - - if (!is_null($this->get('questions_per_course')) && count($courses) > 0 && is_array($courses)) { - require_once($CFG->libdir .'/questionlib.php'); - require_once($CFG->dirroot .'/mod/quiz/editlib.php'); - $questions = array(); - $questionsmenu = question_bank::get_creatable_qtypes(); - $questiontypes = array(); - foreach ($questionsmenu as $qtype => $qname) { - $questiontypes[] = $qtype; - } - - // Add the questions - foreach ($courses as $courseid) { - $questions[$courseid] = array(); - for ($i = 0; $i < $this->get('questions_per_course'); $i++) { - $qtype = $questiontypes[array_rand($questiontypes)]; - - // Only the following types are supported right now. Hang around for more! - $supported_types = array('match', 'essay', 'multianswer', 'multichoice', 'shortanswer', - 'numerical', 'truefalse', 'calculated'); - $qtype = $supported_types[array_rand($supported_types)]; - - if ($qtype == 'calculated') { - continue; - } - $classname = "question_{$qtype}_qtype"; - if ($qtype == 'multianswer') { - $classname = "embedded_cloze_qtype"; - } - - $question = new $classname(); - $question->qtype = $qtype; - $questions[$courseid][] = $question->generate_test("question$qtype-$i", $courseid); - $this->verbose("Generated a question of type $qtype for course id $courseid."); - } - } - - // Assign questions to quizzes, if such exist - if (!empty($modules['quiz']) && !empty($questions) && !is_null($this->get('questions_per_quiz'))) { - $quizzes = $modules['quiz']; - - // Cannot assign more questions per quiz than are available, so determine which is the largest - $questions_per_quiz = max(count($questions), $this->get('questions_per_quiz')); - - foreach ($quizzes as $quiz) { - $questions_added = array(); - for ($i = 0; $i < $questions_per_quiz; $i++) { - - // Add a random question to the quiz - do { - if (empty($quiz->course)) { - print_object($quizzes);die(); - } - $random = rand(0, count($questions[$quiz->course])); - } while (in_array($random, $questions_added) || !array_key_exists($random, $questions[$quiz->course])); - - if (!quiz_add_quiz_question($questions[$quiz->course][$random]->id, $quiz)) { - - // Could not add question to quiz!! report error - if (!$this->get('quiet')) { - echo "WARNING: Could not add question id $random to quiz id $quiz->id{$this->eolchar}"; - } - } else { - $this->verbose("Adding question id $random to quiz id $quiz->id."); - $questions_added[] = $random; - } - } - } - } - return $questions; - } - return null; - } - - public function generate_role_assignments($users, $courses) { - global $CFG, $DB; - $course_users = array(); - - if (count($courses) > 0) { - $this->verbose("Inserting student->course role assignments..."); - $assigned_count = 0; - $assigned_users = array(); - - foreach ($courses as $courseid) { - $course_users[$courseid] = array(); - - // Select $students_per_course for assignment to course - shuffle($users); - $users_to_assign = array_slice($users, 0, $this->get('students_per_course')); - - $context = context_course::instance($courseid); - foreach ($users_to_assign as $random_user) { - role_assign(5, $random_user, $context->id); - - $assigned_count++; - $course_users[$courseid][] = $random_user; - if (!isset($assigned_users[$random_user])) { - $assigned_users[$random_user] = 1; - } else { - $assigned_users[$random_user]++; - } - $this->verbose("Student $random_user was assigned to course $courseid."); - } - } - - if (!$this->get('quiet')) { - echo "$assigned_count user => course role assignments have been correctly performed.{$this->eolchar}"; - } - return $course_users; - } - return null; - } - - public function generate_forum_posts($course_users, $modules) { - global $CFG, $DB, $USER; - - if (in_array('forum', $this->modules_list) && - $this->get('discussions_per_forum') && - $this->get('posts_per_discussion') && - isset($modules['forum'])) { - - $discussions_count = 0; - $posts_count = 0; - - foreach ($modules['forum'] as $forum) { - $forum_users = $course_users[$forum->course]; - - for ($i = 0; $i < $this->get('discussions_per_forum'); $i++) { - $mform = new fake_form(); - - require_once($CFG->dirroot.'/mod/forum/lib.php'); - - $discussion = new stdClass(); - $discussion->course = $forum->course; - $discussion->forum = $forum->id; - $discussion->name = 'Test discussion'; - $discussion->intro = 'This is just a test forum discussion'; - $discussion->assessed = 0; - $discussion->messageformat = 1; - $discussion->messagetrust = 0; - $discussion->mailnow = false; - $discussion->groupid = -1; - $discussion->attachments = null; - $discussion->itemid = 752157083; - - $message = ''; - $super_global_user = clone($USER); - $user_id = $forum_users[array_rand($forum_users)]; - $USER = $DB->get_record('user', array('id' => $user_id)); - - if ($discussion_id = forum_add_discussion($discussion, $mform, $message)) { - $discussion = $DB->get_record('forum_discussions', array('id' => $discussion_id)); - $discussions_count++; - - // Add posts to this discussion - $post_ids = array($discussion->firstpost); - - for ($j = 0; $j < $this->get('posts_per_discussion'); $j++) { - $global_user = clone($USER); - $user_id = $forum_users[array_rand($forum_users)]; - $USER = $DB->get_record('user', array('id' => $user_id)); - $post = new stdClass(); - $post->discussion = $discussion_id; - $post->subject = 'Re: test discussion'; - $post->message = '

Nothing much to say, since this is just a test...

'; - $post->format = 1; - $post->attachments = null; - $post->itemid = 752157083; - $post->parent = $post_ids[array_rand($post_ids)]; - - if ($post_ids[] = forum_add_new_post($post, $mform, $message)) { - $posts_count++; - } - $USER = $global_user; - } - } - - $USER = $super_global_user; - - if ($forum->type == 'single') { - break; - } - } - } - if ($discussions_count > 0 && !$this->get('quiet')) { - echo "$discussions_count forum discussions have been generated.{$this->eolchar}"; - } - if ($posts_count > 0 && !$this->get('quiet')) { - echo "$posts_count forum posts have been generated.{$this->eolchar}"; - } - - return true; - } - return null; - - } - - public function generate_grades($course_users, $courses, $modules) { - global $CFG, $DB, $USER; - - /** - * ASSIGNMENT GRADES GENERATION - */ - if ($this->get('assignment_grades') && isset($modules['assignment'])) { - $grades_count = 0; - foreach ($course_users as $courseid => $userid_array) { - foreach ($userid_array as $userid) { - foreach ($modules['assignment'] as $assignment) { - if (in_array($assignment->course, $courses)) { - $maxgrade = $assignment->grade; - $random_grade = rand(0, $maxgrade); - $grade = new stdClass(); - $grade->assignment = $assignment->id; - $grade->userid = $userid; - $grade->grade = $random_grade; - $grade->rawgrade = $random_grade; - $grade->teacher = $USER->id; - $grade->submissioncomment = 'comment'; - $DB->insert_record('assignment_submissions', $grade); - grade_update('mod/assignment', $assignment->course, 'mod', 'assignment', $assignment->id, 0, $grade); - $this->verbose("A grade ($random_grade) has been given to user $userid " - . "for assignment $assignment->id"); - $grades_count++; - } - } - } - } - if ($grades_count > 0) { - $this->verbose("$grades_count assignment grades have been generated.{$this->eolchar}"); - } - } - - /** - * QUIZ GRADES GENERATION - */ - if ($this->get('quiz_grades') && isset($modules['quiz'])) { - $grades_count = 0; - foreach ($course_users as $userid => $courses) { - foreach ($modules['quiz'] as $quiz) { - if (in_array($quiz->course, $courses)) { - $maxgrade = $quiz->grade; - $random_grade = rand(0, $maxgrade); - $grade = new stdClass(); - $grade->quiz = $quiz->id; - $grade->userid = $userid; - $grade->grade = $random_grade; - $grade->rawgrade = $random_grade; - $DB->insert_record('quiz_grades', $grade); - grade_update('mod/quiz', $courseid, 'mod', 'quiz', $quiz->id, 0, $grade); - $this->verbose("A grade ($random_grade) has been given to user $userid for quiz $quiz->id"); - $grades_count++; - } - } - } - if ($grades_count > 0 && !$this->get('quiet')) { - echo "$grades_count quiz grades have been generated.{$this->eolchar}"; - } - } - return null; - } - - public function generate_module_content($course_users, $courses, $modules) { - global $USER, $DB, $CFG; - $result = null; - - $entries_count = 0; - if ($this->get('entries_per_glossary') && !empty($modules['glossary'])) { - foreach ($modules['glossary'] as $glossary) { - for ($i = 0; $i < $this->get('entries_per_glossary'); $i++) { - $entry = new stdClass(); - $entry->glossaryid = $glossary->id; - $entry->userid = $USER->id; - $entry->concept = "Test concept"; - $entry->definition = "A test concept is nothing to write home about: just a test concept."; - $entry->format = 1; - $entry->timecreated = time(); - $entry->timemodified = time(); - $entry->teacherentry = 0; - $entry->approved = 1; - $DB->insert_record('glossary_entries', $entry); - $entries_count++; - } - } - if ($entries_count > 0 && !$this->get('quiet')) { - echo "$entries_count glossary definitions have been generated.{$this->eolchar}"; - } - $result = true; - } - - $fields_count = 0; - if (!empty($modules['data']) && $this->get('fields_per_database') && $this->get('database_records_per_student')) { - $database_field_types = array('checkbox', - 'date', - 'file', - 'latlong', - 'menu', - 'multimenu', - 'number', - 'picture', - 'radiobutton', - 'text', - 'textarea', - 'url'); - - - $fields = array(); - - foreach ($modules['data'] as $data) { - - for ($i = 0; $i < $this->get('fields_per_database'); $i++) { - $type = $database_field_types[array_rand($database_field_types)]; - require_once($CFG->dirroot.'/mod/data/field/'.$type.'/field.class.php'); - $newfield = 'data_field_'.$type; - $cm = get_coursemodule_from_instance('data', $data->id); - $newfield = new $newfield(0, $data, $cm); - $fields[$data->id][] = $newfield; - $newfield->insert_field(); - } - - // Generate fields for each database (same fields for all, no arguing) - for ($i = 0; $i < $this->get('fields_per_database'); $i++) { - - } - - // Generate database records for each student, if needed - for ($i = 0; $i < $this->get('database_records_per_student'); $i++) { - - } - } - if ($fields_count > 0 && !$this->get('quiet')) { - $datacount = count($modules['data']); - echo "$fields_count database fields have been generated for each of the " - . "$datacount generated databases.{$this->eolchar}"; - } - $result = true; - } - - $messages_count = 0; - if (!empty($modules['chat']) && $this->get('messages_per_chat')) { - - // Insert all users into chat_users table, then a message from each user - foreach ($modules['chat'] as $chat) { - - foreach ($course_users as $courseid => $users_array) { - - foreach ($users_array as $userid) { - if ($messages_count < $this->get('messages_per_chat')) { - $chat_user = new stdClass(); - $chat_user->chatid = $chat->id; - $chat_user->userid = $userid; - $chat_user->course = $courseid; - $DB->insert_record('chat_users', $chat_user); - - $chat_message = new stdClass(); - $chat_message->chatid = $chat->id; - $chat_message->userid = $userid; - $chat_message->message = "Hi, everyone!"; - $DB->insert_record('chat_messages', $chat_message); - - $messages_count++; - } - } - } - } - - if ($messages_count > 0 && !$this->get('quiet')) { - $datacount = count($modules['chat']); - echo "$messages_count messages have been generated for each of the " - . "$datacount generated chats.{$this->eolchar}"; - } - $result = true; - } - - return $result; - } - - - /** - * If verbose is switched on, prints a string terminated by the global eolchar string. - * @param string $string The string to STDOUT - */ - public function verbose($string) { - if ($this->get('verbose') && !$this->get('quiet')) { - echo $string . $this->eolchar; - } - } - - - /** - * Attempts to delete all generated test data. - * WARNING: THIS WILL COMPLETELY MESS UP A "REAL" SITE, AND IS INTENDED ONLY FOR DEVELOPMENT PURPOSES - */ - function data_cleanup() { - global $DB; - - if ($this->get('quiet')) { - ob_start(); - } - - // TODO Cleanup code - - if ($this->get('quiet')) { - ob_end_clean(); - } - } - - public function get($setting) { - if (isset($this->settings[$setting])) { - return $this->settings[$setting]->value; - } else { - return null; - } - } - - public function set($setting, $value) { - if (isset($this->settings[$setting])) { - $this->settings[$setting]->value = $value; - } else { - return false; - } - } - - public function get_module_type($modulename) { - $return_val = false; - - $type = $this->get($modulename.'_type'); - - if (is_object($type) && isset($type->type) && isset($type->options)) { - - if ($type->type == GENERATOR_RANDOM) { - $return_val = $type->options[array_rand($type->options)]; - - } elseif ($type->type == GENERATOR_SEQUENCE) { - $return_val = $type->options[$this->{$modulename.'_type_counter'}]; - $this->{$modulename.'_type_counter'}++; - - if ($this->{$modulename.'_type_counter'} == count($type->options)) { - $this->{$modulename.'_type_counter'} = 0; - } - } - - } elseif (is_array($type)) { - $return_val = $type[array_rand($type)]; - - } elseif (is_string($type)) { - $return_val = $type; - } - - return $return_val; - } -} - -class generator_argument { - public $short; - public $long; - public $help; - public $type; - public $default = null; - public $value; - - public function __construct($params) { - foreach ($params as $key => $val) { - $this->$key = $val; - } - $this->value = $this->default; - } -} - -class generator_cli extends generator { - public $eolchar = "\n"; - - public function __construct($settings, $argc) { - parent::__construct(); - - // Building the USAGE output of the command line version - $help = "Moodle Data Generator. Generates Data for Moodle sites. Good for benchmarking and other tests.\n\n" - . "FOR DEVELOPMENT PURPOSES ONLY! DO NOT USE ON A PRODUCTION SITE!\n\n" - . "Note: By default the script attempts to fill DB tables prefixed with tst_\n" - . "To override the prefix, use the -P (--database_prefix) setting.\n\n" - . "Usage: {$settings[0]}; [OPTION] ...\n" - . "Options:\n" - . " -h, -?, -help, --help This output\n"; - - foreach ($this->settings as $argument) { - $equal = ''; - if (!empty($argument->type)) { - $equal = "={$argument->type}"; - } - - $padding1 = 5 - strlen($argument->short); - $padding2 = 30 - (strlen($argument->long) + strlen($equal)); - $paddingstr1 = ''; - for ($i = 0; $i < $padding1; $i++) { - $paddingstr1 .= ' '; - } - $paddingstr2 = ''; - for ($i = 0; $i < $padding2; $i++) { - $paddingstr2 .= ' '; - } - - $help .= " -{$argument->short},$paddingstr1--{$argument->long}$equal$paddingstr2{$argument->help}\n"; - } - - $help .= "\nUse http://tracker.moodle.org for any suggestions or bug reports.\n"; - - if ($argc == 1 || in_array($settings[1], array('--help', '-help', '-h', '-?'))) { - echo $help; - die(); - - } else { - $this->do_generation = true; - $settings = $this->_arguments($settings); - $argscount = 0; - - foreach ($this->settings as $argument) { - $value = null; - - if (in_array($argument->short, array_keys($settings))) { - $value = $settings[$argument->short]; - unset($settings[$argument->short]); - - } elseif (in_array($argument->long, array_keys($settings))) { - $value = $settings[$argument->long]; - unset($settings[$argument->long]); - } - - if (!is_null($value)) { - - if (!empty($argument->type) && ($argument->type == 'mod1,mod2...' || $argument->type == 'SELECT')) { - $value = explode(',', $value); - } - - $this->set($argument->long, $value); - $argscount++; - } - } - - // If some params are left in argv, it means they are not supported - if ($argscount == 0 || count($settings) > 0) { - echo $help; - die(); - } - } - - $this->connect(); - } - - public function generate_data() { - if (is_null($this->get('username')) || $this->get('username') == '') { - echo "You must enter a valid username for a moodle administrator account on this site.{$this->eolchar}"; - die(); - } elseif (is_null($this->get('password')) || $this->get('password') == '') { - echo "You must enter a valid password for a moodle administrator account on this site.{$this->eolchar}"; - die(); - } else { - if (!$user = authenticate_user_login($this->get('username'), $this->get('password'))) { - echo "Invalid username or password!{$this->eolchar}"; - die(); - } - if (!is_siteadmin($user)) {//TODO: add some proper access control check here!! - echo "You do not have administration privileges on this Moodle site. " - ."These are required for running the generation script.{$this->eolchar}"; - die(); - } - complete_user_login($user); - } - - parent::generate_data(); - } - - /** - * Converts the standard $argv into an associative array taking var=val arguments into account - * @param array $argv - * @return array $_ARG - */ - private function _arguments($argv) { - $_ARG = array(); - foreach ($argv as $arg) { - if (preg_match('/--?([^=]+)=(.*)/',$arg,$reg)) { - $_ARG[$reg[1]] = $reg[2]; - } elseif(preg_match('/-([a-zA-Z0-9]+)/',$arg,$reg)) { - $_ARG[$reg[1]] = 'true'; - } - } - return $_ARG; - } -} - -class generator_web extends generator { - public $eolchar = '
'; - public $mform; - - public function setup() { - global $CFG; - $this->mform = new generator_form(); - - if ($data = $this->mform->get_data(false)) { - $this->do_generation = optional_param('do_generation', false, PARAM_BOOL); - foreach ($this->settings as $setting) { - if (isset($data->{$setting->long})) { - $this->set($setting->long, $data->{$setting->long}); - } - } - } else { - $this->do_generation = false; - } - } - - public function display() { - global $OUTPUT, $PAGE; - $PAGE->set_title("Data generator"); - echo $OUTPUT->header(); - echo $OUTPUT->heading("Data generator: web interface"); - echo $OUTPUT->heading("FOR DEVELOPMENT PURPOSES ONLY. DO NOT USE ON A PRODUCTION SITE!", 3); - echo $OUTPUT->heading("Your database contents will probably be massacred. You have been warned", 5); - - $this->mform->display(); - $this->connect(); - } - - public function complete() { - global $OUTPUT; - $this->dispose(); - echo $OUTPUT->footer(); - } -} - -class generator_silent extends generator { - -} - -function generator_generate_data($settings) { - $generator = new generator($settings); - $generator->do_generation = true; - $generator->generate_data(); -} - -class fake_form { - function get_new_filename($string) { - return false; - } - - function save_stored_file() { - return true; - } - - function get_data() { - return array(); - } -} - -class generator_form extends moodleform { - function definition() { - global $generator, $CFG; //TODO: sloppy coding style!! - - $mform =& $this->_form; - $mform->addElement('hidden', 'do_generation', 1); - $mform->setType('do_generation', PARAM_INT); - - foreach ($generator->settings as $setting) { - $type = 'advcheckbox'; - $options = null; - $htmloptions = null; - - $label = ucfirst(str_replace('_', ' ', $setting->long)); - if (!empty($setting->type) && $setting->type == 'mod1,mod2...') { - $type = 'select'; - $options = $generator->modules_list; - $htmloptions = array('multiple' => 'multiple'); - } elseif (!empty($setting->type) && $setting->type == 'SELECT') { - $type = 'select'; - $options = array(); - foreach ($setting->default as $option) { - $options[$option] = $option; - } - $htmloptions = array('multiple' => 'multiple'); - } elseif (!empty($setting->type)) { - $type = 'text'; - } - - if ($setting->long == 'password' || $setting->long == 'username') { - continue; - } - - $mform->addElement($type, $setting->long, $label, $options, $htmloptions); - - if (isset($setting->default)) { - $mform->setDefault($setting->long, $setting->default); - } - } - $this->add_action_buttons(false, 'Generate data!'); - } - - function definition_after_data() { - - } -} diff --git a/admin/tool/generator/maketestcourse.php b/admin/tool/generator/maketestcourse.php index 82af097cb8f..a7b760bd63d 100644 --- a/admin/tool/generator/maketestcourse.php +++ b/admin/tool/generator/maketestcourse.php @@ -15,8 +15,7 @@ // along with Moodle. If not, see . /** - * Script creates a standardised large course for testing reliability and - * performance. + * Script creates a standardised large course for testing reliability and performance. * * @package tool_generator * @copyright 2013 The Open University @@ -32,7 +31,7 @@ require('../../../config.php'); require_once($CFG->libdir . '/adminlib.php'); // Initialise page and check permissions. -admin_externalpage_setup('toolgenerator'); +admin_externalpage_setup('toolgeneratorcourse'); // Start page. echo $OUTPUT->header(); @@ -40,7 +39,7 @@ echo $OUTPUT->heading(get_string('maketestcourse', 'tool_generator')); // Information message. $context = context_system::instance(); -echo $OUTPUT->box(format_text(get_string('explanation', 'tool_generator'), +echo $OUTPUT->box(format_text(get_string('courseexplanation', 'tool_generator'), FORMAT_MARKDOWN, array('context' => $context))); // Check debugging is set to DEVELOPER. @@ -51,7 +50,7 @@ if (!debugging('', DEBUG_DEVELOPER)) { } // Set up the form. -$mform = new tool_generator_make_form('maketestcourse.php'); +$mform = new tool_generator_make_course_form('maketestcourse.php'); if ($data = $mform->get_data()) { // Do actual work. echo $OUTPUT->heading(get_string('creating', 'tool_generator')); diff --git a/admin/tool/generator/maketestplan.php b/admin/tool/generator/maketestplan.php new file mode 100644 index 00000000000..fe2965ae225 --- /dev/null +++ b/admin/tool/generator/maketestplan.php @@ -0,0 +1,87 @@ +. + +/** + * Generates a JMeter test plan to performance comparison. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +require(__DIR__ . '/../../../config.php'); +require_once($CFG->libdir . '/adminlib.php'); + +// Initialise page and check permissions. +admin_externalpage_setup('toolgeneratortestplan'); + +// Start page. +echo $OUTPUT->header(); +echo $OUTPUT->heading(get_string('maketestplan', 'tool_generator')); + +// Information message. +$context = context_system::instance(); +$markdownlink = '[' . tool_generator_testplan_backend::get_repourl() . '](' . tool_generator_testplan_backend::get_repourl() . ')'; +echo $OUTPUT->box(format_text(get_string('testplanexplanation', 'tool_generator', $markdownlink), + FORMAT_MARKDOWN, array('context' => $context))); + +// Check debugging is set to DEVELOPER. +if (!$CFG->debugdeveloper) { + echo $OUTPUT->notification(get_string('error_notdebugging', 'tool_generator')); + echo $OUTPUT->footer(); + exit; +} + +// Set up the form. +$mform = new tool_generator_make_testplan_form('maketestplan.php'); +if ($data = $mform->get_data()) { + + // Creating both test plan and users files. + $testplanfile = tool_generator_testplan_backend::create_testplan_file($data->courseid, $data->size); + $usersfile = tool_generator_testplan_backend::create_users_file($data->courseid, $data->updateuserspassword); + + // Test plan link. + $testplanurl = moodle_url::make_pluginfile_url( + $testplanfile->get_contextid(), + $testplanfile->get_component(), + $testplanfile->get_filearea(), + $testplanfile->get_itemid(), + $testplanfile->get_filepath(), + $testplanfile->get_filename() + ); + echo html_writer::div( + html_writer::link($testplanurl, get_string('downloadtestplan', 'tool_generator')) + ); + + // Users file link. + $usersfileurl = moodle_url::make_pluginfile_url( + $usersfile->get_contextid(), + $usersfile->get_component(), + $usersfile->get_filearea(), + $usersfile->get_itemid(), + $usersfile->get_filepath(), + $usersfile->get_filename() + ); + echo html_writer::div( + html_writer::link($usersfileurl, get_string('downloadusersfile', 'tool_generator')) + ); + +} else { + // Display form. + $mform->display(); +} + +echo $OUTPUT->footer(); diff --git a/admin/tool/generator/settings.php b/admin/tool/generator/settings.php index 39a40aeced8..f1f2350fe3a 100644 --- a/admin/tool/generator/settings.php +++ b/admin/tool/generator/settings.php @@ -25,8 +25,12 @@ defined('MOODLE_INTERNAL') || die; if ($hassiteconfig) { - $ADMIN->add('development', new admin_externalpage('toolgenerator', + $ADMIN->add('development', new admin_externalpage('toolgeneratorcourse', get_string('maketestcourse', 'tool_generator'), $CFG->wwwroot . '/' . $CFG->admin . '/tool/generator/maketestcourse.php')); + + $ADMIN->add('development', new admin_externalpage('toolgeneratortestplan', + get_string('maketestplan', 'tool_generator'), + $CFG->wwwroot . '/' . $CFG->admin . '/tool/generator/maketestplan.php')); } diff --git a/admin/tool/generator/testplan.template.jmx b/admin/tool/generator/testplan.template.jmx new file mode 100644 index 00000000000..2bfdaf45530 --- /dev/null +++ b/admin/tool/generator/testplan.template.jmx @@ -0,0 +1,885 @@ + + + + + + false + true + + + + runtimestamp + ${__time()} + = + + + size + {{SIZE_PLACEHOLDER}} + = + + + host + {{HOST_PLACEHOLDER}} + = + + + sitepath + {{SITEPATH_PLACEHOLDER}} + = + + + courseid + {{COURSEID_PLACEHOLDER}} + = + + + pageactivityid + {{PAGEACTIVITYID_PLACEHOLDER}} + = + + + forumactivityid + {{FORUMACTIVITYID_PLACEHOLDER}} + = + + + forumdiscussionid + {{FORUMDISCUSSIONID_PLACEHOLDER}} + = + + + forumreplyid + {{FORUMREPLYID_PLACEHOLDER}} + = + + + + + + + + all active threads (shared) + ${__property(throughput,throughput,120.0)} + + + + Used to fill the caches, logs in every user + continue + + false + 1 + + ${__P(users,{{USERS_PLACEHOLDER}})} + ${__P(rampup,{{RAMPUP_PLACEHOLDER}})} + 1378187955000 + 1378187955000 + false + + + + + + + + + ${host} + + + + + + ${sitepath} + 4 + + + + , + + ${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)} + false + true + All threads + false + username,password + + + + true + 1 + + + + + true + rfc2109 + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${username} + = + true + username + + + false + ${password} + = + true + password + + + + + + + + + + ${sitepath}/login/index.php + POST + true + false + true + false + false + + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + false + SESSION_SESSKEY + sesskey=([^"]+)" + $1$ + + 2 + all + + + + + + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + + + + + + + + ${sitepath}/login/logout.php + GET + true + false + true + false + false + + + + + + + continue + + false + ${__property(loops,loops,{{LOOPS_PLACEHOLDER}})} + + ${__property(users,users,{{USERS_PLACEHOLDER}})} + ${__property(rampup,rampup,{{RAMPUP_PLACEHOLDER}})} + 1376636813000 + 1376636813000 + false + + + + + + + + + ${host} + + + + + + ${sitepath} + 4 + + + + , + + ${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)} + false + true + All threads + false + username,password + + + + true + 1 + + + + + true + rfc2109 + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${username} + = + true + username + + + false + ${password} + = + true + password + + + + + + + + + + ${sitepath}/login/index.php + POST + true + false + true + false + false + + + + + + <div class="logininfo">You are logged in as + + Assertion.response_data + false + 2 + + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + + false + ${pageactivityid} + = + true + id + + + + + + + + + + ${sitepath}/mod/page/view.php + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + false + ${forumactivityid} + = + true + id + + + + + + + + + + ${sitepath}/mod/forum/view.php + GET + true + false + true + false + false + + + + + + + + false + ${forumdiscussionid} + = + true + d + + + + + + + + + + ${sitepath}/mod/forum/discuss.php + GET + true + false + true + false + false + + + + + + + + false + ${forumreplyid} + = + true + reply + + + + + + + + + + ${sitepath}/mod/forum/post.php + GET + true + false + true + false + false + + + + + false + SESSION_USERID + name="userid"\stype="hidden"\svalue="(\d+)" + $1$ + 0 + 1 + + + + false + SESSION_SESSKEY + name="sesskey"\stype="hidden"\svalue="([^"]+)" + $1$ + 0 + 1 + + + + false + SESSION_FORUMFORMATTACHMENTS + value="(\d+)"\sname="attachments"\stype="hidden" + $1$ + 0 + 1 + + + + false + SESSION_FORUMFORMITEMID + type="hidden"\sname="message\[itemid\]"\svalue="(\d+)" + $1$ + 0 + 1 + + + + + + + + false + ${courseid} + = + true + course + + + false + 0 + = + true + forum + + + false + ${forumdiscussionid} + = + true + discussion + + + false + ${SESSION_USERID} + = + true + userid + + + false + 0 + = + true + groupid + + + false + 0 + = + true + edit + + + false + ${forumreplyid} + = + true + reply + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + false + 1 + = + true + _qf__mod_forum_post_form + + + false + Re: I am the test plan reply subject + = + true + subject + + + false + ${SESSION_FORUMFORMITEMID} + = + true + message[itemid] + + + false + 1 + = + true + message[format] + + + false + I am the test plan reply message + = + true + message[text] + + + false + ${forumreplyid} + = + true + parent + + + false + 1 + = + true + subscribe + + + false + ${SESSION_FORUMFORMATTACHMENTS} + = + true + attachments + + + false + 0 + = + true + timestart + + + false + 0 + = + true + timeend + + + false + Post to forum + = + true + submitbutton + + + + + + + + + + ${sitepath}/mod/forum/post.php + POST + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/user/index.php + GET + true + false + true + false + false + + + + + + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + + + + + + + + ${sitepath}/login/logout.php + GET + true + false + true + false + false + + + + + + recorder.bsf + + false + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + + + runs_samples/data.${runtimestamp}.jtl + + + + + + diff --git a/admin/tool/generator/tests/maketestcourse_test.php b/admin/tool/generator/tests/maketestcourse_test.php index b8637f4eb34..b5afea0bc04 100644 --- a/admin/tool/generator/tests/maketestcourse_test.php +++ b/admin/tool/generator/tests/maketestcourse_test.php @@ -35,7 +35,7 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { $this->setAdminUser(); // Create the XS course. - $backend = new tool_generator_course_backend('TOOL_MAKELARGECOURSE_XS', 0, false, false); + $backend = new tool_generator_course_backend('TOOL_MAKELARGECOURSE_XS', 0, false, false, false); $courseid = $backend->make(); // Get course details. @@ -118,7 +118,7 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { $this->setAdminUser(); // Create the S course (more sections and activities than XS). - $backend = new tool_generator_course_backend('TOOL_S_COURSE_1', 1, true, false); + $backend = new tool_generator_course_backend('TOOL_S_COURSE_1', 1, true, false, false); $courseid = $backend->make(); // Get course details. @@ -151,4 +151,57 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { } } + + /** + * Creates a small test course specifying a maximum size and checks the generated files size is limited. + */ + public function test_filesize_limit() { + + $this->resetAfterTest(); + $this->setAdminUser(); + + // Limit. + $filesizelimit = 100; + + // Create a limited XS course. + $backend = new tool_generator_course_backend('TOOL_XS_LIMITED', 0, false, $filesizelimit, false); + $courseid = $backend->make(); + + $course = get_course($courseid); + $modinfo = get_fast_modinfo($course); + + // Check there are small files. + $fs = get_file_storage(); + $resources = $modinfo->get_instances_of('resource'); + foreach ($resources as $resource) { + $resourcecontext = context_module::instance($resource->id); + $files = $fs->get_area_files($resourcecontext->id, 'mod_resource', 'content', false, 'filename', false); + foreach ($files as $file) { + if ($file->get_mimetype() == 'application/octet-stream') { + $this->assertLessThanOrEqual($filesizelimit, $file->get_filesize()); + } + } + } + + // Create a non-limited XS course. + $backend = new tool_generator_course_backend('TOOL_XS_NOLIMITS', 0, false, false, false); + $courseid = $backend->make(); + + $course = get_course($courseid); + $modinfo = get_fast_modinfo($course); + + // Check there are small files. + $fs = get_file_storage(); + $resources = $modinfo->get_instances_of('resource'); + foreach ($resources as $resource) { + $resourcecontext = context_module::instance($resource->id); + $files = $fs->get_area_files($resourcecontext->id, 'mod_resource', 'content', false, 'filename', false); + foreach ($files as $file) { + if ($file->get_mimetype() == 'application/octet-stream') { + $this->assertGreaterThan($filesizelimit, (int)$file->get_filesize()); + } + } + } + + } } diff --git a/admin/tool/generator/tests/maketestsite_test.php b/admin/tool/generator/tests/maketestsite_test.php new file mode 100644 index 00000000000..18f6aed73ab --- /dev/null +++ b/admin/tool/generator/tests/maketestsite_test.php @@ -0,0 +1,106 @@ +. + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Silly class to access site_backend internal methods. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class testable_tool_generator_site_backend extends tool_generator_site_backend { + + /** + * Public accessor. + * + * @return int + */ + public static function get_last_testcourse_id() { + return parent::get_last_testcourse_id(); + } +} + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_maketestsite_testcase extends advanced_testcase { + + /** + * Checks that site courses shortnames are properly generated. + */ + public function test_shortnames_generation() { + + $this->resetAfterTest(); + $this->setAdminUser(); + + $generator = $this->getDataGenerator(); + + // Shortname common prefix. + $prefix = tool_generator_site_backend::SHORTNAMEPREFIX; + + $record = array(); + + // Without courses will be 0. + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // Without {$prefix} + {no integer} courses will be 0. + $record['shortname'] = $prefix . 'AA'; + $generator->create_course($record); + $record['shortname'] = $prefix . '__'; + $generator->create_course($record); + $record['shortname'] = $prefix . '12.2'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // With {$prefix} + {integer} courses will be the higher one. + $record['shortname'] = $prefix . '2'; + $generator->create_course($record); + $record['shortname'] = $prefix . '20'; + $generator->create_course($record); + $record['shortname'] = $prefix . '8'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + + // Numeric order. + for ($i = 9; $i < 14; $i++) { + $record['shortname'] = $prefix . $i; + $generator->create_course($record); + } + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + } + +} diff --git a/admin/tool/generator/version.php b/admin/tool/generator/version.php index 3733d984b92..10f30beb932 100644 --- a/admin/tool/generator/version.php +++ b/admin/tool/generator/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2013090200; +$plugin->version = 2013091201; $plugin->requires = 2013090200; $plugin->component = 'tool_generator'; diff --git a/admin/tool/uploaduser/index.php b/admin/tool/uploaduser/index.php index 7949d94eada..509374cf6a3 100644 --- a/admin/tool/uploaduser/index.php +++ b/admin/tool/uploaduser/index.php @@ -687,7 +687,7 @@ if ($formdata = $mform2->is_cancelled()) { } if ($dologout) { - session_kill_user($existinguser->id); + \core\session\manager::kill_user_sessions($existinguser->id); } } else { diff --git a/admin/user.php b/admin/user.php index 699babbeea8..45ddc21a33b 100644 --- a/admin/user.php +++ b/admin/user.php @@ -82,10 +82,10 @@ die; } else if (data_submitted() and !$user->deleted) { if (delete_user($user)) { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. redirect($returnurl); } else { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. echo $OUTPUT->header(); echo $OUTPUT->notification($returnurl, get_string('deletednot', '', fullname($user, true))); } @@ -125,7 +125,7 @@ if (!is_siteadmin($user) and $USER->id != $user->id and $user->suspended != 1) { $user->suspended = 1; // Force logout. - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); user_update_user($user, false); } } diff --git a/admin/user/user_bulk_delete.php b/admin/user/user_bulk_delete.php index 4dbb75df057..474903a7055 100644 --- a/admin/user/user_bulk_delete.php +++ b/admin/user/user_bulk_delete.php @@ -34,7 +34,7 @@ if ($confirm and confirm_sesskey()) { } } $rs->close(); - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. echo $OUTPUT->box_start('generalbox', 'notice'); if (!empty($notifications)) { echo $notifications; diff --git a/auth/cas/auth.php b/auth/cas/auth.php index 634e32b2c72..e748bbf007c 100644 --- a/auth/cas/auth.php +++ b/auth/cas/auth.php @@ -96,6 +96,7 @@ class auth_plugin_cas extends auth_plugin_ldap { $site = get_site(); $CASform = get_string('CASform', 'auth_cas'); $username = optional_param('username', '', PARAM_RAW); + $courseid = optional_param('courseid', 0, PARAM_INT); if (!empty($username)) { if (isset($SESSION->wantsurl) && (strstr($SESSION->wantsurl, 'ticket') || @@ -117,6 +118,12 @@ class auth_plugin_cas extends auth_plugin_ldap { $frm = new stdClass(); $frm->username = phpCAS::getUser(); $frm->password = 'passwdCas'; + + // Redirect to a course if multi-auth is activated, authCAS is set to CAS and the courseid is specified. + if ($this->config->multiauth && !empty($courseid)) { + redirect(new moodle_url('/course/view.php', array('id'=>$courseid))); + } + return; } diff --git a/auth/ldap/auth.php b/auth/ldap/auth.php index a435caaa1b1..0f80f7d30bb 100644 --- a/auth/ldap/auth.php +++ b/auth/ldap/auth.php @@ -808,7 +808,7 @@ class auth_plugin_ldap extends auth_plugin_base { $updateuser->suspended = 1; user_update_user($updateuser, false); echo "\t"; print_string('auth_dbsuspenduser', 'auth_db', array('name'=>$user->username, 'id'=>$user->id)); echo "\n"; - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); } } else { print_string('nouserentriestoremove', 'auth_ldap'); diff --git a/auth/mnet/auth.php b/auth/mnet/auth.php index e21d77a687c..e9950215705 100644 --- a/auth/mnet/auth.php +++ b/auth/mnet/auth.php @@ -141,7 +141,7 @@ class auth_plugin_mnet extends auth_plugin_base { global $CFG, $USER, $DB; require_once $CFG->dirroot . '/mnet/xmlrpc/client.php'; - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { print_error('notpermittedtojumpas', 'mnet'); } @@ -919,7 +919,7 @@ class auth_plugin_mnet extends auth_plugin_base { $returnString .= "We failed to refresh the session for the following usernames: \n".implode("\n", $subArray)."\n\n"; } else { foreach($results as $emigrant) { - session_touch($emigrant->session_id); + \core\session\manager::touch_session($emigrant->session_id); } } } @@ -1076,7 +1076,7 @@ class auth_plugin_mnet extends auth_plugin_base { array('useragent'=>$useragent, 'userid'=>$userid)); if (isset($remoteclient) && isset($remoteclient->id)) { - session_kill_user($userid); + \core\session\manager::kill_user_sessions($userid); } return $returnstring; } @@ -1096,7 +1096,7 @@ class auth_plugin_mnet extends auth_plugin_base { $session = $DB->get_record('mnet_session', array('username'=>$username, 'mnethostid'=>$remoteclient->id, 'useragent'=>$useragent)); $DB->delete_records('mnet_session', array('username'=>$username, 'mnethostid'=>$remoteclient->id, 'useragent'=>$useragent)); if (false != $session) { - session_kill($session->session_id); + \core\session\manager::kill_session($session->session_id); return true; } return false; @@ -1113,7 +1113,7 @@ class auth_plugin_mnet extends auth_plugin_base { global $CFG; if (is_array($sessionArray)) { while($session = array_pop($sessionArray)) { - session_kill($session->session_id); + \core\session\manager::kill_session($session->session_id); } return true; } diff --git a/auth/shibboleth/index.php b/auth/shibboleth/index.php index 61f6ba877f8..3eaf702d651 100644 --- a/auth/shibboleth/index.php +++ b/auth/shibboleth/index.php @@ -48,7 +48,7 @@ && $user = authenticate_user_login($frm->username, $frm->password)) { enrol_check_plugins($user); - session_set_user($user); + \core\session\manager::set_user($user); $USER->loggedin = true; $USER->site = $CFG->wwwroot; // for added security, store the site in the diff --git a/backup/converter/imscc11/backuplib.php b/backup/converter/imscc11/backuplib.php index b6d7154f8ba..2d749bda4f8 100644 --- a/backup/converter/imscc11/backuplib.php +++ b/backup/converter/imscc11/backuplib.php @@ -139,7 +139,7 @@ class imscc11_backup_convert extends backup_execution_step { require_once($CFG->dirroot . '/backup/cc/cc_includes.php'); - $tempdir = $CFG->dataroot . '/temp/backup/' . uniqid('', true); + $tempdir = $CFG->tempdir . '/backup/' . uniqid('', true); if (mkdir($tempdir, $CFG->directorypermissions, true)) { diff --git a/backup/converter/moodle1/handlerlib.php b/backup/converter/moodle1/handlerlib.php index c3df06bec7d..3973a8bf3fc 100644 --- a/backup/converter/moodle1/handlerlib.php +++ b/backup/converter/moodle1/handlerlib.php @@ -866,9 +866,11 @@ class moodle1_course_outline_handler extends moodle1_xml_handler { // host... $versionfile = $CFG->dirroot.'/mod/'.$data['modulename'].'/version.php'; if (file_exists($versionfile)) { - $module = new stdClass(); + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; include($versionfile); - $data['version'] = $module->version; + $data['version'] = $plugin->version; } else { $data['version'] = null; } diff --git a/backup/import.php b/backup/import.php index 13ad15a7b22..0bb9e6a2a7c 100644 --- a/backup/import.php +++ b/backup/import.php @@ -25,11 +25,9 @@ require_login($course); // Must hold restoretargetimport in the current course require_capability('moodle/restore:restoretargetimport', $context); -$heading = get_string('import'); - // Set up the page -$PAGE->set_title($heading); -$PAGE->set_heading($heading); +$PAGE->set_title($course->shortname . ': ' . get_string('import')); +$PAGE->set_heading($course->fullname); $PAGE->set_url(new moodle_url('/backup/import.php', array('id'=>$courseid))); $PAGE->set_context($context); $PAGE->set_pagelayout('incourse'); @@ -120,6 +118,10 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { // Prepare the restore controller. We don't need a UI here as we will just use what // ever the restore has (the user has just chosen). $rc = new restore_controller($backupid, $course->id, backup::INTERACTIVE_YES, backup::MODE_IMPORT, $USER->id, $restoretarget); + + // Start a progress section for the restore, which will consist of 2 steps + // (the precheck and then the actual restore). + $progress->start_progress('Restore process', 2); $rc->set_progress($progress); // Convert the backup if required.... it should NEVER happed if ($rc->get_status() == backup::STATUS_REQUIRE_CONV) { @@ -155,6 +157,9 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { // Delete the temp directory now fulldelete($tempdestination); + // End restore section of progress tracking (restore/precheck). + $progress->end_progress(); + // All progress complete. Hide progress area. $progress->end_progress(); echo html_writer::end_div(); @@ -182,11 +187,6 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { $backup->save_controller(); } -// Adjust the page for the stage -$PAGE->set_title($heading.': '.$backup->get_stage_name()); -$PAGE->set_heading($heading.': '.$backup->get_stage_name()); -$PAGE->navbar->add($backup->get_stage_name()); - // Display the current stage echo $OUTPUT->header(); if ($backup->enforce_changed_dependencies()) { diff --git a/backup/moodle2/backup_stepslib.php b/backup/moodle2/backup_stepslib.php index e2f47f6498c..922318c349b 100644 --- a/backup/moodle2/backup_stepslib.php +++ b/backup/moodle2/backup_stepslib.php @@ -307,6 +307,7 @@ abstract class backup_block_structure_step extends backup_structure_step { class backup_module_structure_step extends backup_structure_step { protected function define_structure() { + global $DB; // Define each element separated @@ -339,12 +340,14 @@ class backup_module_structure_step extends backup_structure_step { $availinfo->add_child($availabilityfield); // Set the sources - $module->set_source_sql(' - SELECT cm.*, m.version, m.name AS modulename, s.id AS sectionid, s.section AS sectionnumber + $concat = $DB->sql_concat("'mod_'", 'm.name'); + $module->set_source_sql(" + SELECT cm.*, cp.value AS version, m.name AS modulename, s.id AS sectionid, s.section AS sectionnumber FROM {course_modules} cm JOIN {modules} m ON m.id = cm.module + JOIN {config_plugins} cp ON cp.plugin = $concat AND cp.name = 'version' JOIN {course_sections} s ON s.id = cm.section - WHERE cm.id = ?', array(backup::VAR_MODID)); + WHERE cm.id = ?", array(backup::VAR_MODID)); $availability->set_source_table('course_modules_availability', array('coursemoduleid' => backup::VAR_MODID)); $availabilityfield->set_source_sql(' @@ -1363,7 +1366,7 @@ class backup_block_instance_structure_step extends backup_structure_step { } $blockrec->contextid = $this->task->get_contextid(); // Get the version of the block - $blockrec->version = $DB->get_field('block', 'version', array('name' => $this->task->get_blockname())); + $blockrec->version = get_config('block_'.$this->task->get_blockname(), 'version'); // Define sources @@ -1499,10 +1502,16 @@ class move_inforef_annotations_to_final extends backup_execution_step { // Items we want to include in the inforef file $items = backup_helper::get_inforef_itemnames(); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name(), count($items)); + $done = 1; foreach ($items as $itemname) { // Delegate to dbops - backup_structure_dbops::move_annotations_to_final($this->get_backupid(), $itemname); + backup_structure_dbops::move_annotations_to_final($this->get_backupid(), + $itemname, $progress); + $progress->progress($done++); } + $progress->end_progress(); } } @@ -1667,7 +1676,11 @@ class backup_main_structure_step extends backup_structure_step { /** * Execution step that will generate the final zip (.mbz) file with all the contents */ -class backup_zip_contents extends backup_execution_step { +class backup_zip_contents extends backup_execution_step implements file_progress { + /** + * @var bool True if we have started tracking progress + */ + protected $startedprogress; protected function define_execution() { @@ -1694,8 +1707,34 @@ class backup_zip_contents extends backup_execution_step { $zippacker = get_file_packer('application/zip'); // Zip files - $zippacker->archive_to_pathname($files, $zipfile); + $zippacker->archive_to_pathname($files, $zipfile, true, $this); + + // If any progress happened, end it. + if ($this->startedprogress) { + $this->task->get_progress()->end_progress(); + } } + + /** + * Implementation for file_progress interface to display unzip progress. + * + * @param int $progress Current progress + * @param int $max Max value + */ + public function progress($progress = file_progress::INDETERMINATE, $max = file_progress::INDETERMINATE) { + $reporter = $this->task->get_progress(); + + // Start tracking progress if necessary. + if (!$this->startedprogress) { + $reporter->start_progress('extract_file_to_dir', ($max == file_progress::INDETERMINATE) + ? core_backup_progress::INDETERMINATE : $max); + $this->startedprogress = true; + } + + // Pass progress through to whatever handles it. + $reporter->progress(($progress == file_progress::INDETERMINATE) + ? core_backup_progress::INDETERMINATE : $progress); + } } /** @@ -1955,6 +1994,8 @@ class backup_annotate_all_user_files extends backup_execution_step { // Fetch all annotated (final) users $rs = $DB->get_recordset('backup_ids_temp', array( 'backupid' => $this->get_backupid(), 'itemname' => 'userfinal')); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name()); foreach ($rs as $record) { $userid = $record->itemid; $userctx = context_user::instance($userid, IGNORE_MISSING); @@ -1966,8 +2007,10 @@ class backup_annotate_all_user_files extends backup_execution_step { // We don't need to specify itemid ($userid - 5th param) as far as by // context we can get all the associated files. See MDL-22092 backup_structure_dbops::annotate_files($this->get_backupid(), $userctx->id, 'user', $filearea, null); + $progress->progress(); } } + $progress->end_progress(); $rs->close(); } } diff --git a/backup/moodle2/restore_stepslib.php b/backup/moodle2/restore_stepslib.php index 444f9cf7b9c..1afa5232cd8 100644 --- a/backup/moodle2/restore_stepslib.php +++ b/backup/moodle2/restore_stepslib.php @@ -594,13 +594,17 @@ class restore_load_included_inforef_records extends restore_execution_step { // Get all the included tasks $tasks = restore_dbops::get_included_tasks($this->get_restoreid()); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name(), count($tasks)); foreach ($tasks as $task) { // Load the inforef.xml file if exists $inforefpath = $task->get_taskbasepath() . '/inforef.xml'; if (file_exists($inforefpath)) { - restore_dbops::load_inforef_to_tempids($this->get_restoreid(), $inforefpath); // Load each inforef file to temp_ids + // Load each inforef file to temp_ids. + restore_dbops::load_inforef_to_tempids($this->get_restoreid(), $inforefpath, $progress); } } + $progress->end_progress(); } } @@ -687,7 +691,8 @@ class restore_load_included_users extends restore_execution_step { return; } $file = $this->get_basepath() . '/users.xml'; - restore_dbops::load_users_to_tempids($this->get_restoreid(), $file); // Load needed users to temp_ids + // Load needed users to temp_ids. + restore_dbops::load_users_to_tempids($this->get_restoreid(), $file, $this->task->get_progress()); } } @@ -708,7 +713,8 @@ class restore_process_included_users extends restore_execution_step { if (!$this->task->get_setting_value('users')) { // No userinfo being restored, nothing to do return; } - restore_dbops::process_included_users($this->get_restoreid(), $this->task->get_courseid(), $this->task->get_userid(), $this->task->is_samesite()); + restore_dbops::process_included_users($this->get_restoreid(), $this->task->get_courseid(), + $this->task->get_userid(), $this->task->is_samesite(), $this->task->get_progress()); } } diff --git a/backup/restore.php b/backup/restore.php index 6040d4b7639..d844f9fd2d6 100644 --- a/backup/restore.php +++ b/backup/restore.php @@ -43,18 +43,15 @@ if ($stage & restore_ui::STAGE_CONFIRM + restore_ui::STAGE_DESTINATION) { } } -$heading = $course->fullname; - -$PAGE->set_title($heading.': '.$restore->get_stage_name()); -$PAGE->set_heading($heading); -$PAGE->navbar->add($restore->get_stage_name()); +$PAGE->set_title($course->shortname . ': ' . get_string('restore')); +$PAGE->set_heading($course->fullname); $renderer = $PAGE->get_renderer('core','backup'); echo $OUTPUT->header(); // Prepare a progress bar which can display optionally during long-running // operations while setting up the UI. -$slowprogress = new core_backup_display_progress_if_slow(); +$slowprogress = new core_backup_display_progress_if_slow(get_string('preparingui', 'backup')); // Depending on the code branch above, $restore may be a restore_ui or it may // be a restore_ui_independent_stage. Either way, this function exists. $restore->set_progress_reporter($slowprogress); @@ -65,13 +62,20 @@ if (!$restore->is_independent() && $restore->enforce_changed_dependencies()) { } if (!$restore->is_independent()) { + // Use a temporary (disappearing) progress bar to show the precheck progress if any. + $precheckprogress = new core_backup_display_progress_if_slow(get_string('preparingdata', 'backup')); + $restore->get_controller()->set_progress($precheckprogress); if ($restore->get_stage() == restore_ui::STAGE_PROCESS && !$restore->requires_substage()) { try { - // Display an extra progress bar so that we can show the progress first. + // Div used to hide the 'progress' step once the page gets onto 'finished'. echo html_writer::start_div('', array('id' => 'executionprogress')); + // Show the current restore state (header with bolded item). echo $renderer->progress_bar($restore->get_progress_bar()); - $restore->get_controller()->set_progress(new core_backup_display_progress()); + // Start displaying the actual progress bar percentage. + $restore->get_controller()->set_progress(new core_backup_display_progress(true)); + // Do actual restore. $restore->execute(); + // Hide this section because we are now going to make the page show 'finished'. echo html_writer::end_div(); echo html_writer::script('document.getElementById("executionprogress").style.display = "none";'); } catch(Exception $e) { diff --git a/backup/util/dbops/backup_structure_dbops.class.php b/backup/util/dbops/backup_structure_dbops.class.php index 29529f0b6b6..61a903a9919 100644 --- a/backup/util/dbops/backup_structure_dbops.class.php +++ b/backup/util/dbops/backup_structure_dbops.class.php @@ -130,10 +130,16 @@ abstract class backup_structure_dbops extends backup_dbops { /** * Moves all the existing 'item' annotations to their final 'itemfinal' ones * for a given backup. + * + * @param string $backupid Backup ID + * @param string $itemname Item name + * @param core_backup_progress $progress Progress tracker */ - public static function move_annotations_to_final($backupid, $itemname) { + public static function move_annotations_to_final($backupid, $itemname, core_backup_progress $progress) { global $DB; + $progress->start_progress('move_annotations_to_final'); $rs = $DB->get_recordset('backup_ids_temp', array('backupid' => $backupid, 'itemname' => $itemname)); + $progress->progress(); foreach($rs as $annotation) { // If corresponding 'itemfinal' annotation does not exist, update 'item' to 'itemfinal' if (! $DB->record_exists('backup_ids_temp', array('backupid' => $backupid, @@ -141,10 +147,12 @@ abstract class backup_structure_dbops extends backup_dbops { 'itemid' => $annotation->itemid))) { $DB->set_field('backup_ids_temp', 'itemname', $itemname . 'final', array('id' => $annotation->id)); } + $progress->progress(); } $rs->close(); // All the remaining $itemname annotations can be safely deleted $DB->delete_records('backup_ids_temp', array('backupid' => $backupid, 'itemname' => $itemname)); + $progress->end_progress(); } /** diff --git a/backup/util/dbops/restore_dbops.class.php b/backup/util/dbops/restore_dbops.class.php index 0e5fabc7b70..b1561d83242 100644 --- a/backup/util/dbops/restore_dbops.class.php +++ b/backup/util/dbops/restore_dbops.class.php @@ -109,18 +109,34 @@ abstract class restore_dbops { /** * Load one inforef.xml file to backup_ids table for future reference + * + * @param string $restoreid Restore id + * @param string $inforeffile File path + * @param core_backup_progress $progress Progress tracker */ - public static function load_inforef_to_tempids($restoreid, $inforeffile) { + public static function load_inforef_to_tempids($restoreid, $inforeffile, + core_backup_progress $progress = null) { if (!file_exists($inforeffile)) { // Shouldn't happen ever, but... throw new backup_helper_exception('missing_inforef_xml_file', $inforeffile); } + + // Set up progress tracking (indeterminate). + if (!$progress) { + $progress = new core_backup_null_progress(); + } + $progress->start_progress('Loading inforef.xml file'); + // Let's parse, custom processor will do its work, sending info to DB $xmlparser = new progressive_parser(); $xmlparser->set_file($inforeffile); $xmlprocessor = new restore_inforef_parser_processor($restoreid); $xmlparser->set_processor($xmlprocessor); + $xmlparser->set_progress($progress); $xmlparser->process(); + + // Finish progress + $progress->end_progress(); } /** @@ -400,18 +416,34 @@ abstract class restore_dbops { /** * Load the needed users.xml file to backup_ids table for future reference + * + * @param string $restoreid Restore id + * @param string $usersfile File path + * @param core_backup_progress $progress Progress tracker */ - public static function load_users_to_tempids($restoreid, $usersfile) { + public static function load_users_to_tempids($restoreid, $usersfile, + core_backup_progress $progress = null) { if (!file_exists($usersfile)) { // Shouldn't happen ever, but... throw new backup_helper_exception('missing_users_xml_file', $usersfile); } + + // Set up progress tracking (indeterminate). + if (!$progress) { + $progress = new core_backup_null_progress(); + } + $progress->start_progress('Loading users into temporary table'); + // Let's parse, custom processor will do its work, sending info to DB $xmlparser = new progressive_parser(); $xmlparser->set_file($usersfile); $xmlprocessor = new restore_users_parser_processor($restoreid); $xmlparser->set_processor($xmlprocessor); + $xmlparser->set_progress($progress); $xmlparser->process(); + + // Finish progress. + $progress->end_progress(); } /** @@ -1385,8 +1417,15 @@ abstract class restore_dbops { * for each one (mapping / creation) and returning one array * of problems in case something is wrong (lack of permissions, * conficts) + * + * @param string $restoreid Restore id + * @param int $courseid Course id + * @param int $userid User id + * @param bool $samesite True if restore is to same site + * @param core_backup_progress $progress Progress reporter */ - public static function precheck_included_users($restoreid, $courseid, $userid, $samesite) { + public static function precheck_included_users($restoreid, $courseid, $userid, $samesite, + core_backup_progress $progress) { global $CFG, $DB; // To return any problem found @@ -1409,8 +1448,14 @@ abstract class restore_dbops { $cancreateuser = true; } + // Prepare for reporting progress. + $conditions = array('backupid' => $restoreid, 'itemname' => 'user'); + $max = $DB->count_records('backup_ids_temp', $conditions); + $done = 0; + $progress->start_progress('Checking users', $max); + // Iterate over all the included users - $rs = $DB->get_recordset('backup_ids_temp', array('backupid' => $restoreid, 'itemname' => 'user'), '', 'itemid, info'); + $rs = $DB->get_recordset('backup_ids_temp', $conditions, '', 'itemid, info'); foreach ($rs as $recuser) { $user = (object)backup_controller_dbops::decode_backup_temp_info($recuser->info); @@ -1447,8 +1492,11 @@ abstract class restore_dbops { } else { // Shouldn't arrive here ever, something is for sure wrong. Exception throw new restore_dbops_exception('restore_error_processing_user', $user->username); } + $done++; + $progress->progress($done); } $rs->close(); + $progress->end_progress(); return $problems; } @@ -1458,12 +1506,19 @@ abstract class restore_dbops { * * Just wrap over precheck_included_users(), returning * exception if any problem is found + * + * @param string $restoreid Restore id + * @param int $courseid Course id + * @param int $userid User id + * @param bool $samesite True if restore is to same site + * @param core_backup_progress $progress Optional progress tracker */ - public static function process_included_users($restoreid, $courseid, $userid, $samesite) { + public static function process_included_users($restoreid, $courseid, $userid, $samesite, + core_backup_progress $progress = null) { global $DB; // Just let precheck_included_users() to do all the hard work - $problems = self::precheck_included_users($restoreid, $courseid, $userid, $samesite); + $problems = self::precheck_included_users($restoreid, $courseid, $userid, $samesite, $progress); // With problems, throw exception, shouldn't happen if prechecks were originally // executed, so be radical here. diff --git a/backup/util/helper/restore_prechecks_helper.class.php b/backup/util/helper/restore_prechecks_helper.class.php index 95bc9685846..a80a80b3055 100644 --- a/backup/util/helper/restore_prechecks_helper.class.php +++ b/backup/util/helper/restore_prechecks_helper.class.php @@ -43,7 +43,7 @@ abstract class restore_prechecks_helper { * * Returns empty array or warnings/errors array */ - public static function execute_prechecks($controller, $droptemptablesafter = false) { + public static function execute_prechecks(restore_controller $controller, $droptemptablesafter = false) { global $CFG; $errors = array(); @@ -57,16 +57,31 @@ abstract class restore_prechecks_helper { $courseid = $controller->get_courseid(); $userid = $controller->get_userid(); $rolemappings = $controller->get_info()->role_mappings; + $progress = $controller->get_progress(); + + // Start tracking progress. There are currently 8 major steps, corresponding + // to $majorstep++ lines in this code; we keep track of the total so as to + // verify that it's still correct. If you add a major step, you need to change + // the total here. + $majorstep = 1; + $majorsteps = 8; + $progress->start_progress('Carrying out pre-restore checks', $majorsteps); + // Load all the included tasks to look for inforef.xml files $inforeffiles = array(); $tasks = restore_dbops::get_included_tasks($restoreid); + $progress->start_progress('Listing inforef files', count($tasks)); + $minorstep = 1; foreach ($tasks as $task) { // Add the inforef.xml file if exists $inforefpath = $task->get_taskbasepath() . '/inforef.xml'; if (file_exists($inforefpath)) { $inforeffiles[] = $inforefpath; } + $progress->progress($minorstep++); } + $progress->end_progress(); + $progress->progress($majorstep++); // Create temp tables restore_controller_dbops::create_restore_temp_tables($controller->get_restoreid()); @@ -108,18 +123,31 @@ abstract class restore_prechecks_helper { } // Load all the inforef files, we are going to need them + $progress->start_progress('Loading temporary IDs', count($inforeffiles)); + $minorstep = 1; foreach ($inforeffiles as $inforeffile) { - restore_dbops::load_inforef_to_tempids($restoreid, $inforeffile); // Load each inforef file to temp_ids + // Load each inforef file to temp_ids. + restore_dbops::load_inforef_to_tempids($restoreid, $inforeffile, $progress); + $progress->progress($minorstep++); } + $progress->end_progress(); + $progress->progress($majorstep++); // If restoring users, check we are able to create all them if ($restoreusers) { $file = $controller->get_plan()->get_basepath() . '/users.xml'; - restore_dbops::load_users_to_tempids($restoreid, $file); // Load needed users to temp_ids - if ($problems = restore_dbops::precheck_included_users($restoreid, $courseid, $userid, $samesite)) { + // Load needed users to temp_ids. + restore_dbops::load_users_to_tempids($restoreid, $file, $progress); + $progress->progress($majorstep++); + if ($problems = restore_dbops::precheck_included_users($restoreid, $courseid, $userid, $samesite, $progress)) { $errors = array_merge($errors, $problems); } + } else { + // To ensure consistent number of steps in progress tracking, + // mark progress even though we didn't do anything. + $progress->progress($majorstep++); } + $progress->progress($majorstep++); // Note: restore won't create roles at all. Only mapping/skip! $file = $controller->get_plan()->get_basepath() . '/roles.xml'; @@ -128,6 +156,7 @@ abstract class restore_prechecks_helper { $errors = array_key_exists('errors', $problems) ? array_merge($errors, $problems['errors']) : $errors; $warnings = array_key_exists('warnings', $problems) ? array_merge($warnings, $problems['warnings']) : $warnings; } + $progress->progress($majorstep++); // Check we are able to restore and the categories and questions $file = $controller->get_plan()->get_basepath() . '/questions.xml'; @@ -136,8 +165,9 @@ abstract class restore_prechecks_helper { $errors = array_key_exists('errors', $problems) ? array_merge($errors, $problems['errors']) : $errors; $warnings = array_key_exists('warnings', $problems) ? array_merge($warnings, $problems['warnings']) : $warnings; } + $progress->progress($majorstep++); - // Prepare results and return + // Prepare results. $results = array(); if (!empty($errors)) { $results['errors'] = $errors; @@ -149,6 +179,14 @@ abstract class restore_prechecks_helper { if (!empty($results) || $droptemptablesafter) { restore_controller_dbops::drop_restore_temp_tables($controller->get_restoreid()); } + + // Finish progress and check we got the initial number of steps right. + $progress->progress($majorstep++); + if ($majorstep != $majorsteps) { + throw new coding_exception('Progress step count wrong: ' . $majorstep); + } + $progress->end_progress(); + return $results; } } diff --git a/backup/util/plan/backup_structure_step.class.php b/backup/util/plan/backup_structure_step.class.php index 9c3d0e719fe..5ff5d086637 100644 --- a/backup/util/plan/backup_structure_step.class.php +++ b/backup/util/plan/backup_structure_step.class.php @@ -73,7 +73,9 @@ abstract class backup_structure_step extends backup_step { // from xml_writer (blame serialized data!) } $xw = new xml_writer($xo, $xt); - $pr = new backup_structure_processor($xw); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name()); + $pr = new backup_structure_processor($xw, $progress); // Set processor variables from settings foreach ($this->get_settings() as $setting) { @@ -105,6 +107,7 @@ abstract class backup_structure_step extends backup_step { // Close everything $xw->stop(); + $progress->end_progress(); // Destroy the structure. It helps PHP 5.2 memory a lot! $structure->destroy(); diff --git a/backup/util/plan/restore_structure_step.class.php b/backup/util/plan/restore_structure_step.class.php index 0fb1a4070f5..822c71b493c 100644 --- a/backup/util/plan/restore_structure_step.class.php +++ b/backup/util/plan/restore_structure_step.class.php @@ -101,8 +101,14 @@ abstract class restore_structure_step extends restore_step { $xmlprocessor->add_path($element->get_path(), $element->is_grouped()); } + // Set up progress tracking. + $progress = $this->get_task()->get_progress(); + $progress->start_progress($this->get_name(), core_backup_progress::INDETERMINATE); + $xmlparser->set_progress($progress); + // And process it, dispatch to target methods in step will start automatically $xmlparser->process(); + $progress->end_progress(); // Have finished, launch the after_execute method of all the processing objects $this->launch_after_execute_methods(); diff --git a/backup/util/plan/tests/step_test.php b/backup/util/plan/tests/step_test.php index 44afd8d74c1..ed7a70b94a1 100644 --- a/backup/util/plan/tests/step_test.php +++ b/backup/util/plan/tests/step_test.php @@ -132,6 +132,9 @@ class backup_step_testcase extends advanced_testcase { // Remove the test dir and any content @remove_dir(dirname($file)); + + // Clear the time limit, otherwise PHPUnit complains. + set_time_limit(0); } /** diff --git a/backup/util/progress/core_backup_display_progress_if_slow.class.php b/backup/util/progress/core_backup_display_progress_if_slow.class.php index ee9511e75ff..fdf8cfc6f98 100644 --- a/backup/util/progress/core_backup_display_progress_if_slow.class.php +++ b/backup/util/progress/core_backup_display_progress_if_slow.class.php @@ -43,6 +43,11 @@ class core_backup_display_progress_if_slow extends core_backup_display_progress */ protected $id; + /** + * @var string Text to display in heading if bar appears + */ + protected $heading; + /** * @var int Time at which the progress bar should display (if it isn't yet) */ @@ -52,23 +57,38 @@ class core_backup_display_progress_if_slow extends core_backup_display_progress * Constructs the progress reporter. This will not output HTML just yet, * until the required delay time expires. * + * @param string $heading Text to display above bar (if it appears); '' for none * @param int $delay Delay time (default 5 seconds) */ - public function __construct($delay = self::DEFAULT_DISPLAY_DELAY) { + public function __construct($heading, $delay = self::DEFAULT_DISPLAY_DELAY) { // Set start time based on delay. $this->starttime = time() + $delay; + $this->heading = $heading; parent::__construct(false); } /** - * Adds a div around the parent display so it can be hidden. + * Starts displaying the progress bar, with optional heading and a special + * div so it can be hidden later. * * @see core_backup_display_progress::start_html() */ public function start_html() { + global $OUTPUT; $this->id = 'core_backup_display_progress_if_slow' . self::$nextid; self::$nextid++; - echo html_writer::start_div('', array('id' => $this->id)); + + // Containing div includes a CSS class so that it can be themed if required, + // and an id so it can be automatically hidden at end. + echo html_writer::start_div('core_backup_display_progress_if_slow', + array('id' => $this->id)); + + // Display optional heading. + if ($this->heading !== '') { + echo $OUTPUT->heading($this->heading, 3); + } + + // Use base class to display progress bar. parent::start_html(); } diff --git a/backup/util/structure/backup_structure_processor.class.php b/backup/util/structure/backup_structure_processor.class.php index 3c648545dd9..88cfeca3cee 100644 --- a/backup/util/structure/backup_structure_processor.class.php +++ b/backup/util/structure/backup_structure_processor.class.php @@ -37,9 +37,21 @@ class backup_structure_processor extends base_processor { protected $writer; // xml_writer where the processor is going to output data protected $vars; // array of backup::VAR_XXX => helper value pairs to be used by source specifications - public function __construct(xml_writer $writer) { + /** + * @var core_backup_progress Progress tracker (null if none) + */ + protected $progress; + + /** + * Constructor. + * + * @param xml_writer $writer XML writer to save data + * @param core_backup_progress $progress Progress tracker (optional) + */ + public function __construct(xml_writer $writer, core_backup_progress $progress = null) { $this->writer = $writer; - $this->vars = array(); + $this->progress = $progress; + $this->vars = array(); } public function set_var($key, $value) { @@ -83,6 +95,9 @@ class backup_structure_processor extends base_processor { public function post_process_nested_element(base_nested_element $nested) { // Send close tag to xml_writer $this->writer->end_tag($nested->get_name()); + if ($this->progress) { + $this->progress->progress(); + } } public function process_final_element(base_final_element $final) { @@ -93,6 +108,9 @@ class backup_structure_processor extends base_processor { $attrarr[$attribute->get_name()] = $attribute->get_value(); } $this->writer->full_tag($final->get_name(), $final->get_value(), $attrarr); + if ($this->progress) { + $this->progress->progress(); + } // Annotate current value if configured to do so $final->annotate($this->get_var(backup::VAR_BACKUPID)); } diff --git a/backup/util/ui/base_moodleform.class.php b/backup/util/ui/base_moodleform.class.php index 04ccc81fe9b..a252ec396ca 100644 --- a/backup/util/ui/base_moodleform.class.php +++ b/backup/util/ui/base_moodleform.class.php @@ -330,7 +330,7 @@ abstract class base_moodleform extends moodleform { * Displays the form */ public function display() { - global $PAGE; + global $PAGE, $COURSE; $this->require_definition_after_data(); @@ -342,8 +342,13 @@ abstract class base_moodleform extends moodleform { $config->closeButtonTitle = get_string('close', 'editor'); $PAGE->requires->yui_module('moodle-backup-confirmcancel', 'M.core_backup.watch_cancel_buttons', array($config)); + // Get list of module types on course. + $modinfo = get_fast_modinfo($COURSE); + $modnames = $modinfo->get_used_module_names(true); $PAGE->requires->yui_module('moodle-backup-backupselectall', 'M.core_backup.select_all_init', - array(array('select' => get_string('select'), 'all' => get_string('all'), 'none' => get_string('none')))); + array($modnames)); + $PAGE->requires->strings_for_js(array('select', 'all', 'none'), 'moodle'); + $PAGE->requires->strings_for_js(array('showtypes', 'hidetypes'), 'backup'); parent::display(); } diff --git a/backup/util/ui/yui/backupselectall/backupselectall.js b/backup/util/ui/yui/backupselectall/backupselectall.js index 88aa33f143c..8a41feb9838 100644 --- a/backup/util/ui/yui/backupselectall/backupselectall.js +++ b/backup/util/ui/yui/backupselectall/backupselectall.js @@ -6,15 +6,23 @@ M.core_backup = M.core_backup || {}; /** * Adds select all/none links to the top of the backup/restore/import schema page. */ -M.core_backup.select_all_init = function(str) { +M.core_backup.select_all_init = function(modnames) { var formid = null; - var helper = function(e, check, type) { + var helper = function(e, check, type, mod) { e.preventDefault(); + var prefix = ''; + if (typeof mod !== 'undefined') { + prefix = 'setting_activity_' + mod + '_'; + } var len = type.length; Y.all('input[type="checkbox"]').each(function(checkbox) { var name = checkbox.get('name'); + // If a prefix has been set, ignore checkboxes which don't have that prefix. + if (prefix && name.substring(0, prefix.length) !== prefix) { + return; + } if (name.substring(name.length - len) == type) { checkbox.set('checked', check); } @@ -28,13 +36,17 @@ M.core_backup.select_all_init = function(str) { } }; - var html_generator = function(classname, idtype) { + var html_generator = function(classname, idtype, heading, extra) { + if (typeof extra === 'undefined') { + extra = ''; + } return '
' + - '
' + - '
' + str.select + '
' + + '
' + + '
' + heading + '
' + '' + '
' + '
'; @@ -62,13 +74,80 @@ M.core_backup.select_all_init = function(str) { } }); - var html = html_generator('include_setting section_level', 'included'); + // Add global select all/none options. + var html = html_generator('include_setting section_level', 'included', M.util.get_string('select', 'moodle'), + ' (' + M.util.get_string('showtypes', 'backup') + ')'); if (withuserdata) { - html += html_generator('normal_setting', 'userdata'); + html += html_generator('normal_setting', 'userdata', M.util.get_string('select', 'moodle')); } var links = Y.Node.create('
' + html + '
'); firstsection.insert(links, 'before'); + // Add select all/none for each module type. + var initlinks = function(links, mod) { + Y.one('#backup-all-mod_' + mod).on('click', function(e) { helper(e, true, '_included', mod); }); + Y.one('#backup-none-mod_' + mod).on('click', function(e) { helper(e, false, '_included', mod); }); + if (withuserdata) { + Y.one('#backup-all-userdata-mod_' + mod).on('click', function(e) { helper(e, true, withuserdata, mod); }); + Y.one('#backup-none-userdata-mod_' + mod).on('click', function(e) { helper(e, false, withuserdata, mod); }); + } + }; + + // For each module type on the course, add hidden select all/none options. + var modlist = Y.Node.create(''); + toolbar.append(group); + } + button = Y.Node.create(''); - toolbar.append(button); + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -215,20 +231,36 @@ M.editor_atto = M.editor_atto || { /** * Add a button to the toolbar belonging to the editor for element with id "elementid". * @param string elementid - the id of the textarea we created this editor from. - * @param string plugin - the plugin defining the button - * @param string icon - the html used for the content of the button + * @param string plugin - the plugin defining the button. + * @param string icon - the html used for the content of the button. + * @param string groupname - the group the button should be appended to. * @handler function handler- A function to call when the button is clicked. */ - add_toolbar_button : function(elementid, plugin, icon, handler) { - var toolbar = Y.one('#' + elementid + '_toolbar'); - var button = Y.Node.create(''); + add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { + var toolbar = Y.one('#' + elementid + '_toolbar'), + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'), + button, + currentfocus; - toolbar.append(button); + if (!group) { + group = Y.Node.create('
'); + toolbar.append(group); + } + button = Y.Node.create(''); + + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // We only need to attach this once. if (!M.editor_atto.buttonhandlers[plugin]) { @@ -282,7 +314,7 @@ M.editor_atto = M.editor_atto || { 'spellcheck="true" ' + 'class="editor_atto"/>'); var cssfont = ''; - var toolbar = Y.Node.create('
'); + var toolbar = Y.Node.create('")),M.editor_atto.buttonhandlers[n+"_action_"+a]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+a),M.editor_atto.buttonhandlers[n+"_action_"+a]=f.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var l=new M.core.dialogue({bodyContent:u,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:o,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=l,l.render(),l.hide(),l.headerNode.hide()},add_toolbar_button:function(t,n,r,i){var s=e.one("#"+t+"_toolbar"),o=e.Node.create('");s.append(o),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=i),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
'),i="",s=e.Node.create('
'),o=e.io(t.content_css,{sync:!0}),u=o.responseText.indexOf("font:");u&&(i=o.responseText.substring(u+"font:".length,o.responseText.length-1),r.setStyle("font",i)),r.setStyle("minHeight",1.2*(n.getAttribute("rows")-1)+"em"),r.append(n.get("value")),n.get("parentNode").insert(s,n),n.get("parentNode").insert(r,n),r.setStyle("color",n.getStyle("color")),r.setStyle("lineHeight",n.getStyle("lineHeight")),r.setStyle("fontSize",n.getStyle("fontSize")),n.hide(),r.on("blur",function(){n.set("value",r.getHTML())}),M.editor_atto.filepickeroptions[t.elementid]=t.filepickeroptions},show_filepicker:function(t,n,r){e.use("core_filepicker",function(e){var i=M.editor_atto.filepickeroptions[t][n];i.formcallback=r,i.editor_target=e.one(t),M.core_filepicker.show(e,i)})},get_selection_from_node:function(e){var t;return window.getSelection?(t=document.createRange(),t.setStartBefore(e.getDOMNode()),t.setEndAfter(e.getDOMNode()),[t]):document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getDOMNode()),t):!1},get_selection:function(){if(window.getSelection){var e=window.getSelection(),t=[],n=0;for(n=0;n0)return e[0].commonAncestorContainer},get_selection_text:function(){var e=M.editor_atto.get_selection();if(e.length>0&&e[0].cloneContents)return e[0].cloneContents()},set_selection:function(e){var t,n;if(window.getSelection){t=window.getSelection(),t.removeAllRanges();for(n=0;n
'),o.append(u)),f=e.Node.create('"),u.append(f),a=o.getAttribute("aria-activedescendant"),a||(f.setAttribute("tabindex","0"),o.setAttribute("aria-activedescendant",f.generateID())),M.editor_atto.widgets[n]=n;var l=e.Node.create('
'),c=0,h={};for(c=0;c'+h.text+""+"
")),M.editor_atto.buttonhandlers[n+"_action_"+c]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+c),M.editor_atto.buttonhandlers[n+"_action_"+c]=h.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var p=new M.core.dialogue({bodyContent:l,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:f,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=p,p.render(),p.hide(),p.headerNode.hide()},add_toolbar_button:function(t,n,r,i,s){var o=e.one("#"+t+"_toolbar"),u=e.one("#"+t+"_toolbar .atto_group."+i+"_group"),a,f;u||(u=e.Node.create('
'),o.append(u)),a=e.Node.create('"),u.append(a),f=o.getAttribute("aria-activedescendant"),f||(a.setAttribute("tabindex","0"),o.setAttribute("aria-activedescendant",a.generateID())),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=s),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
'),i="",s=e.Node.create(''); + toolbar.append(group); + } + button = Y.Node.create(''); - toolbar.append(button); + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -215,20 +231,36 @@ M.editor_atto = M.editor_atto || { /** * Add a button to the toolbar belonging to the editor for element with id "elementid". * @param string elementid - the id of the textarea we created this editor from. - * @param string plugin - the plugin defining the button - * @param string icon - the html used for the content of the button + * @param string plugin - the plugin defining the button. + * @param string icon - the html used for the content of the button. + * @param string groupname - the group the button should be appended to. * @handler function handler- A function to call when the button is clicked. */ - add_toolbar_button : function(elementid, plugin, icon, handler) { - var toolbar = Y.one('#' + elementid + '_toolbar'); - var button = Y.Node.create(''); + add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { + var toolbar = Y.one('#' + elementid + '_toolbar'), + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'), + button, + currentfocus; - toolbar.append(button); + if (!group) { + group = Y.Node.create('
'); + toolbar.append(group); + } + button = Y.Node.create(''); + + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // We only need to attach this once. if (!M.editor_atto.buttonhandlers[plugin]) { @@ -282,7 +314,7 @@ M.editor_atto = M.editor_atto || { 'spellcheck="true" ' + 'class="editor_atto"/>'); var cssfont = ''; - var toolbar = Y.Node.create('
'); + var toolbar = Y.Node.create(''); + toolbar.append(group); + } + button = Y.Node.create(''); - toolbar.append(button); + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -213,20 +229,36 @@ M.editor_atto = M.editor_atto || { /** * Add a button to the toolbar belonging to the editor for element with id "elementid". * @param string elementid - the id of the textarea we created this editor from. - * @param string plugin - the plugin defining the button - * @param string icon - the html used for the content of the button + * @param string plugin - the plugin defining the button. + * @param string icon - the html used for the content of the button. + * @param string groupname - the group the button should be appended to. * @handler function handler- A function to call when the button is clicked. */ - add_toolbar_button : function(elementid, plugin, icon, handler) { - var toolbar = Y.one('#' + elementid + '_toolbar'); - var button = Y.Node.create(''); + add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { + var toolbar = Y.one('#' + elementid + '_toolbar'), + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'), + button, + currentfocus; - toolbar.append(button); + if (!group) { + group = Y.Node.create('
'); + toolbar.append(group); + } + button = Y.Node.create(''); + + group.append(button); + + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } // We only need to attach this once. if (!M.editor_atto.buttonhandlers[plugin]) { @@ -280,7 +312,7 @@ M.editor_atto = M.editor_atto || { 'spellcheck="true" ' + 'class="editor_atto"/>'); var cssfont = ''; - var toolbar = Y.Node.create('
'); + var toolbar = Y.Node.create('"),n=e.UA.ie,r=n&&n<8?"rect(1px 1px 1px 1px)":"rect(1px, 1px, 1px, 1px)";return t.setStyle("position","absolute"),t.setStyle("height","1px"),t.setStyle("width","1px"),t.setStyle("overflow","hidden"),t.setStyle("clip",r),t},syncUI:function(){this._redraw()},bindUI:function(){this.after("tooltipChange",e.bind(this._tooltipChangeHandler,this)),this.after("widthChange",this._sizeChanged),this.after("heightChange",this._sizeChanged),this.after("groupMarkersChange",this._groupMarkersChangeHandler);var t=this.get("tooltip"),n="mouseout",o="mouseover",u=this.get("contentBox"),f=this.get("interactionType"),l=0,c,h="."+a,p=r&&"ontouchstart"in r&&!(e.UA.chrome&&e.UA.chrome<6);e.on("keydown",e.bind(function(e){var t=e.keyCode,n=parseFloat(t),r;n>36&&n<41&&(e.halt(),r=this._getAriaMessage(n),this._liveRegion.setContent(""),this._liveRegion.appendChild(i.createTextNode(r)))},this),this.get("contentBox")),f==="marker"?(n=t.hideEvent,o=t.showEvent,p?(e.delegate("touchend",e.bind(this._markerEventDispatcher,this),u,h),e.on("touchend",e.bind(function(e){u.contains(e.target)&&e.halt(!0),this._activeMarker&&(this._activeMarker=null,this.hideTooltip(e))},this))):(e.delegate("mouseenter",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousedown",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseup",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseleave",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("click",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousemove",e.bind(this._positionTooltip,this),u,h))):f==="planar"&&(p?this._overlay.on("touchend",e.bind(this._planarEventDispatcher,this)):(this._overlay.on("mousemove",e.bind(this._planarEventDispatcher,this)),this.on("mouseout",this.hideTooltip)));if(t){this.on("markerEvent:touchend",e.bind(function(e){var n=e.series.get("markers")[e.index];this._activeMarker&&n===this._activeMarker?(this._activeMarker=null,this.hideTooltip(e)):(this._activeMarker=n,t.markerEventHandler.apply(this,[e]))},this));if(n&&o&&n===o)this.on(f+"Event:"+n,this.toggleTooltip);else{o&&this.on(f+"Event:"+o,t[f+"EventHandler"]);if(n){if(s.isArray(n)){c=n.length;for(;l=T[h].start){p=h;break}N=l.length;for(h=0;h-1&&c.updateMarkerState("mouseout",d),C&&C[p]>-1&&(w&&!isNaN(p)&&p>-1&&c.updateMarkerState("mouseover",p),v=this.getSeriesItems(c,p),g.push(v.category),y.push(v.value),m.push(c));this._selectedIndex=p,p>-1?this.fire("planarEvent:mouseover",{categoryItem:g,valueItem:y,x:u,y:a,pageX:s,pageY:o,items:m,index:p,originEvent:e}):this.fire("planarEvent:mouseout")}},_type:"combo",_itemRenderQueue:null,_addToAxesRenderQueue:function(t){this._itemRenderQueue||(this._itemRenderQueue=[]),e.Array.indexOf(this._itemRenderQueue,t)<0&&this._itemRenderQueue.push(t)},_addToAxesCollection:function(e,t){var n=this.get(e+"AxesCollection");n||(n=[],this.set(e+"AxesCollection",n)),n.push(t)},_getDefaultSeriesCollection:function(){var e,t=this.get("dataProvider");return t&&(e=this._parseSeriesCollection()),e},_parseSeriesCollection:function(t){var n=this.get("direction"),r=this.get("styles").series,i=r&&s.isArray(r),o,u,a,f=[],l,c,h=[],p,d=this.get("seriesKeys").concat(),v,m,g,y=this.get("type"),b,w,E,S,x=[],T=this.get("categoryKey"),N=this.get("showMarkers"),C=this.get("showAreaFill"),k=this.get("showLines");t=t?t.concat():[],n==="vertical"?(l="yAxis",w="yKey",c="xAxis",E="xKey"):(l="xAxis",w="xKey",c="yAxis",E="yKey"),g=t.length;while(t&&t.length>0)p=t.shift(),b=this._getBaseAttribute(p,E),b?(m=e.Array.indexOf(d,b),m>-1?(d.splice(m,1),h.push(b),f.push(p)):x.push(p)):x.push(p);while(x.length>0)p=x.shift(),d.length>0?(b=d.shift(),this._setBaseAttribute(p,E,b),h.push(b),f.push(p)):p instanceof e.CartesianSeries&&p.destroy(!0);d.length>0&&(h=h.concat(d)),g=h.length;for(v=0;v0&&f.set("overlapGraph",!1),r[u]=f)}return r},_addAxes:function(){var t=this.get("axes"),n,r,i,s=this.get("width"),o=this.get("height"),u=e.Node.one(this._parentNode);this._axesCollection||(this._axesCollection=[]);for(n in t)t.hasOwnProperty(n)&&(r=t[n],r instanceof e.Axis&&(s||(this.set("width",u.get("offsetWidth")),s=this.get("width")),o||(this.set("height",u.get("offsetHeight")),o=this.get("height")),this._addToAxesRenderQueue(r),i=r.get("position"),this.get(i+"AxesCollection")?this.get(i+"AxesCollection").push(r):this.set(i+"AxesCollection",[r]),this._axesCollection.push(r),r.get("keys").hasOwnProperty(this.get("categoryKey"))&&this.set("categoryAxis",r),r.render(this.get("contentBox"))))},_addSeries:function(){var e=this.get("graph");e.render(this.get("contentBox"))},_addGridlines:function(){var t=this.get("graph"),n=this.get("horizontalGridlines"),r=this.get("verticalGridlines"),i=this.get("direction"),s=this.get("leftAxesCollection"),o=this.get("rightAxesCollection"),u=this.get("bottomAxesCollection"),a=this.get("topAxesCollection"),f,l=this.get("categoryAxis"),c,h;this._axesCollection&&(f=this._axesCollection.concat(),f.splice(e.Array.indexOf(f,l),1)),n&&(s&&s[0]?c=s[0]:o&&o[0]?c=o[0]:c=i==="horizontal"?l:f[0],!this._getBaseAttribute(n,"axis")&&c&&this._setBaseAttribute(n,"axis",c),this._getBaseAttribute(n,"axis")&&t.set("horizontalGridlines",n)),r&&(u&&u[0]?h=u[0]:a&&a[0]?h=a[0]:h=i==="vertical"?l:f[0],!this._getBaseAttribute(r,"axis")&&h&&this._setBaseAttribute(r,"axis",h),this._getBaseAttribute(r,"axis")&&t.set("verticalGridlines",r))},_getDefaultAxes:function(){var e;return this.get("dataProvider")&&(e=this._parseAxes()),e},_parseAxes:function(t){var n=this.get("categoryKey"),r,i,o,u={},a=[],f=[],l=this.get("categoryAxisName")||this.get("categoryKey"),c=this.get("valueAxisName"),h=this.get("seriesKeys").concat(),p,d,v,m,g,y=this.get("direction"),b,w,E=[],S=this.get("stacked")?"stacked":"numeric";y==="vertical"?(b="bottom",w="left"):(b="left",w="bottom");if(t)for(p in t)if(t.hasOwnProperty(p)){r=t[p],o=this._getBaseAttribute(r,"keys"),i=this._getBaseAttribute(r,"type");if(i==="time"||i==="category")l=p,this.set("categoryAxisName",p),s.isArray(o)&&o.length>0&&(n=o[0],this.set("categoryKey",n)),u[p]=r;else if(p===l)u[p]=r;else{u[p]=r;if(p!==c&&o&&s.isArray(o)){m=o.length;for(v=0;v-1&&h.splice(g,1),d=h.length;for(p=0;p-1&&(f=f.concat(a.splice(g,1)));a=f.concat(a),d=a.length;for(p=0;p-1&&h.splice(g,1);return u.hasOwnProperty(l)||(u[l]={}),this._getBaseAttribute(u[l],"keys")||this._setBaseAttribute(u[l],"keys",[n]),this._getBaseAttribute(u[l],"position")||this._setBaseAttribute(u[l],"position",w),this._getBaseAttribute(u[l],"type")||this._setBaseAttribute(u[l],"type",this.get("categoryType")),!u.hasOwnProperty(c)&&h&&h.length>0&&(u[c]={keys:h},E.push(u[c])),a.length>0&&(h.length>0?h=a.concat(h):h=a),u.hasOwnProperty(c)&&(this._getBaseAttribute(u[c],"position")||this._setBaseAttribute(u[c],"position",this._getDefaultAxisPosition(u[c],E,b)),this._setBaseAttribute(u[c],"type",S),this._setBaseAttribute(u[c],"keys",h)),this._wereSeriesKeysExplicitlySet()||this.set("seriesKeys",h,{src:"internal"}),u},_getDefaultAxisPosition:function(t,n,r){var i=this.get("direction"),s=e.Array.indexOf(n,t);return n[s-1]&&n[s-1].position&&(i==="horizontal"?n[s-1].position==="left"?r="right":n[s-1].position==="right"&&(r="left"):n[s-1].position==="bottom"?r="top":r="bottom"),r},getSeriesItems:function(e,t){var n=e.get("xAxis"),r=e.get("yAxis"),i=e.get("xKey"),s=e.get("yKey"),o,u;return this.get("direction")==="vertical"?(o={axis:r,key:s,value:r.getKeyValueAt(s,t)},u={axis:n,key:i,value:n.getKeyValueAt(i,t)}):(u={axis:r,key:s,value:r.getKeyValueAt(s,t)},o={axis:n,key:i,value:n.getKeyValueAt(i,t)}),o.displayName=e.get("categoryDisplayName"),u.displayName=e.get("valueDisplayName"),o.value=o.axis.getKeyValueAt(o.key,t),u.value=u.axis.getKeyValueAt(u.key,t),{category:o,value:u}},_sizeChanged:function(){if(this._axesCollection){var e=this._axesCollection,t=0,n=e.length;for(;t-1;--l)C.unshift(n),n+=o[l].get("width")}if(u){N=[],c=u.length,l=0;for(l=c-1;l>-1;--l)r+=u[l].get("width"),N.unshift(e-r)}if(a){k=[],c=a.length;for(l=c-1;l>-1;--l)k.unshift(i),i+=a[l].get("height")}if(f){L=[],c=f.length;for(l=c-1;l>-1;--l)s+=f[l].get("height"),L.unshift(t-s)}b=e-(n+r),w=t-(s+i),A.left=n,A.top=i,A.bottom=t-s,A.right=e-r;if(!x){v=this._getTopOverflow(o,u),m=this._getBottomOverflow(o,u),g=this._getLeftOverflow(f,a),y=this._getRightOverflow(f,a),T=v-i;if(T>0){A.top=v;if(k){l=0,c=k.length;for(;l0){A.bottom=t-m;if(L){l=0,c=L.length;for(;l0){A.left=g;if(C){l=0,c=C.length;for(;l0){A.right=e-y;if(N){l=0,c=N.length;for(;l1?(e===38?o=o<1?f-1:o-1:e===40&&(o=o>=f-1?0:o+1),this._itemIndex=-1):o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."):(o>-1?(t="",n=this.getSeries(parseInt(o,10))):(o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."),l=n._dataLength?n._dataLength:0,e===37?u=u>0?u-1:l-1:e===39&&(u=u>=l-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(n,u),i=r.category,s=r.value,i&&s&&i.value&&s.value?(t+=i.displayName+": "+i.axis.formatLabel.apply(this,[i.value,i.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", "):t+="No data available.",t+=u+1+" of "+l+". "),t}},{ATTRS:{allowContentOverflow:{value:!1},axesStyles:{lazyAdd:!1,getter:function(){var t=this.get("axes"),n,r=this._axesStyles;if(t)for(n in t)t.hasOwnProperty(n)&&t[n]instanceof e.Axis&&(r||(r={}),r[n]=t[n].get("styles"));return r},setter:function(e){var t=this.get("axes"),n;for(n in e)e.hasOwnProperty(n)&&t.hasOwnProperty(n)&&this._setBaseAttribute(t[n],"styles",e[n]);return e}},seriesStyles:{lazyAdd:!1,getter:function(){var e=this._seriesStyles,t=this.get("graph"),n,r;if(t){n=t.get("seriesDictionary");if(n){e={};for(r in n)n.hasOwnProperty(r)&&(e[r]=n[r].get("styles"))}}return e},setter:function(e){var t,n,r;if(s.isArray(e)){r=this.get("seriesCollection"),t=0,n=e.length;for(;t0?u-1:a-1:e===39&&(u=u>=a-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(i,u),n=r.category,s=r.value,f=i.getTotalValues(),l=Math.round(s.value/f*1e4)/100,n&&s?(t+=n.displayName+": "+n.axis.formatLabel.apply(this,[n.value,n.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", ",t+="Percent of total "+s.displayName+": "+ +l+"%,"):t+="No data available,",t+=u+1+" of "+a+". ",t}},{ATTRS:{ariaDescription:{value:"Use the left and right keys to navigate through items.",setter:function(e){return this._description&&(this._description.setContent(""),this._description.appendChild(i.createTextNode(e))),e}},axes:{getter:function(){return this._axes},setter:function(e){this._parseAxes(e)}},seriesCollection:{lazyAdd:!1,getter:function(){return this._getSeriesCollection()},setter:function(e){return this._setSeriesCollection(e)}},type:{value:"pie"}}}),e.Chart=l},"3.12.0",{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]}); diff --git a/lib/yuilib/3.9.1/build/charts-base/charts-base.js b/lib/yuilib/3.12.0/charts-base/charts-base.js similarity index 96% rename from lib/yuilib/3.9.1/build/charts-base/charts-base.js rename to lib/yuilib/3.12.0/charts-base/charts-base.js index f2c4816f973..cbd0f6dc6f8 100644 --- a/lib/yuilib/3.9.1/build/charts-base/charts-base.js +++ b/lib/yuilib/3.12.0/charts-base/charts-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('charts-base', function (Y, NAME) { /** @@ -1095,9 +1101,9 @@ ChartBase.ATTRS = { valueFn: function() { var defDataProvider = []; - if(!this._seriesKeysExplicitlySet) + if(!this._wereSeriesKeysExplicitlySet()) { - this._seriesKeys = this._buildSeriesKeys(defDataProvider); + this.set("seriesKeys", this._buildSeriesKeys(defDataProvider), {src: "internal"}); } return defDataProvider; }, @@ -1105,9 +1111,9 @@ ChartBase.ATTRS = { setter: function(val) { var dataProvider = this._setDataValues(val); - if(!this._seriesKeysExplicitlySet) + if(!this._wereSeriesKeysExplicitlySet()) { - this._seriesKeys = this._buildSeriesKeys(dataProvider); + this.set("seriesKeys", this._buildSeriesKeys(dataProvider), {src: "internal"}); } return dataProvider; } @@ -1122,15 +1128,19 @@ ChartBase.ATTRS = { * @type Array */ seriesKeys: { - getter: function() - { - return this._seriesKeys; - }, + lazyAdd: false, setter: function(val) { - this._seriesKeysExplicitlySet = true; - this._seriesKeys = val; + var opts = arguments[2]; + if(!val || (opts && opts.src && opts.src === "internal")) + { + this._seriesKeysExplicitlySet = false; + } + else + { + this._seriesKeysExplicitlySet = true; + } return val; } }, @@ -1328,6 +1338,22 @@ ChartBase.ATTRS = { }; ChartBase.prototype = { + + /** + * Utility method to determine if `seriesKeys` was explicitly provided + * (for example during construction, or set by the user), as opposed to + * being derived from the dataProvider for example. + * + * @method _wereSeriesKeysExplicitlySet + * @private + * @return boolean true if the `seriesKeys` attribute was explicitly set. + */ + _wereSeriesKeysExplicitlySet : function() + { + var seriesKeys = this.get("seriesKeys"); + return seriesKeys && this._seriesKeysExplicitlySet; + }, + /** * Handles groupMarkers change event. * @@ -2381,7 +2407,7 @@ Y.ChartBase = ChartBase; * @constructor * @submodule charts-base */ -Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { +Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase, Y.Renderer], { /** * @method renderUI * @private @@ -2403,8 +2429,6 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { { this._addTooltip(); } - //If there is a style definition. Force them to set. - this.get("styles"); if(this.get("interactionType") === "planar") { overlay = DOCUMENT.createElement("div"); @@ -2656,6 +2680,11 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { _parseSeriesCollection: function(val) { var dir = this.get("direction"), + seriesStyles = this.get("styles").series, + stylesAreArray = seriesStyles && Y_Lang.isArray(seriesStyles), + stylesIndex, + setStyles, + globalStyles, sc = [], catAxis, valAxis, @@ -2740,36 +2769,55 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { if(series instanceof Y.CartesianSeries) { this._parseSeriesAxes(series); - continue; } - - series[catKey] = series[catKey] || categoryKey; - series[seriesKey] = series[seriesKey] || seriesKeys.shift(); - series[catAxis] = this._getCategoryAxis(); - series[valAxis] = this._getSeriesAxis(series[seriesKey]); - - series.type = series.type || type; - series.direction = series.direction || dir; - - if(series.type === "combo" || - series.type === "stackedcombo" || - series.type === "combospline" || - series.type === "stackedcombospline") + else { - if(showAreaFill !== null) + series[catKey] = series[catKey] || categoryKey; + series[seriesKey] = series[seriesKey] || seriesKeys.shift(); + series[catAxis] = this._getCategoryAxis(); + series[valAxis] = this._getSeriesAxis(series[seriesKey]); + + series.type = series.type || type; + series.direction = series.direction || dir; + + if(series.type === "combo" || + series.type === "stackedcombo" || + series.type === "combospline" || + series.type === "stackedcombospline") { - series.showAreaFill = (series.showAreaFill !== null && series.showAreaFill !== undefined) ? series.showAreaFill : showAreaFill; + if(showAreaFill !== null) + { + series.showAreaFill = (series.showAreaFill !== null && series.showAreaFill !== undefined) ? + series.showAreaFill : showAreaFill; + } + if(showMarkers !== null) + { + series.showMarkers = (series.showMarkers !== null && series.showMarkers !== undefined) ? series.showMarkers : showMarkers; + } + if(showLines !== null) + { + series.showLines = (series.showLines !== null && series.showLines !== undefined) ? series.showLines : showLines; + } } - if(showMarkers !== null) + if(seriesStyles) { - series.showMarkers = (series.showMarkers !== null && series.showMarkers !== undefined) ? series.showMarkers : showMarkers; - } - if(showLines !== null) - { - series.showLines = (series.showLines !== null && series.showLines !== undefined) ? series.showLines : showLines; + stylesIndex = stylesAreArray ? i : series[seriesKey]; + globalStyles = seriesStyles[stylesIndex]; + if(globalStyles) + { + setStyles = series.styles; + if(setStyles) + { + series.styles = this._mergeStyles(setStyles, globalStyles); + } + else + { + series.styles = globalStyles; + } + } } + sc[i] = series; } - sc[i] = series; } if(sc) { @@ -2932,6 +2980,9 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { calculateEdgeOffset: "calculateEdgeOffset", position: "position", overlapGraph:"overlapGraph", + labelValues: "labelValues", + hideFirstMajorUnit: "hideFirstMajorUnit", + hideLastMajorUnit: "hideLastMajorUnit", labelFunction:"labelFunction", labelFunctionScope:"labelFunctionScope", labelFormat:"labelFormat", @@ -2941,6 +2992,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { minimum:"minimum", roundingMethod:"roundingMethod", alwaysShowZero:"alwaysShowZero", + scaleType: "scaleType", title:"title", width:"width", height:"height" @@ -3210,6 +3262,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { keys, newAxes = {}, claimedKeys = [], + newKeys = [], categoryAxisName = this.get("categoryAxisName") || this.get("categoryKey"), valueAxisName = this.get("valueAxisName"), seriesKeys = this.get("seriesKeys").concat(), @@ -3290,8 +3343,18 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { { seriesKeys.splice(cIndex, 1); } - l = claimedKeys.length; + l = seriesKeys.length; for(i = 0; i < l; ++i) + { + cIndex = Y.Array.indexOf(claimedKeys, seriesKeys[i]); + if(cIndex > -1) + { + newKeys = newKeys.concat(claimedKeys.splice(cIndex, 1)); + } + } + claimedKeys = newKeys.concat(claimedKeys); + l = claimedKeys.length; + for(i = 0; i < l; i = i + 1) { cIndex = Y.Array.indexOf(seriesKeys, claimedKeys[i]); if(cIndex > -1) @@ -3346,9 +3409,9 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { this._setBaseAttribute(newAxes[valueAxisName], "type", seriesAxis); this._setBaseAttribute(newAxes[valueAxisName], "keys", seriesKeys); } - if(!this._seriesKeysExplicitlySet) + if(!this._wereSeriesKeysExplicitlySet()) { - this._seriesKeys = seriesKeys; + this.set("seriesKeys", seriesKeys, {src: "internal"}); } return newAxes; }, @@ -3509,7 +3572,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set1[i]; overflow = Math.max( overflow, - Math.abs(axis.getMaxLabelBounds().top) - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) * 0.5) + Math.abs(axis.getMaxLabelBounds().top) - axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) ); } } @@ -3522,7 +3585,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set2[i]; overflow = Math.max( overflow, - Math.abs(axis.getMaxLabelBounds().top) - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) * 0.5) + Math.abs(axis.getMaxLabelBounds().top) - axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) ); } } @@ -3553,7 +3616,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set1[i]; overflow = Math.max( overflow, - axis.getMaxLabelBounds().right - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) * 0.5) + axis.getMaxLabelBounds().right - axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) ); } } @@ -3566,7 +3629,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set2[i]; overflow = Math.max( overflow, - axis.getMaxLabelBounds().right - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) * 0.5) + axis.getMaxLabelBounds().right - axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) ); } } @@ -3597,7 +3660,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set1[i]; overflow = Math.max( overflow, - Math.abs(axis.getMinLabelBounds().left) - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) * 0.5) + Math.abs(axis.getMinLabelBounds().left) - axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) ); } } @@ -3610,7 +3673,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set2[i]; overflow = Math.max( overflow, - Math.abs(axis.getMinLabelBounds().left) - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) * 0.5) + Math.abs(axis.getMinLabelBounds().left) - axis.getEdgeOffset(axis.get("styles").majorTicks.count, width) ); } } @@ -3641,7 +3704,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set1[i]; overflow = Math.max( overflow, - axis.getMinLabelBounds().bottom - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) * 0.5) + axis.getMinLabelBounds().bottom - axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) ); } } @@ -3654,7 +3717,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { axis = set2[i]; overflow = Math.max( overflow, - axis.getMinLabelBounds().bottom - (axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) * 0.5) + axis.getMinLabelBounds().bottom - axis.getEdgeOffset(axis.get("styles").majorTicks.count, height) ); } } @@ -4089,6 +4152,8 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { * @private */ axesStyles: { + lazyAdd: false, + getter: function() { var axes = this.get("axes"), @@ -4122,6 +4187,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { this._setBaseAttribute(axes[i], "styles", val[i]); } } + return val; } }, @@ -4133,6 +4199,8 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { * @private */ seriesStyles: { + lazyAdd: false, + getter: function() { var styles = this._seriesStyles, @@ -4185,6 +4253,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { } } } + return val; } }, @@ -4196,6 +4265,8 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { * @private */ graphStyles: { + lazyAdd: false, + getter: function() { var graph = this.get("graph"); @@ -4210,6 +4281,7 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { { var graph = this.get("graph"); this._setBaseAttribute(graph, "styles", val); + return val; } }, @@ -4239,6 +4311,8 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { * @type Object */ styles: { + lazyAdd: false, + getter: function() { var styles = { @@ -4287,6 +4361,8 @@ Y.CartesianChart = Y.Base.create("cartesianChart", Y.Widget, [Y.ChartBase], { * @type Object */ axes: { + lazyAdd: false, + valueFn: "_getDefaultAxes", setter: function(val) @@ -5030,7 +5106,7 @@ function Chart(cfg) Y.Chart = Chart; -}, '3.9.1', { +}, '3.12.0', { "requires": [ "dom", "event-mouseenter", diff --git a/lib/yuilib/3.9.1/build/charts-legend/charts-legend-debug.js b/lib/yuilib/3.12.0/charts-legend/charts-legend-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/charts-legend/charts-legend-debug.js rename to lib/yuilib/3.12.0/charts-legend/charts-legend-debug.js index 540f28cdd18..820b53d5f39 100644 --- a/lib/yuilib/3.9.1/build/charts-legend/charts-legend-debug.js +++ b/lib/yuilib/3.12.0/charts-legend/charts-legend-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('charts-legend', function (Y, NAME) { /** @@ -917,6 +923,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { bindUI: function() { this.get("chart").after("seriesCollectionChange", Y.bind(this._updateHandler, this)); + this.get("chart").after("stylesChange", Y.bind(this._updateHandler, this)); this.after("stylesChange", this._updateHandler); this.after("positionChange", this._positionChangeHandler); this.after("widthChange", this._handleSizeChange); @@ -1030,6 +1037,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { i, len, isArray, + legendShape, shape, shapeClass, item, @@ -1049,7 +1057,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { itemHeight; if(marker && marker.shape) { - shape = marker.shape; + legendShape = marker.shape; } this._destroyLegendItems(); if(chart instanceof Y.PieChart) @@ -1062,7 +1070,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { borderWeight = seriesStyles.border.weight; i = 0; len = displayName.length; - shape = shape || Y.Circle; + shape = legendShape || Y.Circle; isArray = Y.Lang.isArray(shape); for(; i < len; ++i) { @@ -1093,7 +1101,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { { series = seriesCollection[i]; seriesStyles = this._getStylesBySeriesType(series, shape); - if(!shape) + if(!legendShape) { shape = seriesStyles.shape; if(!shape) @@ -1700,4 +1708,4 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { }); -}, '3.9.1', {"requires": ["charts-base"]}); +}, '3.12.0', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts-legend/charts-legend-min.js b/lib/yuilib/3.12.0/charts-legend/charts-legend-min.js similarity index 55% rename from lib/yuilib/3.9.1/build/charts-legend/charts-legend-min.js rename to lib/yuilib/3.12.0/charts-legend/charts-legend-min.js index 9fcec3807de..4f0b573dff5 100644 --- a/lib/yuilib/3.9.1/build/charts-legend/charts-legend-min.js +++ b/lib/yuilib/3.12.0/charts-legend/charts-legend-min.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("charts-legend",function(e,t){var n=e.config.doc,r="top",i="right",s="bottom",o="left",u="external",a="horizontal",f="vertical",l="width",c="height",h="position",p="x",d="y",v="px",m,g={setter:function(t){var n=this.get("legend");return n&&n.destroy(!0),t instanceof e.ChartLegend?(n=t,n.set("chart",this)):(t.chart=this,t.hasOwnProperty("render")||(t.render=this.get("contentBox"),t.includeInChartLayout=!0),n=new e.ChartLegend(t)),n}},y={_positionLegendItems:function(e,t,n,r,i,s,o,u,a){var f=0,l=0,c,h,p,d,m,g=this.get("width"),b,w,E,S,x,T=s.top-u,N=g-(s.left+s.right),C,k,L,A;y._setRowArrays(e,N,o),b=y.rowArray,S=y.totalWidthArray,w=b.length;for(;l-1;--c)L.unshift(r),r+=u[c].get("width")}if(a){k=[],h=a.length,c=0;for(c=h-1;c>-1;--c)i+=a[c].get("width"),k.unshift(e-i)}if(f){A=[],h=f.length;for(c=h-1;c>-1;--c)A.unshift(s),s+=f[c].get("height")}if(l){O=[],h=l.length;for(c=h-1;c>-1;--c)o+=l[c].get("height"),O.unshift(t-o)}E=e-(r+i),S=t-(o+s),_.left=r,_.top=s,_.bottom=t-o,_.right=e-i;if(!N){g=this._getTopOverflow(u,a),y=this._getBottomOverflow(u,a),b=this._getLeftOverflow(l,f),w=this._getRightOverflow(l,f),C=g-s;if(C>0){_.top=g;if(A){c=0,h=A.length;for(;c0){_.bottom=t-y;if(O){c=0,h=O.length;for(;c0){_.left=b;if(L){c=0,h=L.length;for(;c0){_.right=e-w;if(k){c=0,h=k.length;for(;c0&&t>0&&this._drawLegend()},_updateHandler:function(){this.get("rendered")&&this._drawLegend()},_positionChangeHandler:function(){var e=this.get("chart"),t=this._parentNode;t&&e&&this.get("includeInChartLayout")?this.fire("legendRendered"):this.get("rendered")&&this._drawLegend()},_handleSizeChange:function(e){var t=e.attrName,n=this.get(h),u=n===o||n===i,a=n===s||n===r;(a&&t===l||u&&t===c)&&this._drawLegend()},_drawLegend:function(){if(this._drawing){this._callLater=!0;return}this._drawing=!0,this._callLater=!1,this.get("includeInChartLayout")&&this.get("chart")._itemRenderQueue.unshift(this);var t=this.get("chart"),n=this.get("contentBox"),r=t.get("seriesCollection"),i,s=this.get("styles"),o=s.padding,u=s.item,a,f=u.hSpacing,l=u.vSpacing,c=this.get("direction"),h=c==="vertical"?s.vAlign:s.hAlign,p=s.marker,d=u.label,v,m=this._layout[c],g,y,b,w,E,S,x,T,N,C,k,L=[],A=p.width,O=p.height,M=0-f,_=0-l,D=0,P=0,H,B;p&&p.shape&&(w=p.shape),this._destroyLegendItems();if(t instanceof e.PieChart){i=r[0],v=i.get("categoryAxis").getDataByKey(i.get("categoryKey")),a=i.get("styles").marker,N=a.fill.colors,C=a.border.colors,k=a.border.weight,g=0,y=v.length,w=w||e.Circle,b=e.Lang.isArray(w);for(;g0)e=this._items.shift(),e.shape.get("graphic").destroy(),e.node.empty(),e.node.destroy(!0),e.node=null,e=null;this._items=[]},_layout:{vertical:b,horizontal:y},destructor:function(){var e=this.get("background"),t;this._destroyLegendItems(),e&&(t=e.get("graphic"),t?t.destroy():e.destroy())}},{ATTRS:{includeInChartLayout:{value:!1},chart:{setter:function(t){return this.after("legendRendered",e.bind(t._itemRendered,t)),t}},direction:{value:"vertical"},position:{lazyAdd:!1,value:"right",setter:function(e){return e===r||e===s?this.set("direction",a):(e===o||e===i)&&this.set("direction",f) -,e}},width:{getter:function(){var e=this.get("chart"),t=this._parentNode;return t?e&&this.get("includeInChartLayout")||this._width?(this._width||(this._width=0),this._width):t.get("offsetWidth"):""},setter:function(e){return this._width=e,e}},height:{valueFn:"_heightGetter",getter:function(){var e=this.get("chart"),t=this._parentNode;return t?e&&this.get("includeInChartLayout")||this._height?(this._height||(this._height=0),this._height):t.get("offsetHeight"):""},setter:function(e){return this._height=e,e}},x:{lazyAdd:!1,value:0,setter:function(e){var t=this.get("boundingBox");return t&&t.setStyle(o,e+v),e}},y:{lazyAdd:!1,value:0,setter:function(e){var t=this.get("boundingBox");return t&&t.setStyle(r,e+v),e}},items:{getter:function(){return this._items}},background:{}}})},"3.9.1",{requires:["charts-base"]}); +e)if(f){S=f.get("position"),x=f.get("direction"),u=e.get("width"),a=e.get("height"),y=f.get("width"),b=f.get("height"),E=f.get("styles").gap;if(x==="vertical"&&u+y+E!==t||x==="horizontal"&&a+b+E!==n){switch(f.get("position")){case o:w=Math.min(t-(y+E),n),b=n,h=y+E,f.set(c,b);break;case r:w=Math.min(n-(b+E),t),y=t,v=b+E,f.set(l,y);break;case i:w=Math.min(t-(y+E),n),b=n,m=w+E,f.set(c,b);break;case s:w=Math.min(n-(b+E),t),y=t,g=w+E,f.set(l,y)}e.set(l,w),e.set(c,w)}else switch(f.get("position")){case o:h=y+E;break;case r:v=b+E;break;case i:m=u+E;break;case s:g=a+E}}else e.set(p,0),e.set(d,0),e.set(l,t),e.set(c,n);this._drawing=!1;if(this._callLater){this._redraw();return}e&&(e.set(p,h),e.set(d,v)),f&&(f.set(p,m),f.set(d,g))}},{ATTRS:{legend:g}}),e.PieChart=m,e.ChartLegend=e.Base.create("chartlegend",e.Widget,[e.Renderer],{initializer:function(){this._items=[]},renderUI:function(){var t=this.get("boundingBox"),n=this.get("contentBox"),r=this.get("styles").background,i=new e.Rect({graphic:n,fill:r.fill,stroke:r.border});t.setStyle("display","block"),t.setStyle("position","absolute"),this.set("background",i)},bindUI:function(){this.get("chart").after("seriesCollectionChange",e.bind(this._updateHandler,this)),this.get("chart").after("stylesChange",e.bind(this._updateHandler,this)),this.after("stylesChange",this._updateHandler),this.after("positionChange",this._positionChangeHandler),this.after("widthChange",this._handleSizeChange),this.after("heightChange",this._handleSizeChange)},syncUI:function(){var e=this.get("width"),t=this.get("height");isFinite(e)&&isFinite(t)&&e>0&&t>0&&this._drawLegend()},_updateHandler:function(){this.get("rendered")&&this._drawLegend()},_positionChangeHandler:function(){var e=this.get("chart"),t=this._parentNode;t&&e&&this.get("includeInChartLayout")?this.fire("legendRendered"):this.get("rendered")&&this._drawLegend()},_handleSizeChange:function(e){var t=e.attrName,n=this.get(h),u=n===o||n===i,a=n===s||n===r;(a&&t===l||u&&t===c)&&this._drawLegend()},_drawLegend:function(){if(this._drawing){this._callLater=!0;return}this._drawing=!0,this._callLater=!1,this.get("includeInChartLayout")&&this.get("chart")._itemRenderQueue.unshift(this);var t=this.get("chart"),n=this.get("contentBox"),r=t.get("seriesCollection"),i,s=this.get("styles"),o=s.padding,u=s.item,a,f=u.hSpacing,l=u.vSpacing,c=this.get("direction"),h=c==="vertical"?s.vAlign:s.hAlign,p=s.marker,d=u.label,v,m=this._layout[c],g,y,b,w,E,S,x,T,N,C,k,L,A=[],O=p.width,M=p.height,_=0-f,D=0-l,P=0,H=0,B,j;p&&p.shape&&(w=p.shape),this._destroyLegendItems();if(t instanceof e.PieChart){i=r[0],v=i.get("categoryAxis").getDataByKey(i.get("categoryKey")),a=i.get("styles").marker,C=a.fill.colors,k=a.border.colors,L=a.border.weight,g=0,y=v.length,E=w||e.Circle,b=e.Lang.isArray(E);for(;g0)e=this._items.shift(),e.shape.get("graphic").destroy(),e.node.empty(),e.node.destroy(!0),e.node=null,e=null;this._items=[]},_layout:{vertical:b,horizontal:y},destructor:function(){var e=this.get("background"),t;this._destroyLegendItems(),e&&(t=e.get("graphic"),t?t.destroy():e.destroy())}},{ATTRS:{includeInChartLayout:{value:!1},chart:{setter:function(t){return this.after("legendRendered",e.bind(t._itemRendered,t)),t}},direction:{value:"vertical"},position:{lazyAdd:!1,value:"right",setter:function(e){return e=== +r||e===s?this.set("direction",a):(e===o||e===i)&&this.set("direction",f),e}},width:{getter:function(){var e=this.get("chart"),t=this._parentNode;return t?e&&this.get("includeInChartLayout")||this._width?(this._width||(this._width=0),this._width):t.get("offsetWidth"):""},setter:function(e){return this._width=e,e}},height:{valueFn:"_heightGetter",getter:function(){var e=this.get("chart"),t=this._parentNode;return t?e&&this.get("includeInChartLayout")||this._height?(this._height||(this._height=0),this._height):t.get("offsetHeight"):""},setter:function(e){return this._height=e,e}},x:{lazyAdd:!1,value:0,setter:function(e){var t=this.get("boundingBox");return t&&t.setStyle(o,e+v),e}},y:{lazyAdd:!1,value:0,setter:function(e){var t=this.get("boundingBox");return t&&t.setStyle(r,e+v),e}},items:{getter:function(){return this._items}},background:{}}})},"3.12.0",{requires:["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts-legend/charts-legend.js b/lib/yuilib/3.12.0/charts-legend/charts-legend.js similarity index 99% rename from lib/yuilib/3.9.1/build/charts-legend/charts-legend.js rename to lib/yuilib/3.12.0/charts-legend/charts-legend.js index 540f28cdd18..820b53d5f39 100644 --- a/lib/yuilib/3.9.1/build/charts-legend/charts-legend.js +++ b/lib/yuilib/3.12.0/charts-legend/charts-legend.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('charts-legend', function (Y, NAME) { /** @@ -917,6 +923,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { bindUI: function() { this.get("chart").after("seriesCollectionChange", Y.bind(this._updateHandler, this)); + this.get("chart").after("stylesChange", Y.bind(this._updateHandler, this)); this.after("stylesChange", this._updateHandler); this.after("positionChange", this._positionChangeHandler); this.after("widthChange", this._handleSizeChange); @@ -1030,6 +1037,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { i, len, isArray, + legendShape, shape, shapeClass, item, @@ -1049,7 +1057,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { itemHeight; if(marker && marker.shape) { - shape = marker.shape; + legendShape = marker.shape; } this._destroyLegendItems(); if(chart instanceof Y.PieChart) @@ -1062,7 +1070,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { borderWeight = seriesStyles.border.weight; i = 0; len = displayName.length; - shape = shape || Y.Circle; + shape = legendShape || Y.Circle; isArray = Y.Lang.isArray(shape); for(; i < len; ++i) { @@ -1093,7 +1101,7 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { { series = seriesCollection[i]; seriesStyles = this._getStylesBySeriesType(series, shape); - if(!shape) + if(!legendShape) { shape = seriesStyles.shape; if(!shape) @@ -1700,4 +1708,4 @@ Y.ChartLegend = Y.Base.create("chartlegend", Y.Widget, [Y.Renderer], { }); -}, '3.9.1', {"requires": ["charts-base"]}); +}, '3.12.0', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-debug.js b/lib/yuilib/3.12.0/classnamemanager/classnamemanager-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-debug.js rename to lib/yuilib/3.12.0/classnamemanager/classnamemanager-debug.js index 07889d9934a..901604d8bb9 100644 --- a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-debug.js +++ b/lib/yuilib/3.12.0/classnamemanager/classnamemanager-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('classnamemanager', function (Y, NAME) { /** @@ -82,4 +88,4 @@ Y.ClassNameManager = function () { }(); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-min.js b/lib/yuilib/3.12.0/classnamemanager/classnamemanager-min.js similarity index 52% rename from lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-min.js rename to lib/yuilib/3.12.0/classnamemanager/classnamemanager-min.js index 54f17f9ff3c..7e6bfe6058c 100644 --- a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager-min.js +++ b/lib/yuilib/3.12.0/classnamemanager/classnamemanager-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("classnamemanager",function(e,t){var n="classNamePrefix",r="classNameDelimiter",i=e.config;i[n]=i[n]||"yui3",i[r]=i[r]||"-",e.ClassNameManager=function(){var t=i[n],s=i[r];return{getClassName:e.cached(function(){var n=e.Array(arguments);return n[n.length-1]!==!0?n.unshift(t):n.pop(),n.join(s)})}}()},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("classnamemanager",function(e,t){var n="classNamePrefix",r="classNameDelimiter",i=e.config;i[n]=i[n]||"yui3",i[r]=i[r]||"-",e.ClassNameManager=function(){var t=i[n],s=i[r];return{getClassName:e.cached(function(){var n=e.Array(arguments);return n[n.length-1]!==!0?n.unshift(t):n.pop(),n.join(s)})}}()},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager.js b/lib/yuilib/3.12.0/classnamemanager/classnamemanager.js similarity index 91% rename from lib/yuilib/3.9.1/build/classnamemanager/classnamemanager.js rename to lib/yuilib/3.12.0/classnamemanager/classnamemanager.js index 07889d9934a..901604d8bb9 100644 --- a/lib/yuilib/3.9.1/build/classnamemanager/classnamemanager.js +++ b/lib/yuilib/3.12.0/classnamemanager/classnamemanager.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('classnamemanager', function (Y, NAME) { /** @@ -82,4 +88,4 @@ Y.ClassNameManager = function () { }(); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-debug.js b/lib/yuilib/3.12.0/clickable-rail/clickable-rail-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-debug.js rename to lib/yuilib/3.12.0/clickable-rail/clickable-rail-debug.js index 4b0adcbca34..1f57386b509 100644 --- a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-debug.js +++ b/lib/yuilib/3.12.0/clickable-rail/clickable-rail-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('clickable-rail', function (Y, NAME) { /** @@ -210,4 +216,4 @@ Y.ClickableRail = Y.mix(ClickableRail, { }, true); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-min.js b/lib/yuilib/3.12.0/clickable-rail/clickable-rail-min.js similarity index 87% rename from lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-min.js rename to lib/yuilib/3.12.0/clickable-rail/clickable-rail-min.js index c2e513ce9a0..b908c1b8957 100644 --- a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail-min.js +++ b/lib/yuilib/3.12.0/clickable-rail/clickable-rail-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("clickable-rail",function(e,t){function n(){this._initClickableRail()}e.ClickableRail=e.mix(n,{prototype:{_initClickableRail:function(){this._evtGuid=this._evtGuid||e.guid()+"|",this.publish("railMouseDown",{defaultFn:this._defRailMouseDownFn}),this.after("render",this._bindClickableRail),this.on("destroy",this._unbindClickableRail)},_bindClickableRail:function(){this._dd.addHandle(this.rail),this.rail.on(this._evtGuid+e.DD.Drag.START_EVENT,e.bind(this._onRailMouseDown,this))},_unbindClickableRail:function(){if(this.get("rendered")){var e=this.get("contentBox"),t=e.one("."+this.getClassName("rail"));t.detach(this.evtGuid+"*")}},_onRailMouseDown:function(e){this.get("clickableRail")&&!this.get("disabled")&&(this.fire("railMouseDown",{ev:e}),this.thumb.focus())},_defRailMouseDownFn:function(e){e=e.ev;var t=this._resolveThumb(e),n=this._key.xyIndex,r=parseFloat(this.get("length"),10),i,s,o;t&&(i=t.get("dragNode"),s=parseFloat(i.getStyle(this._key.dim),10),o=this._getThumbDestination(e,i),o=o[n]-this.rail.getXY()[n],o=Math.min(Math.max(o,0),r-s),this._uiMoveThumb(o,{source:"rail"}),e.target=this.thumb.one("img")||this.thumb,t._handleMouseDownEvent(e))},_resolveThumb:function(e){return this._dd},_getThumbDestination:function(e,t){var n=t.get("offsetWidth"),r=t.get("offsetHeight");return[e.pageX-Math.round(n/2),e.pageY-Math.round(r/2)]}},ATTRS:{clickableRail:{value:!0,validator:e.Lang.isBoolean}}},!0)},"3.9.1",{requires:["slider-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("clickable-rail",function(e,t){function n(){this._initClickableRail()}e.ClickableRail=e.mix(n,{prototype:{_initClickableRail:function(){this._evtGuid=this._evtGuid||e.guid()+"|",this.publish("railMouseDown",{defaultFn:this._defRailMouseDownFn}),this.after("render",this._bindClickableRail),this.on("destroy",this._unbindClickableRail)},_bindClickableRail:function(){this._dd.addHandle(this.rail),this.rail.on(this._evtGuid+e.DD.Drag.START_EVENT,e.bind(this._onRailMouseDown,this))},_unbindClickableRail:function(){if(this.get("rendered")){var e=this.get("contentBox"),t=e.one("."+this.getClassName("rail"));t.detach(this.evtGuid+"*")}},_onRailMouseDown:function(e){this.get("clickableRail")&&!this.get("disabled")&&(this.fire("railMouseDown",{ev:e}),this.thumb.focus())},_defRailMouseDownFn:function(e){e=e.ev;var t=this._resolveThumb(e),n=this._key.xyIndex,r=parseFloat(this.get("length"),10),i,s,o;t&&(i=t.get("dragNode"),s=parseFloat(i.getStyle(this._key.dim),10),o=this._getThumbDestination(e,i),o=o[n]-this.rail.getXY()[n],o=Math.min(Math.max(o,0),r-s),this._uiMoveThumb(o,{source:"rail"}),e.target=this.thumb.one("img")||this.thumb,t._handleMouseDownEvent(e))},_resolveThumb:function(e){return this._dd},_getThumbDestination:function(e,t){var n=t.get("offsetWidth"),r=t.get("offsetHeight");return[e.pageX-Math.round(n/2),e.pageY-Math.round(r/2)]}},ATTRS:{clickableRail:{value:!0,validator:e.Lang.isBoolean}}},!0)},"3.12.0",{requires:["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail.js b/lib/yuilib/3.12.0/clickable-rail/clickable-rail.js similarity index 97% rename from lib/yuilib/3.9.1/build/clickable-rail/clickable-rail.js rename to lib/yuilib/3.12.0/clickable-rail/clickable-rail.js index 4b0adcbca34..1f57386b509 100644 --- a/lib/yuilib/3.9.1/build/clickable-rail/clickable-rail.js +++ b/lib/yuilib/3.12.0/clickable-rail/clickable-rail.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('clickable-rail', function (Y, NAME) { /** @@ -210,4 +216,4 @@ Y.ClickableRail = Y.mix(ClickableRail, { }, true); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-base/color-base-debug.js b/lib/yuilib/3.12.0/color-base/color-base-debug.js similarity index 81% rename from lib/yuilib/3.9.1/build/color-base/color-base-debug.js rename to lib/yuilib/3.12.0/color-base/color-base-debug.js index 4f7ccc0a863..e5e67a9ee41 100644 --- a/lib/yuilib/3.9.1/build/color-base/color-base-debug.js +++ b/lib/yuilib/3.12.0/color-base/color-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-base', function (Y, NAME) { /** @@ -8,15 +14,14 @@ Color provides static methods for color conversion. Y.Color.toHex('rgb(255, 255, 0)'); // #ffff00 - @module color @submodule color-base @class Color @since 3.8.0 **/ -var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})/, - REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})/, +var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/, + REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/, REGEX_RGB = /rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/, TYPES = { 'HEX': 'hex', 'RGB': 'rgb', 'RGBA': 'rgba' }, CONVERTS = { 'hex': 'toHex', 'rgb': 'toRGB', 'rgba': 'toRGBA' }; @@ -37,19 +42,27 @@ Y.Color = { }, /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + @static @property REGEX_HEX @type RegExp - @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/ + @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})(\ufffe)?/ @since 3.8.0 **/ REGEX_HEX: REGEX_HEX, /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + @static @property REGEX_HEX3 @type RegExp - @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})/ + @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})(\ufffe)?/ @since 3.8.0 **/ REGEX_HEX3: REGEX_HEX3, @@ -115,24 +128,31 @@ Y.Color = { CONVERTS: CONVERTS, /** - @public - @method convert - @param {String} str - @param {String} to - @return {String} - @since 3.8.0 - **/ - convert: function (str, to) { - // check for a toXXX conversion method first - // if it doesn't exist, use the toXxx conversion method - var convert = Y.Color.CONVERTS[to], - clr = Y.Color[convert](str); + Converts the provided string to the provided type. + You can use the `Y.Color.TYPES` to get a valid `to` type. + If the color cannot be converted, the original color will be returned. - return clr.toLowerCase(); + @public + @method convert + @param {String} str + @param {String} to + @return {String} + @since 3.8.0 + **/ + convert: function (str, to) { + var convert = Y.Color.CONVERTS[to.toLowerCase()], + clr = str; + + if (convert && Y.Color[convert]) { + clr = Y.Color[convert](str); + } + + return clr; }, /** Converts provided color value to a hex value string + @public @method toHex @param {String} str Hex or RGB value string @@ -140,8 +160,14 @@ Y.Color = { @since 3.8.0 **/ toHex: function (str) { - var clr = Y.Color._convertTo(str, 'hex'); - return clr.toLowerCase(); + var clr = Y.Color._convertTo(str, 'hex'), + isTransparent = clr.toLowerCase() === 'transparent'; + + if (clr.charAt(0) !== '#' && !isTransparent) { + clr = '#' + clr; + } + + return isTransparent ? clr.toLowerCase() : clr.toUpperCase(); }, /** @@ -171,9 +197,20 @@ Y.Color = { }, /** - Converts the provided color string to an array of values. Will - return an empty array if the provided string is not able - to be parsed. + Converts the provided color string to an array of values where the + last value is the alpha value. Will return an empty array if + the provided string is not able to be parsed. + + NOTE: `(\ufffe)?` is added to `HEX` and `HEX3` Regular Expressions to + carve out a place for the alpha channel that is returned from + toArray without compromising any usage of the Regular Expression + + Y.Color.toArray('fff'); // ['ff', 'ff', 'ff', 1] + Y.Color.toArray('rgb(0, 0, 0)'); // ['0', '0', '0', 1] + Y.Color.toArray('rgba(0, 0, 0, 0)'); // ['0', '0', '0', 1] + + + @public @method toArray @param {String} str @@ -195,7 +232,9 @@ Y.Color = { if (type.charAt(type.length - 1) === 'A') { type = type.slice(0, -1); } + regex = Y.Color['REGEX_' + type]; + if (regex) { arr = regex.exec(str) || []; length = arr.length; @@ -205,6 +244,12 @@ Y.Color = { arr.shift(); length--; + if (type === 'HEX3') { + arr[0] += arr[0]; + arr[1] += arr[1]; + arr[2] += arr[2]; + } + lastItem = arr[length - 1]; if (!lastItem) { arr[length - 1] = 1; @@ -321,6 +366,11 @@ Y.Color = { @since 3.8.0 **/ _convertTo: function(clr, to) { + + if (clr === 'transparent') { + return clr; + } + var from = Y.Color.findType(clr), originalTo = to, needsAlpha, @@ -446,4 +496,4 @@ Y.Color = { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/color-base/color-base-min.js b/lib/yuilib/3.12.0/color-base/color-base-min.js new file mode 100644 index 00000000000..542f1bffd57 --- /dev/null +++ b/lib/yuilib/3.12.0/color-base/color-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n.toLowerCase()],i=t;return r&&e.Color[r]&&(i=e.Color[r](t)),i},toHex:function(t){var n=e.Color._convertTo(t,"hex"),r=n.toLowerCase()==="transparent";return n.charAt(0)!=="#"&&!r&&(n="#"+n),r?n.toLowerCase():n.toUpperCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,n==="HEX3"&&(i[0]+=i[0],i[1]+=i[1],i[2]+=i[2]),o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){if(t==="transparent")return t;var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-base/color-base.js b/lib/yuilib/3.12.0/color-base/color-base.js similarity index 81% rename from lib/yuilib/3.9.1/build/color-base/color-base.js rename to lib/yuilib/3.12.0/color-base/color-base.js index 4f7ccc0a863..e5e67a9ee41 100644 --- a/lib/yuilib/3.9.1/build/color-base/color-base.js +++ b/lib/yuilib/3.12.0/color-base/color-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-base', function (Y, NAME) { /** @@ -8,15 +14,14 @@ Color provides static methods for color conversion. Y.Color.toHex('rgb(255, 255, 0)'); // #ffff00 - @module color @submodule color-base @class Color @since 3.8.0 **/ -var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})/, - REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})/, +var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/, + REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/, REGEX_RGB = /rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/, TYPES = { 'HEX': 'hex', 'RGB': 'rgb', 'RGBA': 'rgba' }, CONVERTS = { 'hex': 'toHex', 'rgb': 'toRGB', 'rgba': 'toRGBA' }; @@ -37,19 +42,27 @@ Y.Color = { }, /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + @static @property REGEX_HEX @type RegExp - @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})/ + @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})(\ufffe)?/ @since 3.8.0 **/ REGEX_HEX: REGEX_HEX, /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + @static @property REGEX_HEX3 @type RegExp - @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})/ + @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})(\ufffe)?/ @since 3.8.0 **/ REGEX_HEX3: REGEX_HEX3, @@ -115,24 +128,31 @@ Y.Color = { CONVERTS: CONVERTS, /** - @public - @method convert - @param {String} str - @param {String} to - @return {String} - @since 3.8.0 - **/ - convert: function (str, to) { - // check for a toXXX conversion method first - // if it doesn't exist, use the toXxx conversion method - var convert = Y.Color.CONVERTS[to], - clr = Y.Color[convert](str); + Converts the provided string to the provided type. + You can use the `Y.Color.TYPES` to get a valid `to` type. + If the color cannot be converted, the original color will be returned. - return clr.toLowerCase(); + @public + @method convert + @param {String} str + @param {String} to + @return {String} + @since 3.8.0 + **/ + convert: function (str, to) { + var convert = Y.Color.CONVERTS[to.toLowerCase()], + clr = str; + + if (convert && Y.Color[convert]) { + clr = Y.Color[convert](str); + } + + return clr; }, /** Converts provided color value to a hex value string + @public @method toHex @param {String} str Hex or RGB value string @@ -140,8 +160,14 @@ Y.Color = { @since 3.8.0 **/ toHex: function (str) { - var clr = Y.Color._convertTo(str, 'hex'); - return clr.toLowerCase(); + var clr = Y.Color._convertTo(str, 'hex'), + isTransparent = clr.toLowerCase() === 'transparent'; + + if (clr.charAt(0) !== '#' && !isTransparent) { + clr = '#' + clr; + } + + return isTransparent ? clr.toLowerCase() : clr.toUpperCase(); }, /** @@ -171,9 +197,20 @@ Y.Color = { }, /** - Converts the provided color string to an array of values. Will - return an empty array if the provided string is not able - to be parsed. + Converts the provided color string to an array of values where the + last value is the alpha value. Will return an empty array if + the provided string is not able to be parsed. + + NOTE: `(\ufffe)?` is added to `HEX` and `HEX3` Regular Expressions to + carve out a place for the alpha channel that is returned from + toArray without compromising any usage of the Regular Expression + + Y.Color.toArray('fff'); // ['ff', 'ff', 'ff', 1] + Y.Color.toArray('rgb(0, 0, 0)'); // ['0', '0', '0', 1] + Y.Color.toArray('rgba(0, 0, 0, 0)'); // ['0', '0', '0', 1] + + + @public @method toArray @param {String} str @@ -195,7 +232,9 @@ Y.Color = { if (type.charAt(type.length - 1) === 'A') { type = type.slice(0, -1); } + regex = Y.Color['REGEX_' + type]; + if (regex) { arr = regex.exec(str) || []; length = arr.length; @@ -205,6 +244,12 @@ Y.Color = { arr.shift(); length--; + if (type === 'HEX3') { + arr[0] += arr[0]; + arr[1] += arr[1]; + arr[2] += arr[2]; + } + lastItem = arr[length - 1]; if (!lastItem) { arr[length - 1] = 1; @@ -321,6 +366,11 @@ Y.Color = { @since 3.8.0 **/ _convertTo: function(clr, to) { + + if (clr === 'transparent') { + return clr; + } + var from = Y.Color.findType(clr), originalTo = to, needsAlpha, @@ -446,4 +496,4 @@ Y.Color = { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-harmony/color-harmony-debug.js b/lib/yuilib/3.12.0/color-harmony/color-harmony-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/color-harmony/color-harmony-debug.js rename to lib/yuilib/3.12.0/color-harmony/color-harmony-debug.js index cd93138d595..29a646ecf77 100644 --- a/lib/yuilib/3.9.1/build/color-harmony/color-harmony-debug.js +++ b/lib/yuilib/3.12.0/color-harmony/color-harmony-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-harmony', function (Y, NAME) { /** @@ -567,4 +573,4 @@ var HSL = 'hsl', Y.Color = Y.mix(Y.Color, Harmony); -}, '3.9.1', {"requires": ["color-hsl"]}); +}, '3.12.0', {"requires": ["color-hsl"]}); diff --git a/lib/yuilib/3.9.1/build/color-harmony/color-harmony-min.js b/lib/yuilib/3.12.0/color-harmony/color-harmony-min.js similarity index 93% rename from lib/yuilib/3.9.1/build/color-harmony/color-harmony-min.js rename to lib/yuilib/3.12.0/color-harmony/color-harmony-min.js index 0eca936b444..d6bf24aa34b 100644 --- a/lib/yuilib/3.9.1/build/color-harmony/color-harmony-min.js +++ b/lib/yuilib/3.12.0/color-harmony/color-harmony-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("color-harmony",function(e,t){var n="hsl",r="rgb",s=30,o=10,u=120,a=60,f=90,l=5,c=10,h=e.Color,p={getComplementary:function(e,t){var n=p._start(e),r=[];return t=t||h.findType(e),r.push({}),r.push({h:180}),p._adjustOffsetAndFinish(n,r,t)},getSplit:function(e,t,n){var r=p._start(e),i=[];return t=t||s,n=n||h.findType(e),i.push({}),i.push({h:180+t}),i.push({h:180-t}),p._adjustOffsetAndFinish(r,i,n)},getAnalogous:function(e,t,n){var r=p._start(e),i=[];return t=t||o,n=n||h.findType(e),i.push({}),i.push({h:t}),i.push({h:t*2}),i.push({h:-t}),i.push({h:-t*2}),p._adjustOffsetAndFinish(r,i,n)},getTriad:function(e,t){var n=p._start(e),r=[];return t=t||h.findType(e),r.push({}),r.push({h:u}),r.push({h:-u}),p._adjustOffsetAndFinish(n,r,t)},getTetrad:function(e,t,n){var r=p._start(e),i=[];return t=t||a,n=n||h.findType(e),i.push({}),i.push({h:t}),i.push({h:180}),i.push({h:180+t}),p._adjustOffsetAndFinish(r,i,n)},getSquare:function(e,t){var n=p._start(e),r=[];return t=t||h.findType(e),r.push({}),r.push({h:f}),r.push({h:f*2}),r.push({h:f*3}),p._adjustOffsetAndFinish(n,r,t)},getMonochrome:function(e,t,n){var r=p._start(e),i=[],s=0,o,u,a=r.concat();t=t||l,n=n||h.findType(e);if(t<2)return e;u=100/(t-1);for(;s<=100;s+=u)a[2]=Math.max(Math.min(s,100),0),i.push(a.concat());o=i.length;for(s=0;s100?100:t,f=Math.max(0,a-u),d=Math.min(100,a+u),g=Math.max(0,m-u),y=Math.min(100,m+u),o.push({});for(i=0;in&&o-2n?p._searchLuminanceForBrightness(t,n,r,s):p._searchLuminanceForBrightness(t,n,s,i)},_adjustOffsetAndFinish:function(e,t,n){var r=[],i,s=t.length,o;for(i=0;i100?100:t,f=Math.max(0,a-u),d=Math.min(100,a+u),g=Math.max(0,m-u),y=Math.min(100,m+u),o.push({});for(i=0;in&&o-2n?p._searchLuminanceForBrightness(t,n,r,s):p._searchLuminanceForBrightness(t,n,s,i)},_adjustOffsetAndFinish:function(e,t,n){var r=[],i,s=t.length,o;for(i=0;i1&&(n-=1),n*6<1?e+(t-e)*6*n:n*2<1?t:n*3<2?e+(t-e)*(2/3-n)*6:e}},e.Color=e.mix(Color,e.Color),e.Color.TYPES=e.mix(e.Color.TYPES,{HSL:"hsl",HSLA:"hsla"}),e.Color.CONVERTS=e.mix(e.Color.CONVERTS,{hsl:"toHSL",hsla:"toHSLA"})},"3.9.1",{requires:["color-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("color-hsl",function(e,t){Color={REGEX_HSL:/hsla?\(([.\d]*), ?([.\d]*)%, ?([.\d]*)%,? ?([.\d]*)?\)/,STR_HSL:"hsl({*}, {*}%, {*}%)",STR_HSLA:"hsla({*}, {*}%, {*}%, {*})",toHSL:function(t){var n=e.Color._convertTo(t,"hsl");return n.toLowerCase()},toHSLA:function(t){var n=e.Color._convertTo(t,"hsla");return n.toLowerCase()},_rgbToHsl:function(t,n){var r,i,s,o=e.Color.REGEX_RGB.exec(t),u=o[1]/255,a=o[2]/255,f=o[3]/255,l=Math.max(u,a,f),c=Math.min(u,a,f),h=!1,p=l-c,d=l+c;return u===a&&a===f&&(h=!0),p===0?r=0:u===l?r=(60*(a-f)/p+360)%360:a===l?r=60*(f-u)/p+120:r=60*(u-a)/p+240,s=d/2,s===0||s===1?i=s:s<=.5?i=p/d:i=p/(2-d),h&&(i=0),r=Math.round(r),i=Math.round(i*100),s=Math.round(s*100),n?[r,i,s]:"hsl("+r+", "+i+"%, "+s+"%)"},_hslToRgb:function(t,n){var r=e.Color.REGEX_HSL.exec(t),i=parseInt(r[1],10)/360,s=parseInt(r[2],10)/100,o=parseInt(r[3],10)/100,u,a,f,l,c;return o<=.5?c=o*(s+1):c=o+s-o*s,l=2*o-c,u=Math.round(Color._hueToRGB(l,c,i+1/3)*255),a=Math.round(Color._hueToRGB(l,c,i)*255),f=Math.round(Color._hueToRGB(l,c,i-1/3)*255),n?[u,a,f]:"rgb("+u+", "+a+", "+f+")"},_hueToRGB:function(e,t,n){return n<0?n+=1:n>1&&(n-=1),n*6<1?e+(t-e)*6*n:n*2<1?t:n*3<2?e+(t-e)*(2/3-n)*6:e}},e.Color=e.mix(Color,e.Color),e.Color.TYPES=e.mix(e.Color.TYPES,{HSL:"hsl",HSLA:"hsla"}),e.Color.CONVERTS=e.mix(e.Color.CONVERTS,{hsl:"toHSL",hsla:"toHSLA"})},"3.12.0",{requires:["color-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-hsl/color-hsl.js b/lib/yuilib/3.12.0/color-hsl/color-hsl.js similarity index 96% rename from lib/yuilib/3.9.1/build/color-hsl/color-hsl.js rename to lib/yuilib/3.12.0/color-hsl/color-hsl.js index e1d2d229d08..0f6adc21ab6 100644 --- a/lib/yuilib/3.9.1/build/color-hsl/color-hsl.js +++ b/lib/yuilib/3.12.0/color-hsl/color-hsl.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-hsl', function (Y, NAME) { /** @@ -216,4 +222,4 @@ Y.Color.TYPES = Y.mix(Y.Color.TYPES, {'HSL':'hsl', 'HSLA':'hsla'}); Y.Color.CONVERTS = Y.mix(Y.Color.CONVERTS, {'hsl': 'toHSL', 'hsla': 'toHSLA'}); -}, '3.9.1', {"requires": ["color-base"]}); +}, '3.12.0', {"requires": ["color-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-hsv/color-hsv-debug.js b/lib/yuilib/3.12.0/color-hsv/color-hsv-debug.js similarity index 95% rename from lib/yuilib/3.9.1/build/color-hsv/color-hsv-debug.js rename to lib/yuilib/3.12.0/color-hsv/color-hsv-debug.js index 5a7f5a9e642..01bc0e3e6b4 100644 --- a/lib/yuilib/3.9.1/build/color-hsv/color-hsv-debug.js +++ b/lib/yuilib/3.12.0/color-hsv/color-hsv-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-hsv', function (Y, NAME) { /** @@ -180,4 +186,4 @@ Y.Color.TYPES = Y.mix(Y.Color.TYPES, {'HSV':'hsv', 'HSVA':'hsva'}); Y.Color.CONVERTS = Y.mix(Y.Color.CONVERTS, {'hsv': 'toHSV', 'hsva': 'toHSVA'}); -}, '3.9.1', {"requires": ["color-base"]}); +}, '3.12.0', {"requires": ["color-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-hsv/color-hsv-min.js b/lib/yuilib/3.12.0/color-hsv/color-hsv-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/color-hsv/color-hsv-min.js rename to lib/yuilib/3.12.0/color-hsv/color-hsv-min.js index 2c207ab71ad..377adf11c32 100644 --- a/lib/yuilib/3.9.1/build/color-hsv/color-hsv-min.js +++ b/lib/yuilib/3.12.0/color-hsv/color-hsv-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("color-hsv",function(e,t){Color={REGEX_HSV:/hsva?\(([.\d]*), ?([.\d]*)%, ?([.\d]*)%,? ?([.\d]*)?\)/,STR_HSV:"hsv({*}, {*}%, {*}%)",STR_HSVA:"hsva({*}, {*}%, {*}%, {*})",toHSV:function(t){var n=e.Color._convertTo(t,"hsv");return n.toLowerCase()},toHSVA:function(t){var n=e.Color._convertTo(t,"hsva");return n.toLowerCase()},_rgbToHsv:function(t,n){var r,i,s,o=e.Color.REGEX_RGB.exec(t),u=o[1]/255,a=o[2]/255,f=o[3]/255,l=Math.max(u,a,f),c=Math.min(u,a,f),h=l-c;l===c?r=0:l===u?r=60*(a-f)/h:l===a?r=60*(f-u)/h+120:r=60*(u-a)/h+240,i=l===0?0:1-c/l;while(r<0)r+=360;return r%=360,r=Math.round(r),i=Math.round(i*100),s=Math.round(l*100),n?[r,i,s]:e.Color.fromArray([r,i,s],e.Color.TYPES.HSV)},_hsvToRgb:function(t,n){var r=e.Color.REGEX_HSV.exec(t),i=parseInt(r[1],10),s=parseInt(r[2],10)/100,o=parseInt(r[3],10)/100,u,a,f,l=Math.floor(i/60)%6,c=i/60-l,h=o*(1-s),p=o*(1-s*c),d=o*(1-s*(1-c));if(s===0)u=o,a=o,f=o;else switch(l){case 0:u=o,a=d,f=h;break;case 1:u=p,a=o,f=h;break;case 2:u=h,a=o,f=d;break;case 3:u=h,a=p,f=o;break;case 4:u=d,a=h,f=o;break;case 5:u=o,a=h,f=p}return u=Math.min(255,Math.round(u*256)),a=Math.min(255,Math.round(a*256)),f=Math.min(255,Math.round(f*256)),n?[u,a,f]:e.Color.fromArray([u,a,f],e.Color.TYPES.RGB)}},e.Color=e.mix(Color,e.Color),e.Color.TYPES=e.mix(e.Color.TYPES,{HSV:"hsv",HSVA:"hsva"}),e.Color.CONVERTS=e.mix(e.Color.CONVERTS,{hsv:"toHSV",hsva:"toHSVA"})},"3.9.1",{requires:["color-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("color-hsv",function(e,t){Color={REGEX_HSV:/hsva?\(([.\d]*), ?([.\d]*)%, ?([.\d]*)%,? ?([.\d]*)?\)/,STR_HSV:"hsv({*}, {*}%, {*}%)",STR_HSVA:"hsva({*}, {*}%, {*}%, {*})",toHSV:function(t){var n=e.Color._convertTo(t,"hsv");return n.toLowerCase()},toHSVA:function(t){var n=e.Color._convertTo(t,"hsva");return n.toLowerCase()},_rgbToHsv:function(t,n){var r,i,s,o=e.Color.REGEX_RGB.exec(t),u=o[1]/255,a=o[2]/255,f=o[3]/255,l=Math.max(u,a,f),c=Math.min(u,a,f),h=l-c;l===c?r=0:l===u?r=60*(a-f)/h:l===a?r=60*(f-u)/h+120:r=60*(u-a)/h+240,i=l===0?0:1-c/l;while(r<0)r+=360;return r%=360,r=Math.round(r),i=Math.round(i*100),s=Math.round(l*100),n?[r,i,s]:e.Color.fromArray([r,i,s],e.Color.TYPES.HSV)},_hsvToRgb:function(t,n){var r=e.Color.REGEX_HSV.exec(t),i=parseInt(r[1],10),s=parseInt(r[2],10)/100,o=parseInt(r[3],10)/100,u,a,f,l=Math.floor(i/60)%6,c=i/60-l,h=o*(1-s),p=o*(1-s*c),d=o*(1-s*(1-c));if(s===0)u=o,a=o,f=o;else switch(l){case 0:u=o,a=d,f=h;break;case 1:u=p,a=o,f=h;break;case 2:u=h,a=o,f=d;break;case 3:u=h,a=p,f=o;break;case 4:u=d,a=h,f=o;break;case 5:u=o,a=h,f=p}return u=Math.min(255,Math.round(u*256)),a=Math.min(255,Math.round(a*256)),f=Math.min(255,Math.round(f*256)),n?[u,a,f]:e.Color.fromArray([u,a,f],e.Color.TYPES.RGB)}},e.Color=e.mix(Color,e.Color),e.Color.TYPES=e.mix(e.Color.TYPES,{HSV:"hsv",HSVA:"hsva"}),e.Color.CONVERTS=e.mix(e.Color.CONVERTS,{hsv:"toHSV",hsva:"toHSVA"})},"3.12.0",{requires:["color-base"]}); diff --git a/lib/yuilib/3.9.1/build/color-hsv/color-hsv.js b/lib/yuilib/3.12.0/color-hsv/color-hsv.js similarity index 95% rename from lib/yuilib/3.9.1/build/color-hsv/color-hsv.js rename to lib/yuilib/3.12.0/color-hsv/color-hsv.js index 5a7f5a9e642..01bc0e3e6b4 100644 --- a/lib/yuilib/3.9.1/build/color-hsv/color-hsv.js +++ b/lib/yuilib/3.12.0/color-hsv/color-hsv.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('color-hsv', function (Y, NAME) { /** @@ -180,4 +186,4 @@ Y.Color.TYPES = Y.mix(Y.Color.TYPES, {'HSV':'hsv', 'HSVA':'hsva'}); Y.Color.CONVERTS = Y.mix(Y.Color.CONVERTS, {'hsv': 'toHSV', 'hsva': 'toHSVA'}); -}, '3.9.1', {"requires": ["color-base"]}); +}, '3.12.0', {"requires": ["color-base"]}); diff --git a/lib/yuilib/3.12.0/console-filters/assets/console-filters-core.css b/lib/yuilib/3.12.0/console-filters/assets/console-filters-core.css new file mode 100644 index 00000000000..ab09cf0948f --- /dev/null +++ b/lib/yuilib/3.12.0/console-filters/assets/console-filters-core.css @@ -0,0 +1,7 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters-skin.css b/lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters-skin.css similarity index 84% rename from lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters-skin.css rename to lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters-skin.css index eb988f35b21..a02f42e443f 100644 --- a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters-skin.css +++ b/lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories, .yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { text-align: left; diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/console-filters.css b/lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters.css similarity index 83% rename from lib/yuilib/3.9.1/build/assets/skins/sam/console-filters.css rename to lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters.css index fee56f5d737..8f953e2b208 100644 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/console-filters.css +++ b/lib/yuilib/3.12.0/console-filters/assets/skins/sam/console-filters.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex}#yui3-css-stamp.skin-sam-console-filters{display:none} diff --git a/lib/yuilib/3.9.1/build/console-filters/console-filters-debug.js b/lib/yuilib/3.12.0/console-filters/console-filters-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/console-filters/console-filters-debug.js rename to lib/yuilib/3.12.0/console-filters/console-filters-debug.js index 2d99cf3e065..6ee94deb281 100644 --- a/lib/yuilib/3.9.1/build/console-filters/console-filters-debug.js +++ b/lib/yuilib/3.12.0/console-filters/console-filters-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('console-filters', function (Y, NAME) { /** @@ -721,4 +727,4 @@ Y.namespace('Plugin').ConsoleFilters = Y.extend(ConsoleFilters, Y.Plugin.Base, }); -}, '3.9.1', {"requires": ["plugin", "console"], "skinnable": true}); +}, '3.12.0', {"requires": ["plugin", "console"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/console-filters/console-filters-min.js b/lib/yuilib/3.12.0/console-filters/console-filters-min.js similarity index 96% rename from lib/yuilib/3.9.1/build/console-filters/console-filters-min.js rename to lib/yuilib/3.12.0/console-filters/console-filters-min.js index d27e6a863ec..b2adc2e1b47 100644 --- a/lib/yuilib/3.9.1/build/console-filters/console-filters-min.js +++ b/lib/yuilib/3.12.0/console-filters/console-filters-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("console-filters",function(e,t){function b(){b.superclass.constructor.apply(this,arguments)}var n=e.ClassNameManager.getClassName,r="console",i="filters",s="filter",o="category",u="source",a="category.",f="source.",l="host",c="checked",h="defaultVisibility",p=".",d="",v=p+e.Console.CHROME_CLASSES.console_bd_class,m=p+e.Console.CHROME_CLASSES.console_ft_class,g="input[type=checkbox].",y=e.Lang.isString;e.namespace("Plugin").ConsoleFilters=e.extend(b,e.Plugin.Base,{_entries:null,_cacheLimit:Number.POSITIVE_INFINITY,_categories:null,_sources:null,initializer:function(){this._entries=[],this.get(l).on("entry",this._onEntry,this),this.doAfter("renderUI",this.renderUI),this.doAfter("syncUI",this.syncUI),this.doAfter("bindUI",this.bindUI),this.doAfter("clearConsole",this._afterClearConsole),this.get(l).get("rendered")&&(this.renderUI(),this.syncUI(),this.bindUI()),this.after("cacheLimitChange",this._afterCacheLimitChange)},destructor:function(){this._entries=[],this._categories&&this._categories.remove(),this._sources&&this._sources.remove()},renderUI:function(){var t=this.get(l).get("contentBox").one(m),n;t&&(n=e.Lang.sub(b.CATEGORIES_TEMPLATE,b.CHROME_CLASSES),this._categories=t.appendChild(e.Node.create(n)),n=e.Lang.sub(b.SOURCES_TEMPLATE,b.CHROME_CLASSES),this._sources=t.appendChild(e.Node.create(n)))},bindUI:function(){this._categories.on("click",e.bind(this._onCategoryCheckboxClick,this)),this._sources.on("click",e.bind(this._onSourceCheckboxClick,this)),this.after("categoryChange",this._afterCategoryChange),this.after("sourceChange",this._afterSourceChange)},syncUI:function(){e.each(this.get(o),function(e,t){this._uiSetCheckbox(o,t,e)},this),e.each(this.get(u),function(e,t){this._uiSetCheckbox(u,t,e)},this),this.refreshConsole()},_onEntry:function(e){this._entries.push(e.message);var t=a+e.message.category,n=f+e.message.source,r=this.get(t),i=this.get(n),s=this._entries.length-this._cacheLimit,o;s>0&&this._entries.splice(0,s),r===undefined&&(o=this.get(h),this.set(t,o),r=o),i===undefined&&(o=this.get(h),this.set(n,o),i=o),(!r||!i)&&e.preventDefault()},_afterClearConsole:function(){this._entries=[]},_afterCategoryChange:function(e){var t=e.subAttrName.replace(/category\./,d),n=e.prevVal,r=e.newVal;if(!t||n[t]!==undefined)this.refreshConsole(),this._filterBuffer();t&&!e.fromUI&&this._uiSetCheckbox(o,t,r[t])},_afterSourceChange:function(e){var t=e.subAttrName.replace(/source\./,d),n=e.prevVal,r=e.newVal;if(!t||n[t]!==undefined)this.refreshConsole(),this._filterBuffer();t&&!e.fromUI&&this._uiSetCheckbox(u,t,r[t])},_filterBuffer:function(){var e=this.get(o),t=this.get(u),n=this.get(l).buffer,r=null,i;for(i=n.length-1;i>=0;--i)!e[n[i].category]||!t[n[i].source]?r=r||i:r&&(n.splice(i,r-i),r=null);r&&n.splice(0,r+1)},_afterCacheLimitChange:function(e){if(isFinite(e.newVal)){var t=this._entries.length-e.newVal;t>0&&this._entries.splice(0,t)}},refreshConsole:function(){var e=this._entries,t=this.get(l),n=t.get("contentBox").one(v),r=t.get("consoleLimit"),i=this.get(o),s=this.get(u),a=[],f,c;if(n){t._cancelPrintLoop();for(f=e.length-1;f>=0&&r>=0;--f)c=e[f],i[c.category]&&s[c.source]&&(a.unshift(c),--r);n.setHTML(d),t.buffer=a,t.printBuffer()}},_uiSetCheckbox:function(e,t,i){if(e&&t){var u=e===o?this._categories:this._sources,a=g+n(r,s,t),f=u.one(a),h;f||(h=this.get(l),this._createCheckbox(u,t),f=u.one(a),h._uiSetHeight(h.get("height"))),f.set(c,i)}},_onCategoryCheckboxClick:function(e){var t=e.target,n;t.hasClass(b.CHROME_CLASSES.filter)&&(n=t.get("value"),n&&n in this.get(o)&&this.set(a+n,t.get(c),{fromUI:!0}))},_onSourceCheckboxClick:function(e){var t=e.target,n;t.hasClass(b.CHROME_CLASSES.filter)&&(n=t.get("value"),n&&n in this.get(u)&&this.set(f+n,t.get(c),{fromUI:!0}))},hideCategory:function(t,n){y(n)?e.Array.each(arguments,this.hideCategory,this):this.set(a+t,!1)},showCategory:function(t,n){y(n)?e.Array.each(arguments,this.showCategory,this):this.set(a+t,!0)},hideSource:function(t,n){y(n)?e.Array.each(arguments,this.hideSource,this):this.set(f+t,!1)},showSource:function(t,n){y(n)?e.Array.each(arguments,this.showSource,this):this.set(f+t,!0)},_createCheckbox:function(t,i){var o=e.merge(b.CHROME_CLASSES,{filter_name:i,filter_class:n(r,s,i)}),u=e.Node.create(e.Lang.sub(b.FILTER_TEMPLATE,o));t.appendChild(u)},_validateCategory:function(t,n){return e.Lang.isObject(n,!0)&&t.split(/\./).length<3},_validateSource:function(t,n){return e.Lang.isObject(n,!0)&&t.split(/\./).length<3},_setCacheLimit:function(t){return e.Lang.isNumber(t)?(this._cacheLimit=t,t):e.Attribute.INVALID_VALUE}},{NAME:"consoleFilters",NS:s,CATEGORIES_TEMPLATE:'
',SOURCES_TEMPLATE:'
',FILTER_TEMPLATE:' ',CHROME_CLASSES:{categories:n(r,i,"categories"),sources:n(r,i,"sources"),category:n(r,s,o),source:n(r,s,u),filter:n(r,s),filter_label:n(r,s,"label")},ATTRS:{defaultVisibility:{value:!0,validator:e.Lang.isBoolean},category:{value:{},validator:function(e,t){return this._validateCategory(t,e)}},source:{value:{},validator:function(e,t){return this._validateSource(t,e)}},cacheLimit:{value:Number.POSITIVE_INFINITY,setter:function(e){return this._setCacheLimit(e)}}}})},"3.9.1",{requires:["plugin","console"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("console-filters",function(e,t){function b(){b.superclass.constructor.apply(this,arguments)}var n=e.ClassNameManager.getClassName,r="console",i="filters",s="filter",o="category",u="source",a="category.",f="source.",l="host",c="checked",h="defaultVisibility",p=".",d="",v=p+e.Console.CHROME_CLASSES.console_bd_class,m=p+e.Console.CHROME_CLASSES.console_ft_class,g="input[type=checkbox].",y=e.Lang.isString;e.namespace("Plugin").ConsoleFilters=e.extend(b,e.Plugin.Base,{_entries:null,_cacheLimit:Number.POSITIVE_INFINITY,_categories:null,_sources:null,initializer:function(){this._entries=[],this.get(l).on("entry",this._onEntry,this),this.doAfter("renderUI",this.renderUI),this.doAfter("syncUI",this.syncUI),this.doAfter("bindUI",this.bindUI),this.doAfter("clearConsole",this._afterClearConsole),this.get(l).get("rendered")&&(this.renderUI(),this.syncUI(),this.bindUI()),this.after("cacheLimitChange",this._afterCacheLimitChange)},destructor:function(){this._entries=[],this._categories&&this._categories.remove(),this._sources&&this._sources.remove()},renderUI:function(){var t=this.get(l).get("contentBox").one(m),n;t&&(n=e.Lang.sub(b.CATEGORIES_TEMPLATE,b.CHROME_CLASSES),this._categories=t.appendChild(e.Node.create(n)),n=e.Lang.sub(b.SOURCES_TEMPLATE,b.CHROME_CLASSES),this._sources=t.appendChild(e.Node.create(n)))},bindUI:function(){this._categories.on("click",e.bind(this._onCategoryCheckboxClick,this)),this._sources.on("click",e.bind(this._onSourceCheckboxClick,this)),this.after("categoryChange",this._afterCategoryChange),this.after("sourceChange",this._afterSourceChange)},syncUI:function(){e.each(this.get(o),function(e,t){this._uiSetCheckbox(o,t,e)},this),e.each(this.get(u),function(e,t){this._uiSetCheckbox(u,t,e)},this),this.refreshConsole()},_onEntry:function(e){this._entries.push(e.message);var t=a+e.message.category,n=f+e.message.source,r=this.get(t),i=this.get(n),s=this._entries.length-this._cacheLimit,o;s>0&&this._entries.splice(0,s),r===undefined&&(o=this.get(h),this.set(t,o),r=o),i===undefined&&(o=this.get(h),this.set(n,o),i=o),(!r||!i)&&e.preventDefault()},_afterClearConsole:function(){this._entries=[]},_afterCategoryChange:function(e){var t=e.subAttrName.replace(/category\./,d),n=e.prevVal,r=e.newVal;if(!t||n[t]!==undefined)this.refreshConsole(),this._filterBuffer();t&&!e.fromUI&&this._uiSetCheckbox(o,t,r[t])},_afterSourceChange:function(e){var t=e.subAttrName.replace(/source\./,d),n=e.prevVal,r=e.newVal;if(!t||n[t]!==undefined)this.refreshConsole(),this._filterBuffer();t&&!e.fromUI&&this._uiSetCheckbox(u,t,r[t])},_filterBuffer:function(){var e=this.get(o),t=this.get(u),n=this.get(l).buffer,r=null,i;for(i=n.length-1;i>=0;--i)!e[n[i].category]||!t[n[i].source]?r=r||i:r&&(n.splice(i,r-i),r=null);r&&n.splice(0,r+1)},_afterCacheLimitChange:function(e){if(isFinite(e.newVal)){var t=this._entries.length-e.newVal;t>0&&this._entries.splice(0,t)}},refreshConsole:function(){var e=this._entries,t=this.get(l),n=t.get("contentBox").one(v),r=t.get("consoleLimit"),i=this.get(o),s=this.get(u),a=[],f,c;if(n){t._cancelPrintLoop();for(f=e.length-1;f>=0&&r>=0;--f)c=e[f],i[c.category]&&s[c.source]&&(a.unshift(c),--r);n.setHTML(d),t.buffer=a,t.printBuffer()}},_uiSetCheckbox:function(e,t,i){if(e&&t){var u=e===o?this._categories:this._sources,a=g+n(r,s,t),f=u.one(a),h;f||(h=this.get(l),this._createCheckbox(u,t),f=u.one(a),h._uiSetHeight(h.get("height"))),f.set(c,i)}},_onCategoryCheckboxClick:function(e){var t=e.target,n;t.hasClass(b.CHROME_CLASSES.filter)&&(n=t.get("value"),n&&n in this.get(o)&&this.set(a+n,t.get(c),{fromUI:!0}))},_onSourceCheckboxClick:function(e){var t=e.target,n;t.hasClass(b.CHROME_CLASSES.filter)&&(n=t.get("value"),n&&n in this.get(u)&&this.set(f+n,t.get(c),{fromUI:!0}))},hideCategory:function(t,n){y(n)?e.Array.each(arguments,this.hideCategory,this):this.set(a+t,!1)},showCategory:function(t,n){y(n)?e.Array.each(arguments,this.showCategory,this):this.set(a+t,!0)},hideSource:function(t,n){y(n)?e.Array.each(arguments,this.hideSource,this):this.set(f+t,!1)},showSource:function(t,n){y(n)?e.Array.each(arguments,this.showSource,this):this.set(f+t,!0)},_createCheckbox:function(t,i){var o=e.merge(b.CHROME_CLASSES,{filter_name:i,filter_class:n(r,s,i)}),u=e.Node.create(e.Lang.sub(b.FILTER_TEMPLATE,o));t.appendChild(u)},_validateCategory:function(t,n){return e.Lang.isObject(n,!0)&&t.split(/\./).length<3},_validateSource:function(t,n){return e.Lang.isObject(n,!0)&&t.split(/\./).length<3},_setCacheLimit:function(t){return e.Lang.isNumber(t)?(this._cacheLimit=t,t):e.Attribute.INVALID_VALUE}},{NAME:"consoleFilters",NS:s,CATEGORIES_TEMPLATE:'
',SOURCES_TEMPLATE:'
',FILTER_TEMPLATE:' ',CHROME_CLASSES:{categories:n(r,i,"categories"),sources:n(r,i,"sources"),category:n(r,s,o),source:n(r,s,u),filter:n(r,s),filter_label:n(r,s,"label")},ATTRS:{defaultVisibility:{value:!0,validator:e.Lang.isBoolean},category:{value:{},validator:function(e,t){return this._validateCategory(t,e)}},source:{value:{},validator:function(e,t){return this._validateSource(t,e)}},cacheLimit:{value:Number.POSITIVE_INFINITY,setter:function(e){return this._setCacheLimit(e)}}}})},"3.12.0",{requires:["plugin","console"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/console-filters/console-filters.js b/lib/yuilib/3.12.0/console-filters/console-filters.js similarity index 98% rename from lib/yuilib/3.9.1/build/console-filters/console-filters.js rename to lib/yuilib/3.12.0/console-filters/console-filters.js index 2d99cf3e065..6ee94deb281 100644 --- a/lib/yuilib/3.9.1/build/console-filters/console-filters.js +++ b/lib/yuilib/3.12.0/console-filters/console-filters.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('console-filters', function (Y, NAME) { /** @@ -721,4 +727,4 @@ Y.namespace('Plugin').ConsoleFilters = Y.extend(ConsoleFilters, Y.Plugin.Base, }); -}, '3.9.1', {"requires": ["plugin", "console"], "skinnable": true}); +}, '3.12.0', {"requires": ["plugin", "console"], "skinnable": true}); diff --git a/lib/yuilib/3.12.0/console/assets/console-core.css b/lib/yuilib/3.12.0/console/assets/console-core.css new file mode 100644 index 00000000000..ab09cf0948f --- /dev/null +++ b/lib/yuilib/3.12.0/console/assets/console-core.css @@ -0,0 +1,7 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/bg.png b/lib/yuilib/3.12.0/console/assets/skins/sam/bg.png similarity index 100% rename from lib/yuilib/3.9.1/build/console/assets/skins/sam/bg.png rename to lib/yuilib/3.12.0/console/assets/skins/sam/bg.png diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-skin.css b/lib/yuilib/3.12.0/console/assets/skins/sam/console-skin.css similarity index 97% rename from lib/yuilib/3.9.1/build/console/assets/skins/sam/console-skin.css rename to lib/yuilib/3.12.0/console/assets/skins/sam/console-skin.css index a2e2cee3511..d378f97b53c 100644 --- a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-skin.css +++ b/lib/yuilib/3.12.0/console/assets/skins/sam/console-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-separate { position:absolute; right:1em; diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/console.css b/lib/yuilib/3.12.0/console/assets/skins/sam/console.css similarity index 96% rename from lib/yuilib/3.9.1/build/assets/skins/sam/console.css rename to lib/yuilib/3.12.0/console/assets/skins/sam/console.css index 997e6d701a9..cfb47d29cbd 100644 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/console.css +++ b/lib/yuilib/3.12.0/console/assets/skins/sam/console.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-separate{position:absolute;right:1em;top:1em;z-index:999}.yui3-skin-sam .yui3-console-inline{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:top}.yui3-skin-sam .yui3-console-inline .yui3-console-content{position:relative}.yui3-skin-sam .yui3-console-content{background:#777;_background:#d8d8da url(bg.png) repeat-x 0 0;font:normal 13px/1.3 Arial,sans-serif;text-align:left;border:1px solid #777;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-bd,.yui3-skin-sam .yui3-console-ft{position:relative}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-ft .yui3-console-controls{text-align:right}.yui3-skin-sam .yui3-console-hd{background:#d8d8da url(bg.png) repeat-x 0 0;padding:1ex;border:1px solid transparent;_border:0 none;border-top-right-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;-webkit-border-top-right-radius:10px;-webkit-border-top-left-radius:10px}.yui3-skin-sam .yui3-console-bd{background:#fff;border-top:1px solid #777;border-bottom:1px solid #777;color:#000;font-size:11px;overflow:auto;overflow-x:auto;overflow-y:scroll;_width:100%}.yui3-skin-sam .yui3-console-ft{background:#d8d8da url(bg.png) repeat-x 0 0;border:1px solid transparent;_border:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-controls{padding:4px 1ex;zoom:1}.yui3-skin-sam .yui3-console-title{color:#000;display:inline;float:left;font-weight:bold;font-size:13px;height:24px;line-height:24px;margin:0;padding-left:1ex}.yui3-skin-sam .yui3-console-pause-label{float:left}.yui3-skin-sam .yui3-console-button{line-height:1.3}.yui3-skin-sam .yui3-console-collapsed .yui3-console-bd,.yui3-skin-sam .yui3-console-collapsed .yui3-console-ft{display:none}.yui3-skin-sam .yui3-console-content.yui3-console-collapsed{-webkit-border-radius:0}.yui3-skin-sam .yui3-console-collapsed .yui3-console-hd{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:0}.yui3-skin-sam .yui3-console-entry{border-bottom:1px solid #aaa;min-height:32px;_height:32px}.yui3-skin-sam .yui3-console-entry-meta{margin:0;overflow:hidden}.yui3-skin-sam .yui3-console-entry-content{margin:0;padding:0 1ex;white-space:pre-wrap;word-wrap:break-word}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-src{color:#000;font-style:italic;font-weight:bold;float:right;margin:2px 5px 0 0}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-time{color:#777;padding-left:1ex}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-time{color:#555}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-meta .yui3-console-entry-cat{display:none}.yui3-skin-sam .yui3-console-entry-warn{background:#aee url(warn_error.png) no-repeat -15px 15px}.yui3-skin-sam .yui3-console-entry-error{background:#ffa url(warn_error.png) no-repeat 5px -24px;color:#900}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-content,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-content{padding-left:24px}.yui3-skin-sam .yui3-console-entry-cat{text-transform:uppercase;padding:1px 4px;background-color:#ccc}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-cat{background-color:#ac2}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-cat{background-color:#e81}.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-cat{background-color:#b00;color:#fff}.yui3-skin-sam .yui3-console-hidden{display:none}#yui3-css-stamp.skin-sam-console{display:none} diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/warn_error.png b/lib/yuilib/3.12.0/console/assets/skins/sam/warn_error.png similarity index 100% rename from lib/yuilib/3.9.1/build/console/assets/skins/sam/warn_error.png rename to lib/yuilib/3.12.0/console/assets/skins/sam/warn_error.png diff --git a/lib/yuilib/3.9.1/build/console/assets/warn_error.png b/lib/yuilib/3.12.0/console/assets/warn_error.png similarity index 100% rename from lib/yuilib/3.9.1/build/console/assets/warn_error.png rename to lib/yuilib/3.12.0/console/assets/warn_error.png diff --git a/lib/yuilib/3.9.1/build/console/console-debug.js b/lib/yuilib/3.12.0/console/console-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/console/console-debug.js rename to lib/yuilib/3.12.0/console/console-debug.js index 2ce3b07006f..6c4e5dc669c 100644 --- a/lib/yuilib/3.9.1/build/console/console-debug.js +++ b/lib/yuilib/3.12.0/console/console-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('console', function (Y, NAME) { /** @@ -14,10 +20,6 @@ YUI.add('console', function (Y, NAME) { * configured logLevel. * * @module console - * @class Console - * @extends Widget - * @param conf {Object} Configuration object (see Configuration attributes) - * @constructor */ var getCN = Y.ClassNameManager.getClassName, CHECKED = 'checked', @@ -91,7 +93,14 @@ var getCN = Y.ClassNameManager.getClassName, merge = Y.merge, substitute = Y.Lang.sub; +/** +A basic console that displays messages logged throughout your application. +@class Console +@constructor +@extends Widget +@param [config] {Object} Object literal specifying widget configuration properties. +**/ function Console() { Console.superclass.constructor.apply(this,arguments); } @@ -1512,4 +1521,4 @@ Y.Console = Y.extend(Console, Y.Widget, }); -}, '3.9.1', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "ja"]}); +}, '3.12.0', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "hu", "it", "ja"]}); diff --git a/lib/yuilib/3.9.1/build/console/console-min.js b/lib/yuilib/3.12.0/console/console-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/console/console-min.js rename to lib/yuilib/3.12.0/console/console-min.js index 916306611eb..2619d76bac6 100644 --- a/lib/yuilib/3.9.1/build/console/console-min.js +++ b/lib/yuilib/3.12.0/console/console-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("console",function(e,t){function et(){et.superclass.constructor.apply(this,arguments)}var n=e.ClassNameManager.getClassName,r="checked",i="clear",s="click",o="collapsed",u="console",a="contentBox",f="disabled",l="entry",c="error",h="height",p="info",d="lastTime",v="pause",m="paused",g="reset",y="startTime",b="title",w="warn",E=".",S=n(u,"button"),x=n(u,"checkbox"),T=n(u,i),N=n(u,"collapse"),C=n(u,o),k=n(u,"controls"),L=n(u,"hd"),A=n(u,"bd"),O=n(u,"ft"),M=n(u,b),_=n(u,l),D=n(u,l,"cat"),P=n(u,l,"content"),H=n(u,l,"meta"),B=n(u,l,"src"),j=n(u,l,"time"),F=n(u,v),I=n(u,v,"label"),q=/^(\S+)\s/,R=/&(?!#?[a-z0-9]+;)/g,U=/>/g,z=/

{sourceAndDetail}{category} {totalTime}ms (+{elapsedTime}) {localTime}

{message}
',J=e.Lang,K=e.Node.create,Q=J.isNumber,G=J.isString,Y=e.merge,Z=e.Lang.sub;e.Console=e.extend(et,e.Widget,{_evtCat:null,_head:null,_body:null,_foot:null,_printLoop:null,buffer:null,log:function(){return e.log.apply(e,arguments),this},clearConsole:function(){return this._body.empty(),this._cancelPrintLoop(),this.buffer=[],this},reset:function(){return this.fire(g),this},collapse:function(){return this.set(o,!0),this},expand:function(){return this.set(o,!1),this},printBuffer:function(t){var n=this.buffer,r=e.config.debug,i=[],s=this.get("consoleLimit"),o=this.get("newestOnTop"),u=o?this._body.get("firstChild"):null,a;n.length>s&&n.splice(0,n.length-s),t=Math.min(n.length,t||n.length),e.config.debug=!1;if(!this.get(m)&&this.get("rendered")){for(a=0;a0){this.get("newestOnTop")?(o=n,u=i.size()):o=0,this._body.setStyle("display","none");for(;o

{str_title}

',BODY_TEMPLATE:'
',FOOTER_TEMPLATE:'
',ENTRY_TEMPLATE:$,ATTRS:{logEvent:{value:"yui:log",writeOnce:!0,validator:G},logSource:{value:e,writeOnce:!0,validator:function(e){return this._validateLogSource(e)}},strings:{valueFn:function(){return e.Intl.get("console")}},paused:{value:!1,validator:J.isBoolean},defaultCategory:{value:p,validator:G},defaultSource:{value:"global",validator:G},entryTemplate:{value:$,validator:G},logLevel:{value:e.config.logLevel||p,setter:function(e){return this._setLogLevel(e)}},printTimeout:{value:100,validator:Q},printLimit:{value:50,validator:Q},consoleLimit:{value:300,validator:Q},newestOnTop:{value:!0},scrollIntoView:{value:!0},startTime:{value:new Date},lastTime:{value:new Date,readOnly:!0},collapsed:{value:!1},height:{value:"300px"},width:{value:"300px"},useBrowserConsole:{lazyAdd:!1,value:!1,getter:function(){return this._getUseBrowserConsole()},setter:function(e){return this._setUseBrowserConsole(e)}},style:{value:"separate",writeOnce:!0,validator:function(e){return this._validateStyle(e)}}}})},"3.9.1",{requires:["yui-log","widget"],skinnable:!0,lang:["en","es","ja"]}); +()),e===w||e===c?e:p},_getUseBrowserConsole:function(){var e=this.get("logSource");return e instanceof YUI?e.config.useBrowserConsole:null},_setUseBrowserConsole:function(t){var n=this.get("logSource");return n instanceof YUI?(t=!!t,n.config.useBrowserConsole=t,t):e.Attribute.INVALID_VALUE},_uiSetHeight:function(e){et.superclass._uiSetHeight.apply(this,arguments);if(this._head&&this._foot){var t=this.get("boundingBox").get("offsetHeight")-this._head.get("offsetHeight")-this._foot.get("offsetHeight");this._body.setStyle(h,t+"px")}},_uiSizeCB:function(){},_afterStringsChange:function(e){var t=e.subAttrName?e.subAttrName.split(E)[1]:null,n=this.get(a),r=e.prevVal,s=e.newVal;(!t||t===b)&&r.title!==s.title&&n.all(E+M).setHTML(s.title),(!t||t===v)&&r.pause!==s.pause&&n.all(E+I).setHTML(s.pause),(!t||t===i)&&r.clear!==s.clear&&n.all(E+T).set("value",s.clear)},_afterPausedChange:function(t){var n=t.newVal;t.src!==e.Widget.SRC_UI&&this._uiUpdatePaused(n),n?this._printLoop&&this._cancelPrintLoop():this._schedulePrint()},_uiUpdatePaused:function(e){var t=this._foot.all("input[type=checkbox]."+F);t&&t.set(r,e)},_afterConsoleLimitChange:function(){this._trimOldEntries()},_afterCollapsedChange:function(e){this._uiUpdateCollapsed(e.newVal)},_uiUpdateCollapsed:function(e){var t=this.get("boundingBox"),n=t.all("button."+N),r=e?"addClass":"removeClass",i=this.get("strings."+(e?"expand":"collapse"));t[r](C),n&&n.setHTML(i),this._uiSetHeight(e?this._head.get("offsetHeight"):this.get(h))},_afterVisibleChange:function(e){et.superclass._afterVisibleChange.apply(this,arguments),this._uiUpdateFromHideShow(e.newVal)},_uiUpdateFromHideShow:function(e){e&&this._uiSetHeight(this.get(h))},_onLogEvent:function(t){if(!this.get(f)&&this._isInLogLevel(t)){var n=e.config.debug;e.config.debug=!1,this.fire(l,{message:this._normalizeMessage(t)}),e.config.debug=n}},_defResetFn:function(){this.clearConsole(),this.set(y,new Date),this.set(f,!1),this.set(m,!1)},_defEntryFn:function(e){e.message&&(this.buffer.push(e.message),this._schedulePrint())}},{NAME:u,LOG_LEVEL_INFO:p,LOG_LEVEL_WARN:w,LOG_LEVEL_ERROR:c,ENTRY_CLASSES:{entry_class:_,entry_meta_class:H,entry_cat_class:D,entry_src_class:B,entry_time_class:j,entry_content_class:P},CHROME_CLASSES:{console_hd_class:L,console_bd_class:A,console_ft_class:O,console_controls_class:k,console_checkbox_class:x,console_pause_class:F,console_pause_label_class:I,console_button_class:S,console_clear_class:T,console_collapse_class:N,console_title_class:M},HEADER_TEMPLATE:'

{str_title}

',BODY_TEMPLATE:'
',FOOTER_TEMPLATE:'
',ENTRY_TEMPLATE:$,ATTRS:{logEvent:{value:"yui:log",writeOnce:!0,validator:G},logSource:{value:e,writeOnce:!0,validator:function(e){return this._validateLogSource(e)}},strings:{valueFn:function(){return e.Intl.get("console")}},paused:{value:!1,validator:J.isBoolean},defaultCategory:{value:p,validator:G},defaultSource:{value:"global",validator:G},entryTemplate:{value:$,validator:G},logLevel:{value:e.config.logLevel||p,setter:function(e){return this._setLogLevel(e)}},printTimeout:{value:100,validator:Q},printLimit:{value:50,validator:Q},consoleLimit:{value:300,validator:Q},newestOnTop:{value:!0},scrollIntoView:{value:!0},startTime:{value:new Date},lastTime:{value:new Date,readOnly:!0},collapsed:{value:!1},height:{value:"300px"},width:{value:"300px"},useBrowserConsole:{lazyAdd:!1,value:!1,getter:function(){return this._getUseBrowserConsole()},setter:function(e){return this._setUseBrowserConsole(e)}},style:{value:"separate",writeOnce:!0,validator:function(e){return this._validateStyle(e)}}}})},"3.12.0",{requires:["yui-log","widget"],skinnable:!0,lang:["en","es","hu","it","ja"]}); diff --git a/lib/yuilib/3.9.1/build/console/console.js b/lib/yuilib/3.12.0/console/console.js similarity index 98% rename from lib/yuilib/3.9.1/build/console/console.js rename to lib/yuilib/3.12.0/console/console.js index 2ce3b07006f..6c4e5dc669c 100644 --- a/lib/yuilib/3.9.1/build/console/console.js +++ b/lib/yuilib/3.12.0/console/console.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('console', function (Y, NAME) { /** @@ -14,10 +20,6 @@ YUI.add('console', function (Y, NAME) { * configured logLevel. * * @module console - * @class Console - * @extends Widget - * @param conf {Object} Configuration object (see Configuration attributes) - * @constructor */ var getCN = Y.ClassNameManager.getClassName, CHECKED = 'checked', @@ -91,7 +93,14 @@ var getCN = Y.ClassNameManager.getClassName, merge = Y.merge, substitute = Y.Lang.sub; +/** +A basic console that displays messages logged throughout your application. +@class Console +@constructor +@extends Widget +@param [config] {Object} Object literal specifying widget configuration properties. +**/ function Console() { Console.superclass.constructor.apply(this,arguments); } @@ -1512,4 +1521,4 @@ Y.Console = Y.extend(Console, Y.Widget, }); -}, '3.9.1', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "ja"]}); +}, '3.12.0', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "hu", "it", "ja"]}); diff --git a/lib/yuilib/3.12.0/console/lang/console.js b/lib/yuilib/3.12.0/console/lang/console.js new file mode 100644 index 00000000000..530627e5498 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console",function(e){e.Intl.add("console","",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_en.js b/lib/yuilib/3.12.0/console/lang/console_en.js new file mode 100644 index 00000000000..b43e2ea2831 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_en",function(e){e.Intl.add("console","en",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_es.js b/lib/yuilib/3.12.0/console/lang/console_es.js new file mode 100644 index 00000000000..0dca40e5831 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_es.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_es",function(e){e.Intl.add("console","es",{title:"Consola de informaci\u00f3n",pause:"Pausa",clear:"Borrar",collapse:"Colapsar",expand:"Expandir"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_hu.js b/lib/yuilib/3.12.0/console/lang/console_hu.js new file mode 100644 index 00000000000..0f35f4527a8 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_hu",function(e){e.Intl.add("console","hu",{title:"Log Konzol",pause:"Sz\u00fcnet",clear:"T\u00f6r\u00f6l",collapse:"\u00d6sszecsuk",expand:"Kinyit"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_it.js b/lib/yuilib/3.12.0/console/lang/console_it.js new file mode 100644 index 00000000000..76e31c4c0c3 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_it.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_it",function(e){e.Intl.add("console","it",{title:"Console dei messaggi",pause:"Pausa",clear:"Cancella",collapse:"Collassa",expand:"Espandi"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_ja.js b/lib/yuilib/3.12.0/console/lang/console_ja.js new file mode 100644 index 00000000000..0f42a145025 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_ja.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_ja",function(e){e.Intl.add("console","ja",{title:"\u30ed\u30b0\u30b3\u30f3\u30bd\u30fc\u30eb",pause:"\u4e00\u6642\u505c\u6b62",clear:"\u30af\u30ea\u30a2",collapse:"\u9589\u3058\u308b",expand:"\u958b\u304f"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/cookie/cookie-debug.js b/lib/yuilib/3.12.0/cookie/cookie-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/cookie/cookie-debug.js rename to lib/yuilib/3.12.0/cookie/cookie-debug.js index 8d950d616aa..10338fbc942 100644 --- a/lib/yuilib/3.9.1/build/cookie/cookie-debug.js +++ b/lib/yuilib/3.12.0/cookie/cookie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('cookie', function (Y, NAME) { /** @@ -507,4 +513,4 @@ YUI.add('cookie', function (Y, NAME) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/cookie/cookie-min.js b/lib/yuilib/3.12.0/cookie/cookie-min.js similarity index 92% rename from lib/yuilib/3.9.1/build/cookie/cookie-min.js rename to lib/yuilib/3.12.0/cookie/cookie-min.js index fa6cf05a575..5f01c0b48f8 100644 --- a/lib/yuilib/3.9.1/build/cookie/cookie-min.js +++ b/lib/yuilib/3.12.0/cookie/cookie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("cookie",function(e,t){function h(e){throw new TypeError(e)}function p(e){(!s(e)||e==="")&&h("Cookie name must be a non-empty string.")}function d(e){(!s(e)||e==="")&&h("Subcookie name must be a non-empty string.")}var n=e.Lang,r=e.Object,i=null,s=n.isString,o=n.isObject,u=n.isUndefined,a=n.isFunction,f=encodeURIComponent,l=decodeURIComponent,c=e.config.doc;e.Cookie={_createCookieString:function(e,t,n,r){r=r||{};var i=f(e)+"="+(n?f(t):t),u=r.expires,a=r.path,l=r.domain;return o(r)&&(u instanceof Date&&(i+="; expires="+u.toUTCString()),s(a)&&a!==""&&(i+="; path="+a),s(l)&&l!==""&&(i+="; domain="+l),r.secure===!0&&(i+="; secure")),i},_createCookieHashString:function(e){o(e)||h("Cookie._createCookieHashString(): Argument must be an object.");var t=[];return r.each(e,function(e,n){!a(e)&&!u(e)&&t.push(f(n)+"="+f(String(e)))}),t.join("&")},_parseCookieHash:function(e){var t=e.split("&"),n=i,r={};if(e.length)for(var s=0,o=t.length;s0){var o=t===!1?function(e){return e}:l,a=e.split(/;\s/g),f=i,c=i,h=i;for(var p=0,d=a.length;p0){var o=t===!1?function(e){return e}:l,a=e.split(/;\s/g),f=i,c=i,h=i;for(var p=0,d=a.length;p'+a+"")),s}})},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("createlink-base",function(e,t){var n={};n.STRINGS={PROMPT:"Please enter the URL for the link to point to:",DEFAULT:"http://"},e.namespace("Plugin"),e.Plugin.CreateLinkBase=n,e.mix(e.Plugin.ExecCommand.COMMANDS,{createlink:function(t){var r=this.get("host").getInstance(),i,s,o,u,a=prompt(n.STRINGS.PROMPT,n.STRINGS.DEFAULT);return a&&(u=r.config.doc.createElement("div"),a=a.replace(/"/g,"").replace(/'/g,""),a=r.config.doc.createTextNode(a),u.appendChild(a),a=u.innerHTML,this.get("host")._execCommand(t,a),o=new r.EditorSelection,i=o.getSelected(),!o.isCollapsed&&i.size()?(s=i.item(0).one("a"),s&&i.item(0).replace(s),e.UA.gecko&&s.get("parentNode").test("span")&&s.get("parentNode").one("br.yui-cursor")&&s.get("parentNode").insert(s,"before")):this.get("host").execCommand("inserthtml",''+a+"")),s}})},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/createlink-base/createlink-base.js b/lib/yuilib/3.12.0/createlink-base/createlink-base.js similarity index 93% rename from lib/yuilib/3.9.1/build/createlink-base/createlink-base.js rename to lib/yuilib/3.12.0/createlink-base/createlink-base.js index 62f4ece62d6..a787555e8a4 100644 --- a/lib/yuilib/3.9.1/build/createlink-base/createlink-base.js +++ b/lib/yuilib/3.12.0/createlink-base/createlink-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('createlink-base', function (Y, NAME) { @@ -83,4 +89,4 @@ YUI.add('createlink-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css b/lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css similarity index 88% rename from lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css rename to lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css index 077face289a..a0ba0ecd1b6 100644 --- a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css +++ b/lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssbase h1{font-size:138.5%}.yui3-cssbase h2{font-size:123.1%}.yui3-cssbase h3{font-size:108%}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3{margin:1em 0}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong{font-weight:bold}.yui3-cssbase abbr,.yui3-cssbase acronym{border-bottom:1px dotted #000;cursor:help}.yui3-cssbase em{font-style:italic}.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl{margin:1em}.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl{margin-left:2em}.yui3-cssbase ol{list-style:decimal outside}.yui3-cssbase ul{list-style:disc outside}.yui3-cssbase dl dd{margin-left:1em}.yui3-cssbase th,.yui3-cssbase td{border:1px solid #000;padding:.5em}.yui3-cssbase th{font-weight:bold;text-align:center}.yui3-cssbase caption{margin-bottom:.5em;text-align:center}.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre{margin-bottom:1em}.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css b/lib/yuilib/3.12.0/cssbase-context/cssbase-context.css similarity index 93% rename from lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css rename to lib/yuilib/3.12.0/cssbase-context/cssbase-context.css index 7c12355f4b6..4960ec9d4af 100644 --- a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css +++ b/lib/yuilib/3.12.0/cssbase-context/cssbase-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* base.css, part of YUI's CSS Foundation */ .yui3-cssbase h1 { /*18px via YUI Fonts CSS foundation*/ diff --git a/lib/yuilib/3.9.1/build/cssbase/cssbase-min.css b/lib/yuilib/3.12.0/cssbase/cssbase-min.css similarity index 80% rename from lib/yuilib/3.9.1/build/cssbase/cssbase-min.css rename to lib/yuilib/3.12.0/cssbase/cssbase-min.css index a4d020bff8b..425539c17f3 100644 --- a/lib/yuilib/3.9.1/build/cssbase/cssbase-min.css +++ b/lib/yuilib/3.12.0/cssbase/cssbase-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + h1{font-size:138.5%}h2{font-size:123.1%}h3{font-size:108%}h1,h2,h3{margin:1em 0}h1,h2,h3,h4,h5,h6,strong{font-weight:bold}abbr,acronym{border-bottom:1px dotted #000;cursor:help}em{font-style:italic}blockquote,ul,ol,dl{margin:1em}ol,ul,dl{margin-left:2em}ol{list-style:decimal outside}ul{list-style:disc outside}dl dd{margin-left:1em}th,td{border:1px solid #000;padding:.5em}th{font-weight:bold;text-align:center}caption{margin-bottom:.5em;text-align:center}p,fieldset,table,pre{margin-bottom:1em}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbase/cssbase.css b/lib/yuilib/3.12.0/cssbase/cssbase.css similarity index 92% rename from lib/yuilib/3.9.1/build/cssbase/cssbase.css rename to lib/yuilib/3.12.0/cssbase/cssbase.css index 3ca502f1ff1..848ca3dfc87 100644 --- a/lib/yuilib/3.9.1/build/cssbase/cssbase.css +++ b/lib/yuilib/3.12.0/cssbase/cssbase.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* base.css, part of YUI's CSS Foundation */ h1 { /*18px via YUI Fonts CSS foundation*/ diff --git a/lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css b/lib/yuilib/3.12.0/cssbutton/cssbutton-min.css similarity index 97% rename from lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css rename to lib/yuilib/3.12.0/cssbutton/cssbutton-min.css index 004230a5e1e..4e314b60792 100644 --- a/lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css +++ b/lib/yuilib/3.12.0/cssbutton/cssbutton-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-button{display:inline-block;*display:inline;zoom:1;font-size:100%;*font-size:90%;*overflow:visible;padding:.4em 1em .45em;line-height:normal;white-space:nowrap;vertical-align:baseline;text-align:center;cursor:pointer;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#444;color:rgba(0,0,0,0.80);*color:#444;border:1px solid #999;border:none rgba(0,0,0,0);background-color:#e6e6e6;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80ffffff',endColorstr='#00ffffff',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.30)),color-stop(40%,rgba(255,255,255,0.15)),to(transparent));background-image:-webkit-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-moz-linear-gradient(top,rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-ms-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-o-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);-webkit-transition:.1s linear -webkit-box-shadow;-moz-transition:.1s linear -moz-box-shadow;-ms-transition:.1s linear box-shadow;-o-transition:.1s linear box-shadow;transition:.1s linear box-shadow}a.yui3-button{color:rgba(0,0,0,0.80);color:#444;text-decoration:none}.yui3-button-hover,.yui3-button:hover{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#26000000',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),color-stop(40%,rgba(0,0,0,0.05)),to(rgba(0,0,0,0.15)));background-image:-webkit-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-moz-linear-gradient(top,transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-ms-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-o-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15))}.yui3-button-active,.yui3-button:active{border:inset 1px solid #999;border:none rgba(0,0,0,0);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1A000000',endColorstr='#26000000',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.10)),to(rgba(0,0,0,0.15)));background-image:-webkit-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-moz-linear-gradient(top,rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-ms-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-o-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset;-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset;box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset}.yui3-button[disabled],.yui3-button-disabled,.yui3-button-disabled:hover,.yui3-button-disabled:active{cursor:default;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=55);-khtml-opacity:.55;-moz-opacity:.55;opacity:.55;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset;-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset;box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset}.yui3-button-hidden{display:none}.yui3-button::-moz-focus-inner{padding:0;border:0}.yui3-button:-moz-focusring{outline:thin dotted}.yui3-skin-sam .yui3-button-primary,.yui3-skin-sam .yui3-button-selected{background-color:#345fcb;color:#fff;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15)}.yui3-skin-sam .yui3-button:-moz-focusring{outline-color:rgba(0,0,0,0.85)}.yui3-skin-night .yui3-button{border:0;background-color:#343536;color:#dcdcdc;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15)}.yui3-skin-night .yui3-button-primary,.yui3-skin-night .yui3-button-selected{background-color:#747576;text-shadow:0 1px 2px rgba(0,0,0,0.7)}.yui3-skin-night .yui3-button:-moz-focusring{outline-color:rgba(255,255,255,0.85)}#yui3-css-stamp.cssbutton{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbutton/cssbutton.css b/lib/yuilib/3.12.0/cssbutton/cssbutton.css similarity index 97% rename from lib/yuilib/3.9.1/build/cssbutton/cssbutton.css rename to lib/yuilib/3.12.0/cssbutton/cssbutton.css index 50ea84a364a..5281bdc64eb 100644 --- a/lib/yuilib/3.9.1/build/cssbutton/cssbutton.css +++ b/lib/yuilib/3.12.0/cssbutton/cssbutton.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-button { /* Structure */ display: inline-block; diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css similarity index 77% rename from lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css rename to lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css index 23996caec3d..d0e55735ec7 100644 --- a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css +++ b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssfonts body,.yui3-cssfonts{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}.yui3-cssfonts select,.yui3-cssfonts input,.yui3-cssfonts button,.yui3-cssfonts textarea{font:99% arial,helvetica,clean,sans-serif}.yui3-cssfonts table{font-size:inherit;font:100%}.yui3-cssfonts pre,.yui3-cssfonts code,.yui3-cssfonts kbd,.yui3-cssfonts samp,.yui3-cssfonts tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css similarity index 86% rename from lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css rename to lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css index 490823d0c8e..512d0c1150a 100644 --- a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css +++ b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** * Percents could work for IE, but for backCompat purposes, we are using keywords. * x-small is for IE6/7 quirks mode. diff --git a/lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css b/lib/yuilib/3.12.0/cssfonts/cssfonts-min.css similarity index 67% rename from lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css rename to lib/yuilib/3.12.0/cssfonts/cssfonts-min.css index 6a10789421a..6a5a727db24 100644 --- a/lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css +++ b/lib/yuilib/3.12.0/cssfonts/cssfonts-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts{display:none} diff --git a/lib/yuilib/3.9.1/build/cssfonts/cssfonts.css b/lib/yuilib/3.12.0/cssfonts/cssfonts.css similarity index 83% rename from lib/yuilib/3.9.1/build/cssfonts/cssfonts.css rename to lib/yuilib/3.12.0/cssfonts/cssfonts.css index 93e5b54bfad..6e240242b73 100644 --- a/lib/yuilib/3.9.1/build/cssfonts/cssfonts.css +++ b/lib/yuilib/3.12.0/cssfonts/cssfonts.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** * Percents could work for IE, but for backCompat purposes, we are using keywords. * x-small is for IE6/7 quirks mode. diff --git a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css similarity index 69% rename from lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css rename to lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css index cfb2cd19a3a..12a0d1cc285 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css +++ b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}#yui3-css-stamp.cssgrids-base{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css similarity index 84% rename from lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css rename to lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css index b066d89373a..71c427f10dc 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css +++ b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css similarity index 93% rename from lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css rename to lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css index 2fa853bf2c5..ceff29101a1 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css +++ b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}.yui3-g-r{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em}.opera-only :-o-prefocus,.yui3-g-r{word-spacing:-0.43em}.yui3-g-r img{max-width:100%}@media(min-width:980px){.yui3-visible-phone{display:none}.yui3-visible-tablet{display:none}.yui3-hidden-desktop{display:none}}@media(max-width:480px){.yui3-g-r>[class ^= "yui3-u"]{width:100%}}@media(max-width:767px){.yui3-g-r>[class ^= "yui3-u"]{width:100%}.yui3-hidden-phone{display:none}.yui3-visible-desktop{display:none}}@media(min-width:768px) and (max-width:979px){.yui3-hidden-tablet{display:none}.yui3-visible-desktop{display:none}}#yui3-css-stamp.cssgrids-responsive{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css similarity index 95% rename from lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css rename to lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css index be4c71ab48d..7fff38b18ae 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css +++ b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css similarity index 89% rename from lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css rename to lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css index 89501bc0c46..7e6cfb904b2 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css +++ b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids-units{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css similarity index 92% rename from lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css rename to lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css index 7fe2e5de232..d81b56944a8 100644 --- a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css +++ b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-u-1, .yui3-u-1-2, .yui3-u-1-3, diff --git a/lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css b/lib/yuilib/3.12.0/cssgrids/cssgrids-min.css similarity index 91% rename from lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css rename to lib/yuilib/3.12.0/cssgrids/cssgrids-min.css index 346a4c25480..2b296d96320 100644 --- a/lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css +++ b/lib/yuilib/3.12.0/cssgrids/cssgrids-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids/cssgrids.css b/lib/yuilib/3.12.0/cssgrids/cssgrids.css similarity index 94% rename from lib/yuilib/3.9.1/build/cssgrids/cssgrids.css rename to lib/yuilib/3.12.0/cssgrids/cssgrids.css index 8753ad9e79a..7936eae37d6 100644 --- a/lib/yuilib/3.9.1/build/cssgrids/cssgrids.css +++ b/lib/yuilib/3.12.0/cssgrids/cssgrids.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css similarity index 96% rename from lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css rename to lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css index 4ec1333867e..a49f985aee0 100644 --- a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css +++ b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal normalize.css v1.1.0 | MIT License | git.io/normalize */.yui3-normalized article,.yui3-normalized aside,.yui3-normalized details,.yui3-normalized figcaption,.yui3-normalized figure,.yui3-normalized footer,.yui3-normalized header,.yui3-normalized hgroup,.yui3-normalized main,.yui3-normalized nav,.yui3-normalized section,.yui3-normalized summary{display:block}.yui3-normalized audio,.yui3-normalized canvas,.yui3-normalized video{display:inline-block}.yui3-normalized audio:not([controls]){display:none;height:0}.yui3-normalized [hidden]{display:none}.yui3-normalized{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}.yui3-normalized,.yui3-normalized button,.yui3-normalized input,.yui3-normalized select,.yui3-normalized textarea{font-family:sans-serif}.yui3-normalized body{margin:0}.yui3-normalized a:focus{outline:thin dotted}.yui3-normalized a:active,.yui3-normalized a:hover{outline:0}.yui3-normalized h1{font-size:2em;margin:.67em 0}.yui3-normalized h2{font-size:1.5em;margin:.83em 0}.yui3-normalized h3{font-size:1.17em;margin:1em 0}.yui3-normalized h4{font-size:1em;margin:1.33em 0}.yui3-normalized h5{font-size:.83em;margin:1.67em 0}.yui3-normalized h6{font-size:.67em;margin:2.33em 0}.yui3-normalized abbr[title]{border-bottom:1px dotted}.yui3-normalized b,.yui3-normalized strong{font-weight:bold}.yui3-normalized blockquote{margin:1em 40px}.yui3-normalized dfn{font-style:italic}.yui3-normalized hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}.yui3-normalized mark{background:#ff0;color:#000}.yui3-normalized p,.yui3-normalized pre{margin:1em 0}.yui3-normalized code,.yui3-normalized kbd,.yui3-normalized pre,.yui3-normalized samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}.yui3-normalized pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}.yui3-normalized q{quotes:none}.yui3-normalized q:before,.yui3-normalized q:after{content:'';content:none}.yui3-normalized small{font-size:80%}.yui3-normalized sub,.yui3-normalized sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.yui3-normalized sup{top:-0.5em}.yui3-normalized sub{bottom:-0.25em}.yui3-normalized dl,.yui3-normalized menu,.yui3-normalized ol,.yui3-normalized ul{margin:1em 0}.yui3-normalized dd{margin:0 0 0 40px}.yui3-normalized menu,.yui3-normalized ol,.yui3-normalized ul{padding:0 0 0 40px}.yui3-normalized nav ul,.yui3-normalized nav ol{list-style:none;list-style-image:none}.yui3-normalized img{border:0;-ms-interpolation-mode:bicubic}.yui3-normalized svg:not(:root){overflow:hidden}.yui3-normalized figure{margin:0}.yui3-normalized form{margin:0}.yui3-normalized fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}.yui3-normalized legend{border:0;padding:0;white-space:normal}.yui3-normalized button,.yui3-normalized input,.yui3-normalized select,.yui3-normalized textarea{font-size:100%;margin:0;vertical-align:baseline}.yui3-normalized button,.yui3-normalized input{line-height:normal}.yui3-normalized button,.yui3-normalized select{text-transform:none}.yui3-normalized button,.yui3-normalized input[type="button"],.yui3-normalized input[type="reset"],.yui3-normalized input[type="submit"]{-webkit-appearance:button;cursor:pointer}.yui3-normalized button[disabled],.yui3-normalized input[disabled]{cursor:default}.yui3-normalized input[type="checkbox"],.yui3-normalized input[type="radio"]{box-sizing:border-box;padding:0}.yui3-normalized input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}.yui3-normalized input[type="search"]::-webkit-search-cancel-button,.yui3-normalized input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}.yui3-normalized button::-moz-focus-inner,.yui3-normalized input::-moz-focus-inner{border:0;padding:0}.yui3-normalized textarea{overflow:auto;vertical-align:top}.yui3-normalized table{border-collapse:collapse;border-spacing:0}#yui3-css-stamp.cssnormalize-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css similarity index 97% rename from lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css rename to lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css index a35a372652a..08c028a4ffc 100644 --- a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css +++ b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal normalize.css v1.1.0 | MIT License | git.io/normalize */ diff --git a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css b/lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css similarity index 94% rename from lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css rename to lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css index 60b01eb0f7b..f1e35d73346 100644 --- a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css +++ b/lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal *//*! normalize.css v1.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}blockquote{margin:1em 40px}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}#yui3-css-stamp.cssnormalize{display:none} diff --git a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css b/lib/yuilib/3.12.0/cssnormalize/cssnormalize.css similarity index 98% rename from lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css rename to lib/yuilib/3.12.0/cssnormalize/cssnormalize.css index 035672c756e..6a01a0167d1 100644 --- a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css +++ b/lib/yuilib/3.12.0/cssnormalize/cssnormalize.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal */ /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ diff --git a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css b/lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css similarity index 91% rename from lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css rename to lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css index 7c11d57c992..b465e0c6c72 100644 --- a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css +++ b/lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssreset html{color:#000;background:#FFF}.yui3-cssreset body,.yui3-cssreset div,.yui3-cssreset dl,.yui3-cssreset dt,.yui3-cssreset dd,.yui3-cssreset ul,.yui3-cssreset ol,.yui3-cssreset li,.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6,.yui3-cssreset pre,.yui3-cssreset code,.yui3-cssreset form,.yui3-cssreset fieldset,.yui3-cssreset legend,.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset p,.yui3-cssreset blockquote,.yui3-cssreset th,.yui3-cssreset td{margin:0;padding:0}.yui3-cssreset table{border-collapse:collapse;border-spacing:0}.yui3-cssreset fieldset,.yui3-cssreset img{border:0}.yui3-cssreset address,.yui3-cssreset caption,.yui3-cssreset cite,.yui3-cssreset code,.yui3-cssreset dfn,.yui3-cssreset em,.yui3-cssreset strong,.yui3-cssreset th,.yui3-cssreset var{font-style:normal;font-weight:normal}.yui3-cssreset ol,.yui3-cssreset ul{list-style:none}.yui3-cssreset caption,.yui3-cssreset th{text-align:left}.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6{font-size:100%;font-weight:normal}.yui3-cssreset q:before,.yui3-cssreset q:after{content:''}.yui3-cssreset abbr,.yui3-cssreset acronym{border:0;font-variant:normal}.yui3-cssreset sup{vertical-align:text-top}.yui3-cssreset sub{vertical-align:text-bottom}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{font-family:inherit;font-size:inherit;font-weight:inherit}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{*font-size:100%}.yui3-cssreset legend{color:#000}#yui3-css-stamp.cssreset-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css b/lib/yuilib/3.12.0/cssreset-context/cssreset-context.css similarity index 94% rename from lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css rename to lib/yuilib/3.12.0/cssreset-context/cssreset-context.css index 73ad4c906b3..f342b0d48c0 100644 --- a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css +++ b/lib/yuilib/3.12.0/cssreset-context/cssreset-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*e TODO will need to remove settings on HTML since we can't namespace it. TODO with the prefix, should I group by selector or property for weight savings? diff --git a/lib/yuilib/3.9.1/build/cssreset/cssreset-min.css b/lib/yuilib/3.12.0/cssreset/cssreset-min.css similarity index 83% rename from lib/yuilib/3.9.1/build/cssreset/cssreset-min.css rename to lib/yuilib/3.12.0/cssreset/cssreset-min.css index 7e9c8a90d97..c43b7849175 100644 --- a/lib/yuilib/3.9.1/build/cssreset/cssreset-min.css +++ b/lib/yuilib/3.12.0/cssreset/cssreset-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none} diff --git a/lib/yuilib/3.9.1/build/cssreset/cssreset.css b/lib/yuilib/3.12.0/cssreset/cssreset.css similarity index 90% rename from lib/yuilib/3.9.1/build/cssreset/cssreset.css rename to lib/yuilib/3.12.0/cssreset/cssreset.css index 6ee591e5e8d..438d7b20ec1 100644 --- a/lib/yuilib/3.9.1/build/cssreset/cssreset.css +++ b/lib/yuilib/3.12.0/cssreset/cssreset.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* TODO will need to remove settings on HTML since we can't namespace it. TODO with the prefix, should I group by selector or property for weight savings? diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js index e507f6e42c6..bcc0b28696b 100644 --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-array', function (Y, NAME) { /** @@ -187,4 +193,4 @@ var LANG = Y.Lang, Y.DataSchema.Array = Y.mix(SchemaArray, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js similarity index 73% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js index 368af1e1b2d..d6d5e4cd30c 100644 --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-array",function(e,t){var n=e.Lang,r={apply:function(e,t){var i=t,s={results:[],meta:{}};return n.isArray(i)?e&&n.isArray(e.resultFields)?s=r._parseResults.call(this,e.resultFields,i,s):s.results=i:s.error=new Error("Array schema parse failure"),s},_parseResults:function(t,r,i){var s=[],o,u,a,f,l,c,h,p;for(h=r.length-1;h>-1;h--){o={},u=r[h],a=n.isObject(u)&&!n.isFunction(u)?2:n.isArray(u)?1:n.isString(u)?0:-1;if(a>0)for(p=t.length-1;p>-1;p--)f=t[p],l=n.isUndefined(f.key)?f:f.key,c=n.isUndefined(u[l])?u[p]:u[l],o[l]=e.DataSchema.Base.parse.call(this,c,f);else a===0?o=u:o=null;s[h]=o}return i.results=s,i}};e.DataSchema.Array=e.mix(r,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-array",function(e,t){var n=e.Lang,r={apply:function(e,t){var i=t,s={results:[],meta:{}};return n.isArray(i)?e&&n.isArray(e.resultFields)?s=r._parseResults.call(this,e.resultFields,i,s):s.results=i:s.error=new Error("Array schema parse failure"),s},_parseResults:function(t,r,i){var s=[],o,u,a,f,l,c,h,p;for(h=r.length-1;h>-1;h--){o={},u=r[h],a=n.isObject(u)&&!n.isFunction(u)?2:n.isArray(u)?1:n.isString(u)?0:-1;if(a>0)for(p=t.length-1;p>-1;p--)f=t[p],l=n.isUndefined(f.key)?f:f.key,c=n.isUndefined(u[l])?u[p]:u[l],o[l]=e.DataSchema.Base.parse.call(this,c,f);else a===0?o=u:o=null;s[h]=o}return i.results=s,i}};e.DataSchema.Array=e.mix(r,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array.js similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array.js index d26663f9a7a..c22c671c3ea 100644 --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-array', function (Y, NAME) { /** @@ -184,4 +190,4 @@ var LANG = Y.Lang, Y.DataSchema.Array = Y.mix(SchemaArray, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js index 6ff63ccc899..381ec4dddc8 100644 --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-base', function (Y, NAME) { /** @@ -65,4 +71,4 @@ Y.namespace("DataSchema").Base = SchemaBase; Y.namespace("Parsers"); -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js similarity index 57% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js index 2d4bfb427f3..9bb340352fe 100644 --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-base",function(e,t){var n=e.Lang,r={apply:function(e,t){return t},parse:function(t,r){if(r.parser){var i=n.isFunction(r.parser)?r.parser:e.Parsers[r.parser+""];i&&(t=i.call(this,t))}return t}};e.namespace("DataSchema").Base=r,e.namespace("Parsers")},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-base",function(e,t){var n=e.Lang,r={apply:function(e,t){return t},parse:function(t,r){if(r.parser){var i=n.isFunction(r.parser)?r.parser:e.Parsers[r.parser+""];i&&(t=i.call(this,t))}return t}};e.namespace("DataSchema").Base=r,e.namespace("Parsers")},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base.js similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base.js index bb2b01bc335..bca167f910c 100644 --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-base', function (Y, NAME) { /** @@ -64,4 +70,4 @@ Y.namespace("DataSchema").Base = SchemaBase; Y.namespace("Parsers"); -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js index 583bdaf7cae..86b777676a5 100644 --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-json', function (Y, NAME) { /** @@ -441,4 +447,4 @@ SchemaJSON = { Y.DataSchema.JSON = Y.mix(SchemaJSON, Base); -}, '3.9.1', {"requires": ["dataschema-base", "json"]}); +}, '3.12.0', {"requires": ["dataschema-base", "json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js index ac4bed5b6a4..62049abda07 100644 --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-json",function(e,t){var n=e.Lang,r=n.isFunction,i=n.isObject,s=n.isArray,o=e.DataSchema.Base,u;u={getPath:function(e){var t=null,n=[],r=0;if(e){e=e.replace(/\[\s*(['"])(.*?)\1\s*\]/g,function(e,t,i){return n[r]=i,".@"+r++}).replace(/\[(\d+)\]/g,function(e,t){return n[r]=parseInt(t,10)|0,".@"+r++}).replace(/^\./,""),t=e.split(".");for(r=t.length-1;r>=0;--r)t[r].charAt(0)==="@"&&(t[r]=n[parseInt(t[r].substr(1),10)])}return t},getLocationValue:function(e,t){var n=0,r=e.length;for(;n=0;--f){E={},w=n[f];if(w){for(l=y.length-1;l>=0;--l){d=y[l],m=u.getLocationValue(d.path,w);if(m===undefined){m=u.getLocationValue([d.locator],w);if(m!==undefined){g.push({key:d.key,path:d.locator}),y.splice(f,1);continue}}E[d.key]=o.parse.call(this,u.getLocationValue(d.path,w),d)}for(l=g.length-1;l>=0;--l)d=g[l],E[d.key]=o.parse.call(this,w[d.path]===undefined?w[l]:w[d.path],d);for(l=b.length-1;l>=0;--l)h=b[l].key,E[h]=b[l].parser.call(this,E[h]),E[h]===undefined&&(E[h]=null);s[f]=E}}return i.results=s,i},_parseMeta:function(e,t,n){if(i(e)){var r,s;for(r in e)e.hasOwnProperty(r)&&(s=u.getPath(e[r]),s&&t&&(n.meta[r]=u.getLocationValue(s,t)))}else n.error=new Error("JSON meta data retrieval failure");return n}},e.DataSchema.JSON=e.mix(u,o)},"3.9.1",{requires:["dataschema-base","json"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-json",function(e,t){var n=e.Lang,r=n.isFunction,i=n.isObject,s=n.isArray,o=e.DataSchema.Base,u;u={getPath:function(e){var t=null,n=[],r=0;if(e){e=e.replace(/\[\s*(['"])(.*?)\1\s*\]/g,function(e,t,i){return n[r]=i,".@"+r++}).replace(/\[(\d+)\]/g,function(e,t){return n[r]=parseInt(t,10)|0,".@"+r++}).replace(/^\./,""),t=e.split(".");for(r=t.length-1;r>=0;--r)t[r].charAt(0)==="@"&&(t[r]=n[parseInt(t[r].substr(1),10)])}return t},getLocationValue:function(e,t){var n=0,r=e.length;for(;n=0;--f){E={},w=n[f];if(w){for(l=y.length-1;l>=0;--l){d=y[l],m=u.getLocationValue(d.path,w);if(m===undefined){m=u.getLocationValue([d.locator],w);if(m!==undefined){g.push({key:d.key,path:d.locator}),y.splice(f,1);continue}}E[d.key]=o.parse.call(this,u.getLocationValue(d.path,w),d)}for(l=g.length-1;l>=0;--l)d=g[l],E[d.key]=o.parse.call(this,w[d.path]===undefined?w[l]:w[d.path],d);for(l=b.length-1;l>=0;--l)h=b[l].key,E[h]=b[l].parser.call(this,E[h]),E[h]===undefined&&(E[h]=null);s[f]=E}}return i.results=s,i},_parseMeta:function(e,t,n){if(i(e)){var r,s;for(r in e)e.hasOwnProperty(r)&&(s=u.getPath(e[r]),s&&t&&(n.meta[r]=u.getLocationValue(s,t)))}else n.error=new Error("JSON meta data retrieval failure");return n}},e.DataSchema.JSON=e.mix(u,o)},"3.12.0",{requires:["dataschema-base","json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json.js similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json.js index 6a4bd1185a3..eb896d939ad 100644 --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-json', function (Y, NAME) { /** @@ -437,4 +443,4 @@ SchemaJSON = { Y.DataSchema.JSON = Y.mix(SchemaJSON, Base); -}, '3.9.1', {"requires": ["dataschema-base", "json"]}); +}, '3.12.0', {"requires": ["dataschema-base", "json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js index 29eac5ac7c0..3779fc0f791 100644 --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-text', function (Y, NAME) { /** @@ -181,4 +187,4 @@ var Lang = Y.Lang, Y.DataSchema.Text = Y.mix(SchemaText, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js similarity index 75% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js index 0d36db42f2d..d0f9c32c17a 100644 --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-text",function(e,t){var n=e.Lang,r=n.isString,i=n.isUndefined,s={apply:function(e,t){var n=t,i={results:[],meta:{}};return r(t)&&e&&r(e.resultDelimiter)?i=s._parseResults.call(this,e,n,i):i.error=new Error("Text schema parse failure"),i},_parseResults:function(t,n,s){var o=t.resultDelimiter,u=r(t.fieldDelimiter)&&t.fieldDelimiter,a=t.resultFields||[],f=[],l=e.DataSchema.Base.parse,c,h,p,d,v,m,g,y,b;n.slice(-o.length)===o&&(n=n.slice(0,-o.length)),c=n.split(t.resultDelimiter);if(u)for(y=c.length-1;y>=0;--y){p={},d=c[y],h=d.split(t.fieldDelimiter);for(b=a.length-1;b>=0;--b)v=a[b],m=i(v.key)?v:v.key,g=i(h[m])?h[b]:h[m],p[m]=l.call(this,g,v);f[y]=p}else f=c;return s.results=f,s}};e.DataSchema.Text=e.mix(s,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-text",function(e,t){var n=e.Lang,r=n.isString,i=n.isUndefined,s={apply:function(e,t){var n=t,i={results:[],meta:{}};return r(t)&&e&&r(e.resultDelimiter)?i=s._parseResults.call(this,e,n,i):i.error=new Error("Text schema parse failure"),i},_parseResults:function(t,n,s){var o=t.resultDelimiter,u=r(t.fieldDelimiter)&&t.fieldDelimiter,a=t.resultFields||[],f=[],l=e.DataSchema.Base.parse,c,h,p,d,v,m,g,y,b;n.slice(-o.length)===o&&(n=n.slice(0,-o.length)),c=n.split(t.resultDelimiter);if(u)for(y=c.length-1;y>=0;--y){p={},d=c[y],h=d.split(t.fieldDelimiter);for(b=a.length-1;b>=0;--b)v=a[b],m=i(v.key)?v:v.key,g=i(h[m])?h[b]:h[m],p[m]=l.call(this,g,v);f[y]=p}else f=c;return s.results=f,s}};e.DataSchema.Text=e.mix(s,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text.js similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text.js index 4cfde750352..998897746f2 100644 --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-text', function (Y, NAME) { /** @@ -180,4 +186,4 @@ var Lang = Y.Lang, Y.DataSchema.Text = Y.mix(SchemaText, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js index c490ae005a4..61654474194 100644 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-xml', function (Y, NAME) { /** @@ -383,4 +389,4 @@ SchemaXML = { Y.DataSchema.XML = Y.mix(SchemaXML, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js index ab7158ee72c..650bba6b041 100644 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-xml",function(e,t){var n=e.Lang,r={1:!0,9:!0,11:!0},i;i={apply:function(e,t){var n=t,s={results:[],meta:{}};return n&&r[n.nodeType]&&e?(s=i._parseResults(e,n,s),s=i._parseMeta(e.metaFields,n,s)):s.error=new Error("XML schema parse failure"),s},_getLocationValue:function(t,n){var r=t.locator||t.key||t,s=n.ownerDocument||n,o,u,a=null;try{o=i._getXPathResult(r,n,s);while(u=o.iterateNext())a=u.textContent||u.value||u.text||u.innerHTML||u.innerText||null;return e.DataSchema.Base.parse.call(this,a,t)}catch(f){}return null},_getXPathResult:function(t,r,i){if(!n.isUndefined(i.evaluate))return i.evaluate(t,r,i.createNSResolver(r.ownerDocument?r.ownerDocument.documentElement:r.documentElement),0,null);var s=[],o=t.split(/\b\/\b/),u=0,a=o.length,f,l,c,h;try{try{i.setProperty("SelectionLanguage","XPath")}catch(p){}s=r.selectNodes(t)}catch(p){for(;u-1&&f.indexOf("]")>-1)l=f.slice(f.indexOf("[")+1,f.indexOf("]")),l--,r=r.children[l],h=!0;else if(f.indexOf("@")>-1)l=f.substr(f.indexOf("@")),r=l?r.getAttribute(l.replace("@","")):r;else if(-1=this.values.length)return undefined;var e=this.values[this.index];return this.index+=1,e},values:s}},_parseField:function(e,t,n){var r=e.key||e,s;e.schema?(s={results:[],meta:{}},s=i._parseResults(e.schema,n,s),t[r]=s.results):t[r]=i._getLocationValue(e,n)},_parseMeta:function(e,t,r){if(n.isObject(e)){var s,o=t.ownerDocument||t;for(s in e)e.hasOwnProperty(s)&&(r.meta[s]=i._getLocationValue(e[s],o))}return r},_parseResult:function(e,t){var n={},r;for(r=e.length-1;0<=r;r--)i._parseField(e[r],n,t);return n},_parseResults:function(e,t,r){if(e.resultListLocator&&n.isArray(e.resultFields)){var s=t.ownerDocument||t,o=e.resultFields,u=[],a,f,l=0;if(e.resultListLocator.match(/^[:\-\w]+$/)){f=t.getElementsByTagName(e.resultListLocator);for(l=f.length-1;l>=0;--l)u[l]=i._parseResult(o,f[l])}else{f=i._getXPathResult(e.resultListLocator,t,s);while(a=f.iterateNext())u[l]=i._parseResult(o,a),l+=1}u.length?r.results=u:r.error=new Error("XML schema result nodes retrieval failure")}return r}},e.DataSchema.XML=e.mix(i,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-xml",function(e,t){var n=e.Lang,r={1:!0,9:!0,11:!0},i;i={apply:function(e,t){var n=t,s={results:[],meta:{}};return n&&r[n.nodeType]&&e?(s=i._parseResults(e,n,s),s=i._parseMeta(e.metaFields,n,s)):s.error=new Error("XML schema parse failure"),s},_getLocationValue:function(t,n){var r=t.locator||t.key||t,s=n.ownerDocument||n,o,u,a=null;try{o=i._getXPathResult(r,n,s);while(u=o.iterateNext())a=u.textContent||u.value||u.text||u.innerHTML||u.innerText||null;return e.DataSchema.Base.parse.call(this,a,t)}catch(f){}return null},_getXPathResult:function(t,r,i){if(!n.isUndefined(i.evaluate))return i.evaluate(t,r,i.createNSResolver(r.ownerDocument?r.ownerDocument.documentElement:r.documentElement),0,null);var s=[],o=t.split(/\b\/\b/),u=0,a=o.length,f,l,c,h;try{try{i.setProperty("SelectionLanguage","XPath")}catch(p){}s=r.selectNodes(t)}catch(p){for(;u-1&&f.indexOf("]")>-1)l=f.slice(f.indexOf("[")+1,f.indexOf("]")),l--,r=r.children[l],h=!0;else if(f.indexOf("@")>-1)l=f.substr(f.indexOf("@")),r=l?r.getAttribute(l.replace("@","")):r;else if(-1=this.values.length)return undefined;var e=this.values[this.index];return this.index+=1,e},values:s}},_parseField:function(e,t,n){var r=e.key||e,s;e.schema?(s={results:[],meta:{}},s=i._parseResults(e.schema,n,s),t[r]=s.results):t[r]=i._getLocationValue(e,n)},_parseMeta:function(e,t,r){if(n.isObject(e)){var s,o=t.ownerDocument||t;for(s in e)e.hasOwnProperty(s)&&(r.meta[s]=i._getLocationValue(e[s],o))}return r},_parseResult:function(e,t){var n={},r;for(r=e.length-1;0<=r;r--)i._parseField(e[r],n,t);return n},_parseResults:function(e,t,r){if(e.resultListLocator&&n.isArray(e.resultFields)){var s=t.ownerDocument||t,o=e.resultFields,u=[],a,f,l=0;if(e.resultListLocator.match(/^[:\-\w]+$/)){f=t.getElementsByTagName(e.resultListLocator);for(l=f.length-1;l>=0;--l)u[l]=i._parseResult(o,f[l])}else{f=i._getXPathResult(e.resultListLocator,t,s);while(a=f.iterateNext())u[l]=i._parseResult(o,a),l+=1}u.length?r.results=u:r.error=new Error("XML schema result nodes retrieval failure")}return r}},e.DataSchema.XML=e.mix(i,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js index 231770ab12c..f0186a77697 100644 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-xml', function (Y, NAME) { /** @@ -381,4 +387,4 @@ SchemaXML = { Y.DataSchema.XML = Y.mix(SchemaXML, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js index a28d3672398..69e259886c9 100644 --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-arrayschema', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DataSourceArraySchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceArraySchema = DataSourceArraySchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js similarity index 75% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js index 6bb3fa28ca5..3cd4ee9acbf 100644 --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-arrayschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceArraySchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=e.DataSource.IO&&this.get("host")instanceof e.DataSource.IO&&e.Lang.isString(t.data.responseText)?t.data.responseText:t.data,r=e.DataSchema.Array.apply.call(this,this.get("schema"),n),i=t.details[0];return r||(r={meta:{},results:n}),i.response=r,this.get("host").fire("response",i),new e.Do.Halt("DataSourceArraySchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceArraySchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-array"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-arrayschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceArraySchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=e.DataSource.IO&&this.get("host")instanceof e.DataSource.IO&&e.Lang.isString(t.data.responseText)?t.data.responseText:t.data,r=e.DataSchema.Array.apply.call(this,this.get("schema"),n),i=t.details[0];return r||(r={meta:{},results:n}),i.response=r,this.get("host").fire("response",i),new e.Do.Halt("DataSourceArraySchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceArraySchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js index a28d3672398..69e259886c9 100644 --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-arrayschema', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DataSourceArraySchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceArraySchema = DataSourceArraySchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js similarity index 95% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js index 1161573a529..7b865eb7560 100644 --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-cache', function (Y, NAME) { /** @@ -164,4 +170,4 @@ Y.mix(DataSourceCache, { Y.namespace("Plugin").DataSourceCache = DataSourceCache; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "cache-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js similarity index 79% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js index c243bd30aa7..2f67306fcac 100644 --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-cache",function(e,t){function r(t){var n=t&&t.cache?t.cache:e.Cache,r=e.Base.create("dataSourceCache",n,[e.Plugin.Base,e.Plugin.DataSourceCacheExtension]),i=new r(t);return r.NS="tmpClass",i}var n=function(){};e.mix(n,{NS:"cache",NAME:"dataSourceCacheExtension"}),n.prototype={initializer:function(e){this.doBefore("_defRequestFn",this._beforeDefRequestFn),this.doBefore("_defResponseFn",this._beforeDefResponseFn)},_beforeDefRequestFn:function(t){var n=this.retrieve(t.request)||null,r=t.details[0];if(n&&n.response)return r.cached=n.cached,r.response=n.response,r.data=n.data,this.get("host").fire("response",r),new e.Do.Halt("DataSourceCache extension halted _defRequestFn")},_beforeDefResponseFn:function(e){e.response&&!e.cached&&this.add(e.request,e.response)}},e.namespace("Plugin").DataSourceCacheExtension=n,e.mix(r,{NS:"cache",NAME:"dataSourceCache"}),e.namespace("Plugin").DataSourceCache=r},"3.9.1",{requires:["datasource-local","plugin","cache-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-cache",function(e,t){function r(t){var n=t&&t.cache?t.cache:e.Cache,r=e.Base.create("dataSourceCache",n,[e.Plugin.Base,e.Plugin.DataSourceCacheExtension]),i=new r(t);return r.NS="tmpClass",i}var n=function(){};e.mix(n,{NS:"cache",NAME:"dataSourceCacheExtension"}),n.prototype={initializer:function(e){this.doBefore("_defRequestFn",this._beforeDefRequestFn),this.doBefore("_defResponseFn",this._beforeDefResponseFn)},_beforeDefRequestFn:function(t){var n=this.retrieve(t.request)||null,r=t.details[0];if(n&&n.response)return r.cached=n.cached,r.response=n.response,r.data=n.data,this.get("host").fire("response",r),new e.Do.Halt("DataSourceCache extension halted _defRequestFn")},_beforeDefResponseFn:function(e){e.response&&!e.cached&&this.add(e.request,e.response)}},e.namespace("Plugin").DataSourceCacheExtension=n,e.mix(r,{NS:"cache",NAME:"dataSourceCache"}),e.namespace("Plugin").DataSourceCache=r},"3.12.0",{requires:["datasource-local","plugin","cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache.js similarity index 95% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache.js index 1161573a529..7b865eb7560 100644 --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-cache', function (Y, NAME) { /** @@ -164,4 +170,4 @@ Y.mix(DataSourceCache, { Y.namespace("Plugin").DataSourceCache = DataSourceCache; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "cache-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js b/lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js index 283a417210a..7289ec56aa4 100644 --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-function', function (Y, NAME) { /** @@ -106,4 +112,4 @@ Y.extend(DSFn, Y.DataSource.Local, { Y.DataSource.Function = DSFn; -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js b/lib/yuilib/3.12.0/datasource-function/datasource-function-min.js similarity index 69% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function-min.js index 7cdda539263..6157b1b2cba 100644 --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-function",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceFunction",ATTRS:{source:{validator:n.isFunction}}}),e.extend(r,e.DataSource.Local,{_defRequestFn:function(e){var t=this.get("source"),n=e.details[0];if(t)try{n.data=t(e.request,this,e)}catch(r){n.error=r}else n.error=new Error("Function data failure");return this.fire("data",n),e.tId}}),e.DataSource.Function=r},"3.9.1",{requires:["datasource-local"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-function",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceFunction",ATTRS:{source:{validator:n.isFunction}}}),e.extend(r,e.DataSource.Local,{_defRequestFn:function(e){var t=this.get("source"),n=e.details[0];if(t)try{n.data=t(e.request,this,e)}catch(r){n.error=r}else n.error=new Error("Function data failure");return this.fire("data",n),e.tId}}),e.DataSource.Function=r},"3.12.0",{requires:["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function.js b/lib/yuilib/3.12.0/datasource-function/datasource-function.js similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function.js index 9801e9e1325..c89b5d2e0a2 100644 --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-function', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DSFn, Y.DataSource.Local, { Y.DataSource.Function = DSFn; -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js b/lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js index f1b0f1b63d8..b1b909e577a 100644 --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-get', function (Y, NAME) { /** @@ -211,4 +217,4 @@ Y.DataSource.Get = Y.extend(DSGet, Y.DataSource.Local, { YUI.namespace("Env.DataSource.callbacks"); -}, '3.9.1', {"requires": ["datasource-local", "get"]}); +}, '3.12.0', {"requires": ["datasource-local", "get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js b/lib/yuilib/3.12.0/datasource-get/datasource-get-min.js similarity index 84% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get-min.js index bd6eb10cbeb..90661f582ab 100644 --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-get",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.DataSource.Get=e.extend(n,e.DataSource.Local,{_defRequestFn:function(t){var n=this.get("source"),r=this.get("get"),i=e.guid().replace(/\-/g,"_"),s=this.get("generateRequestCallback"),o=t.details[0],u=this;return this._last=i,YUI.Env.DataSource.callbacks[i]=function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId];var r=u.get("asyncMode")!=="ignoreStaleResponses"||u._last===i;r&&(o.data=n,u.fire("data",o))},n+=t.request+s.call(this,i),e.DataSource.Local.transactions[t.tId]=r.script(n,{autopurge:!0,onFailure:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data failure"),u.fire("data",o)},onTimeout:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data timeout"),u.fire("data",o)}}),t.tId},_generateRequest:function(e){return"&"+this.get("scriptCallbackParam")+"=YUI.Env.DataSource.callbacks."+e}},{NAME:"dataSourceGet",ATTRS:{get:{value:e.Get,cloneDefaultValue:!1},asyncMode:{value:"allowAll"},scriptCallbackParam:{value:"callback"},generateRequestCallback:{value:function(){return this._generateRequest.apply(this,arguments)}}}}),YUI.namespace("Env.DataSource.callbacks")},"3.9.1",{requires:["datasource-local","get"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-get",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.DataSource.Get=e.extend(n,e.DataSource.Local,{_defRequestFn:function(t){var n=this.get("source"),r=this.get("get"),i=e.guid().replace(/\-/g,"_"),s=this.get("generateRequestCallback"),o=t.details[0],u=this;return this._last=i,YUI.Env.DataSource.callbacks[i]=function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId];var r=u.get("asyncMode")!=="ignoreStaleResponses"||u._last===i;r&&(o.data=n,u.fire("data",o))},n+=t.request+s.call(this,i),e.DataSource.Local.transactions[t.tId]=r.script(n,{autopurge:!0,onFailure:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data failure"),u.fire("data",o)},onTimeout:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data timeout"),u.fire("data",o)}}),t.tId},_generateRequest:function(e){return"&"+this.get("scriptCallbackParam")+"=YUI.Env.DataSource.callbacks."+e}},{NAME:"dataSourceGet",ATTRS:{get:{value:e.Get,cloneDefaultValue:!1},asyncMode:{value:"allowAll"},scriptCallbackParam:{value:"callback"},generateRequestCallback:{value:function(){return this._generateRequest.apply(this,arguments)}}}}),YUI.namespace("Env.DataSource.callbacks")},"3.12.0",{requires:["datasource-local","get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get.js b/lib/yuilib/3.12.0/datasource-get/datasource-get.js similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get.js index dd9269b4ef0..6927d320e7e 100644 --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-get', function (Y, NAME) { /** @@ -207,4 +213,4 @@ Y.DataSource.Get = Y.extend(DSGet, Y.DataSource.Local, { YUI.namespace("Env.DataSource.callbacks"); -}, '3.9.1', {"requires": ["datasource-local", "get"]}); +}, '3.12.0', {"requires": ["datasource-local", "get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js b/lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js index b1bcdeb5cb1..dae5aea3ad4 100644 --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-io', function (Y, NAME) { /** @@ -202,4 +208,4 @@ Y.extend(DSIO, Y.DataSource.Local, { Y.DataSource.IO = DSIO; -}, '3.9.1', {"requires": ["datasource-local", "io-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js b/lib/yuilib/3.12.0/datasource-io/datasource-io-min.js similarity index 83% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io-min.js index 36a3373b2dd..953d8f1a054 100644 --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-io",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NAME:"dataSourceIO",ATTRS:{io:{value:e.io,cloneDefaultValue:!1},ioConfig:{value:null}}}),e.extend(n,e.DataSource.Local,{initializer:function(e){this._queue={interval:null,conn:null,requests:[]}},successHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.data=n,this.fire("data",s),i&&i.on&&i.on.success&&i.on.success.apply(i.context||e,arguments)},failureHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.error=new Error("IO data failure"),s.data=n,this.fire("data",s),i&&i.on&&i.on.failure&&i.on.failure.apply(i.context||e,arguments)},_queue:null,_defRequestFn:function(t){var n=this.get("source"),r=this.get("io"),i=this.get("ioConfig"),s=t.request,o=e.merge(i,t.cfg,{on:e.merge(i,{success:this.successHandler,failure:this.failureHandler}),context:this,arguments:t});return e.Lang.isString(s)&&(o.method&&o.method.toUpperCase()==="POST"?o.data=o.data?o.data+s:s:n+=s),e.DataSource.Local.transactions[t.tId]=r(n,o),t.tId}}),e.DataSource.IO=n},"3.9.1",{requires:["datasource-local","io-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-io",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NAME:"dataSourceIO",ATTRS:{io:{value:e.io,cloneDefaultValue:!1},ioConfig:{value:null}}}),e.extend(n,e.DataSource.Local,{initializer:function(e){this._queue={interval:null,conn:null,requests:[]}},successHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.data=n,this.fire("data",s),i&&i.on&&i.on.success&&i.on.success.apply(i.context||e,arguments)},failureHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.error=new Error("IO data failure"),s.data=n,this.fire("data",s),i&&i.on&&i.on.failure&&i.on.failure.apply(i.context||e,arguments)},_queue:null,_defRequestFn:function(t){var n=this.get("source"),r=this.get("io"),i=this.get("ioConfig"),s=t.request,o=e.merge(i,t.cfg,{on:e.merge(i,{success:this.successHandler,failure:this.failureHandler}),context:this,arguments:t});return e.Lang.isString(s)&&(o.method&&o.method.toUpperCase()==="POST"?o.data=o.data?o.data+s:s:n+=s),e.DataSource.Local.transactions[t.tId]=r(n,o),t.tId}}),e.DataSource.IO=n},"3.12.0",{requires:["datasource-local","io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io.js b/lib/yuilib/3.12.0/datasource-io/datasource-io.js similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io.js index b1062092638..f864191d80f 100644 --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-io', function (Y, NAME) { /** @@ -199,4 +205,4 @@ Y.extend(DSIO, Y.DataSource.Local, { Y.DataSource.IO = DSIO; -}, '3.9.1', {"requires": ["datasource-local", "io-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js index 45e481db733..fba492e2b13 100644 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-jsonschema', function (Y, NAME) { /** @@ -101,4 +107,4 @@ Y.extend(DataSourceJSONSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceJSONSchema = DataSourceJSONSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js similarity index 69% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js index 64b0a2ad12e..baf89f70308 100644 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-jsonschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceJSONSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=t.data&&(t.data.responseText||t.data),r=this.get("schema"),i=t.details[0];return i.response=e.DataSchema.JSON.apply.call(this,r,n)||{meta:{},results:n},this.get("host").fire("response",i),new e.Do.Halt("DataSourceJSONSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceJSONSchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-json"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-jsonschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceJSONSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=t.data&&(t.data.responseText||t.data),r=this.get("schema"),i=t.details[0];return i.response=e.DataSchema.JSON.apply.call(this,r,n)||{meta:{},results:n},this.get("host").fire("response",i),new e.Do.Halt("DataSourceJSONSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceJSONSchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js index 45e481db733..fba492e2b13 100644 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-jsonschema', function (Y, NAME) { /** @@ -101,4 +107,4 @@ Y.extend(DataSourceJSONSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceJSONSchema = DataSourceJSONSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js b/lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js index 15a1a33665f..2c24f2972cc 100644 --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-local', function (Y, NAME) { /** @@ -400,4 +406,4 @@ Y.extend(DSLocal, Y.Base, { Y.namespace("DataSource").Local = DSLocal; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js b/lib/yuilib/3.12.0/datasource-local/datasource-local-min.js similarity index 86% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local-min.js index f436f1bd7b3..cb4f5aa5152 100644 --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-local",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceLocal",ATTRS:{source:{value:null}},_tId:0,transactions:{},issueCallback:function(e,t){var n=e.on||e.callback,r=n&&n.success,i=e.details[0];i.error=e.error||e.response.error,i.error&&(t.fire("error",i),r=n&&n.failure),r&&r(i)}}),e.extend(r,e.Base,{initializer:function(e){this._initEvents()},_initEvents:function(){this.publish("request",{defaultFn:e.bind("_defRequestFn",this),queuable:!0}),this.publish("data",{defaultFn:e.bind("_defDataFn",this),queuable:!0}),this.publish("response",{defaultFn:e.bind("_defResponseFn",this),queuable:!0})},_defRequestFn:function(e){var t=this.get("source"),r=e.details[0];n.isUndefined(t)&&(r.error=new Error("Local source undefined")),r.data=t,this.fire("data",r)},_defDataFn:function(e){var t=e.data,r=e.meta,i={results:n.isArray(t)?t:[t],meta:r?r:{}},s=e.details[0];s.response=i,this.fire("response",s)},_defResponseFn:function(e){r.issueCallback(e,this)},sendRequest:function(e){var t=r._tId++,n;return e=e||{},n=e.on||e.callback,this.fire("request",{tId:t,request:e.request,on:n,callback:n,cfg:e.cfg||{}}),t}}),e.namespace("DataSource").Local=r},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-local",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceLocal",ATTRS:{source:{value:null}},_tId:0,transactions:{},issueCallback:function(e,t){var n=e.on||e.callback,r=n&&n.success,i=e.details[0];i.error=e.error||e.response.error,i.error&&(t.fire("error",i),r=n&&n.failure),r&&r(i)}}),e.extend(r,e.Base,{initializer:function(e){this._initEvents()},_initEvents:function(){this.publish("request",{defaultFn:e.bind("_defRequestFn",this),queuable:!0}),this.publish("data",{defaultFn:e.bind("_defDataFn",this),queuable:!0}),this.publish("response",{defaultFn:e.bind("_defResponseFn",this),queuable:!0})},_defRequestFn:function(e){var t=this.get("source"),r=e.details[0];n.isUndefined(t)&&(r.error=new Error("Local source undefined")),r.data=t,this.fire("data",r)},_defDataFn:function(e){var t=e.data,r=e.meta,i={results:n.isArray(t)?t:[t],meta:r?r:{}},s=e.details[0];s.response=i,this.fire("response",s)},_defResponseFn:function(e){r.issueCallback(e,this)},sendRequest:function(e){var t=r._tId++,n;return e=e||{},n=e.on||e.callback,this.fire("request",{tId:t,request:e.request,on:n,callback:n,cfg:e.cfg||{}}),t}}),e.namespace("DataSource").Local=r},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local.js b/lib/yuilib/3.12.0/datasource-local/datasource-local.js similarity index 98% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local.js index 9ebde9c8df3..fbd6d3475ec 100644 --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-local', function (Y, NAME) { /** @@ -396,4 +402,4 @@ Y.extend(DSLocal, Y.Base, { Y.namespace("DataSource").Local = DSLocal; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js index 909fc1efc82..c41200e69ef 100644 --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-polling', function (Y, NAME) { /** @@ -91,4 +97,4 @@ Pollable.prototype = { Y.augment(Y.DataSource.Local, Pollable); -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js similarity index 67% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js index f2a61e55711..1a3e5446fc0 100644 --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-polling",function(e,t){function n(){this._intervals={}}n.prototype={_intervals:null,setInterval:function(t,n){var r=e.later(t,this,this.sendRequest,[n],!0);return this._intervals[r.id]=r,e.later(0,this,this.sendRequest,[n]),r.id},clearInterval:function(e,t){e=t||e,this._intervals[e]&&(this._intervals[e].cancel(),delete this._intervals[e])},clearAllIntervals:function(){e.each(this._intervals,this.clearInterval,this)}},e.augment(e.DataSource.Local,n)},"3.9.1",{requires:["datasource-local"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-polling",function(e,t){function n(){this._intervals={}}n.prototype={_intervals:null,setInterval:function(t,n){var r=e.later(t,this,this.sendRequest,[n],!0);return this._intervals[r.id]=r,e.later(0,this,this.sendRequest,[n]),r.id},clearInterval:function(e,t){e=t||e,this._intervals[e]&&(this._intervals[e].cancel(),delete this._intervals[e])},clearAllIntervals:function(){e.each(this._intervals,this.clearInterval,this)}},e.augment(e.DataSource.Local,n)},"3.12.0",{requires:["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling.js similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling.js index 909fc1efc82..c41200e69ef 100644 --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-polling', function (Y, NAME) { /** @@ -91,4 +97,4 @@ Pollable.prototype = { Y.augment(Y.DataSource.Local, Pollable); -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js index 69ed4b2eb19..06fd1d7109a 100644 --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-textschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceTextSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceTextSchema = DataSourceTextSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js similarity index 70% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js index 86c9aa0248b..34b32f57fd4 100644 --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-textschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceTextSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=t.data.responseText||t.data;return r.response=e.DataSchema.Text.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceTextSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceTextSchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-text"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-textschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceTextSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=t.data.responseText||t.data;return r.response=e.DataSchema.Text.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceTextSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceTextSchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js index 69ed4b2eb19..06fd1d7109a 100644 --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-textschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceTextSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceTextSchema = DataSourceTextSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js index 450c784f2d3..507e9064170 100644 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-xmlschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceXMLSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceXMLSchema = DataSourceXMLSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js similarity index 68% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js index 28ebb6991c2..5489e33bc76 100644 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-xmlschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceXMLSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=e.XML.parse(t.data.responseText)||t.data;return r.response=e.DataSchema.XML.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceXMLSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceXMLSchema=n},"3.9.1",{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-xmlschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceXMLSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=e.XML.parse(t.data.responseText)||t.data;return r.response=e.DataSchema.XML.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceXMLSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceXMLSchema=n},"3.12.0",{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js index 450c784f2d3..507e9064170 100644 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-xmlschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceXMLSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceXMLSchema = DataSourceXMLSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); diff --git a/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css b/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css new file mode 100644 index 00000000000..522e38e5904 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css @@ -0,0 +1,11 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* foundational CSS */ +.yui3-datatable-table { + empty-cells: show; +} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css similarity index 92% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css rename to lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css index 3f8c049775d..852f97cb90d 100644 --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* basic skin styles */ .yui3-skin-night .yui3-datatable { color:#8E8E8E; diff --git a/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css new file mode 100644 index 00000000000..018848fb639 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-table{empty-cells:show}.yui3-skin-night .yui3-datatable{color:#8e8e8e;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-datatable-table{border:1px solid #323434;border-collapse:separate;border-spacing:0;color:#8e8e8e;margin:0;padding:0}.yui3-skin-night .yui3-datatable-caption{color:#474747;font:italic 85%/1 HelveticaNeue,arial,helvetica,clean,sans-serif;padding:1em 0;text-align:center}.yui3-skin-night .yui3-datatable-cell,.yui3-skin-night .yui3-datatable-header{border-left:1px solid #303030;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-night .yui3-datatable-cell:first-child,.yui3-skin-night .yui3-datatable-first-header{border-left-width:0}.yui3-skin-night .yui3-datatable-header{background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f));color:#eee;font-weight:normal;text-align:left;vertical-align:bottom;white-space:nowrap}.yui3-skin-night .yui3-datatable-cell{background-color:transparent}.yui3-skin-night .yui3-datatable-even .yui3-datatable-cell{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-odd .yui3-datatable-cell{background-color:#1d1e1e}#yui3-css-stamp.skin-night-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css rename to lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css index 11d219d9ae4..ca5db776dbb 100644 --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* basic skin styles */ .yui3-skin-sam .yui3-datatable-table { margin: 0; diff --git a/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css new file mode 100644 index 00000000000..ae4bf472aa9 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js b/lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js rename to lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js index ddbd461823e..903f7128657 100644 --- a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js +++ b/lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-base', function (Y, NAME) { /** @@ -682,7 +688,7 @@ Y.DataTable = Y.mix( Y.DataTable); // Migrate static and namespaced classes -}, '3.9.1', { +}, '3.12.0', { "requires": [ "datatable-core", "datatable-table", diff --git a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js b/lib/yuilib/3.12.0/datatable-base/datatable-base-min.js similarity index 90% rename from lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js rename to lib/yuilib/3.12.0/datatable-base/datatable-base-min.js index c7917adc84d..5c1f3c08bfb 100644 --- a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js +++ b/lib/yuilib/3.12.0/datatable-base/datatable-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatable-base",function(e,t){e.DataTable.Base=e.Base.create("datatable",e.Widget,[e.DataTable.Core],{delegate:function(){var e=this.get("contentBox");return e.delegate.apply(e,arguments)},destructor:function(){this.view&&this.view.destroy()},getCell:function(){return this.view&&this.view.getCell&&this.view.getCell.apply(this.view,arguments)},getRow:function(){return this.view&&this.view.getRow&&this.view.getRow.apply(this.view,arguments)},_afterDisplayColumnsChange:function(e){this._extractDisplayColumns(e.newVal||[])},bindUI:function(){this._eventHandles.relayCoreChanges=this.after(["columnsChange","dataChange","summaryChange","captionChange","widthChange"],e.bind("_relayCoreAttrChange",this))},_defRenderViewFn:function(e){e.view.render()},_extractDisplayColumns:function(t){function r(t){var i,s,o;for(i=0,s=t.length;i` section of a table. Used as the default `bodyView` for `Y.DataTable.Base` and `Y.DataTable` classes. Translates the provided `modelList` into a rendered `` based on the data -in the constituent Models, altered or ammended by any special column +in the constituent Models, altered or amended by any special column configurations. The `columns` configuration, passed to the constructor, determines which @@ -201,7 +207,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { // Next cell var cell = table.getCell(e.target, 'next'); - var cell = table.getCell(e.taregt, [0, 1];
+ var cell = table.getCell(e.target, [0, 1]; @method getCell @param {Number[]|Node} seed Array of row and column indexes, or a Node that @@ -350,7 +356,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { 1. A row template is assembled from the `columns` attribute (see `_createRowTemplate`) - 2. An HTML string is built up by concatening the application of the data in + 2. An HTML string is built up by concatenating the application of the data in each Model in the `modelList` to the row template. For cells with `formatter`s, the function is called to generate cell content. Cells with `nodeFormatter`s are ignored. For all other cells, the data value @@ -450,13 +456,150 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { table.appendChild(tbody); } - this._afterRenderCleanup(); - this.bindUI(); return this; }, + /** + Refreshes the provided row against the provided model and the Array of + columns to be updated. + + @method refreshRow + @param {Y.Node} row + @param {Y.Model} model Y.Model representation of the row + @param {Object[]} columns Array of column configuration objects + + @chainable + */ + refreshRow: function (row, model, columns) { + var key, + cell, + len = columns.length, + i; + + for (i = 0; i < len; i++) { + key = columns[i]; + cell = row.one('.' + this.getClassName('col', key)); + this.refreshCell(cell, model); + } + + return this; + }, + + /** + Refreshes the given cell with the provided model data and the provided + column configuration. + + Uses the provided column formatter if aviable. + + @method refreshCell + @param {Y.Node} cell Y.Node pointer to the cell element to be updated + @param {Y.Model} [model] Y.Model representation of the row + @param {Object} [col] Column configuration object for the cell + + @chainable + */ + refreshCell: function (cell, model, col) { + var content, + formatterFn, + formatterData, + data = model.toJSON(); + + cell = this.getCell(cell); + model || (model = this.getRecord(cell)); + col || (col = this.getColumn(cell)); + + if (col.nodeFormatter) { + formatterData = { + cell: cell.one('.' + this.getClassName('liner')) || cell, + column: col, + data: data, + record: model, + rowIndex: this._getRowIndex(cell.ancestor('tr')), + td: cell, + value: data[col.key] + }; + + keep = col.nodeFormatter.call(host,formatterData); + + if (keep === false) { + // Remove from the Node cache to reduce + // memory footprint. This also purges events, + // which you shouldn't be scoping to a cell + // anyway. You've been warned. Incidentally, + // you should always return false. Just sayin. + cell.destroy(true); + } + + } else if (col.formatter) { + if (!col._formatterFn) { + col = this._setColumnsFormatterFn([col])[0]; + } + + formatterFn = col._formatterFn || null; + + if (formatterFn) { + formatterData = { + value : data[col.key], + data : data, + column : col, + record : model, + className: '', + rowClass : '', + rowIndex : this._getRowIndex(cell.ancestor('tr')) + }; + + // Formatters can either return a value ... + content = formatterFn.call(this.get('host'), formatterData); + + // ... or update the value property of the data obj passed + if (content === undefined) { + content = formatterData.value; + } + } + + if (content === undefined || content === null || content === '') { + content = col.emptyCellValue || ''; + } + + } else { + content = data[col.key] || col.emptyCellValue || ''; + } + + cell.setHTML(col.allowHTML ? content : Y.Escape.html(content)); + + return this; + }, + + /** + Returns column data from this.get('columns'). If a Y.Node is provided as + the key, will try to determine the key from the classname + @method getColumn + @param {String|Y.Node} key + @return {Object} Returns column configuration + */ + getColumn: function (key) { + if (Y.instanceOf(key, Y.Node)) { + // get column name from node + key = key.get('className').match( + new RegExp( this.getClassName('col') +'-([^ ]*)' ) + )[1]; + } + + var cols = this.get('columns'), + col = null; + + Y.Array.some(cols, function (_col) { + if (_col.key === key) { + col = _col; + return true; + } + }); + + return col; + }, + // -- Protected and private methods --------------------------------------- /** Handles changes in the source's columns attribute. Redraws the table data. @@ -487,11 +630,110 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @protected @since 3.5.0 **/ - _afterDataChange: function () { - //var type = e.type.slice(e.type.lastIndexOf(':') + 1); + _afterDataChange: function (e) { + var type = (e.type.match(/:(add|change|remove)$/) || [])[1], + index = e.index, + columns = this.get('columns'), + col, + changed = e.changed && Y.Object.keys(e.changed), + key, + row, + i, + len; + + for (i = 0, len = columns.length; i < len; i++ ) { + col = columns[i]; + + // since nodeFormatters typcially make changes outside of it's + // cell, we need to see if there are any columns that have a + // nodeFormatter and if so, we need to do a full render() of the + // tbody + if (col.hasOwnProperty('nodeFormatter')) { + this.render(); + return; + } + } + + // TODO: if multiple rows are being added/remove/swapped, can we avoid the restriping? + switch (type) { + case 'change': + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + key = col.key || col.name; + if (col.formatter && !e.changed[key]) { + changed.push(key); + } + } + this.refreshRow(this.getRow(e.target), e.target, changed); + break; + case 'add': + // we need to make sure we don't have an index larger than the data we have + index = Math.min(index, this.get('modelList').size() - 1); + + // updates the columns with formatter functions + this._setColumnsFormatterFn(columns); + row = Y.Node.create(this._createRowHTML(e.model, index, columns)); + this.tbodyNode.insert(row, index); + this._restripe(index); + break; + case 'remove': + this.getRow(index).remove(true); + // we removed a row, so we need to back up our index to stripe + this._restripe(index - 1); + break; + default: + this.render(); + } + }, + + /** + Toggles the odd/even classname of the row after the given index. This method + is used to update rows after a row is inserted into or removed from the table. + Note this event is delayed so the table is only restriped once when multiple + rows are updated at one time. + + @protected + @method _restripe + @param {Number} [index] Index of row to start restriping after + @since 3.11.0 + */ + _restripe: function (index) { + var task = this._restripeTask, + self; + + // index|0 to force int, avoid NaN. Math.max() to avoid neg indexes. + index = Math.max((index|0), 0); + + if (!task) { + self = this; + + this._restripeTask = { + timer: setTimeout(function () { + // Check for self existence before continuing + if (!self || self.get('destroy') || !self.tbodyNode || !self.tbodyNode.inDoc()) { + self._restripeTask = null; + return; + } + + var odd = [self.CLASS_ODD, self.CLASS_EVEN], + even = [self.CLASS_EVEN, self.CLASS_ODD], + index = self._restripeTask.index; + + self.tbodyNode.get('childNodes') + .slice(index) + .each(function (row, i) { // TODO: each vs batch + row.replaceClass.apply(row, (index + i) % 2 ? even : odd); + }); + + self._restripeTask = null; + }, 0), + + index: index + }; + } else { + task.index = Math.min(task.index, index); + } - // TODO: Isolate changes - this.render(); }, /** @@ -529,7 +771,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @since 3.5.0 **/ _applyNodeFormatters: function (tbody, columns) { - var host = this.host, + var host = this.host || this, data = this.get('modelList'), formatters = [], linerQuery = '.' + this.getClassName('liner'), @@ -712,18 +954,48 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { values.rowClass += ' ' + formatterData.rowClass; } - if (value === undefined || value === null || value === '') { - value = col.emptyCellValue || ''; + // if the token missing OR is the value a legit value + if (!values.hasOwnProperty(token) || data.hasOwnProperty(col.key)) { + if (value === undefined || value === null || value === '') { + value = col.emptyCellValue || ''; + } + + values[token] = col.allowHTML ? value : htmlEscape(value); } - - values[token] = col.allowHTML ? value : htmlEscape(value); - - values.rowClass = values.rowClass.replace(/\s+/g, ' '); } + // replace consecutive whitespace with a single space + values.rowClass = values.rowClass.replace(/\s+/g, ' '); + return fromTemplate(this._rowTemplate, values); }, + /** + Locates the row within the tbodyNode and returns the found index, or Null + if it is not found in the tbodyNode + @param {Y.Node} row + @return {Number} Index of row in tbodyNode + */ + _getRowIndex: function (row) { + var tbody = this.tbodyNode, + index = 1; + + if (tbody && row) { + + //if row is not in the tbody, return + if (row.ancestor('tbody') !== tbody) { + return null; + } + + // increment until we no longer have a previous node + while (row = row.previous()) { // NOTE: assignment + index++; + } + } + + return index; + }, + /** Creates a custom HTML template string for use in generating the markup for individual table rows with {placeholder}s to capture data from the Models @@ -739,14 +1011,15 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { _createRowTemplate: function (columns) { var html = '', cellTemplate = this.CELL_TEMPLATE, - F = Y.DataTable.BodyView.Formatters, i, len, col, key, token, headers, tokenValues, formatter; + this._setColumnsFormatterFn(columns); + for (i = 0, len = columns.length; i < len; ++i) { col = columns[i]; key = col.key; token = col._id || key; - formatter = col.formatter; + formatter = col._formatterFn; // Only include headers if there are more than one headers = (col._headers || []).length > 1 ? 'headers="' + col._headers.join(' ') + '"' : ''; @@ -759,14 +1032,8 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { this.getClassName('cell') + ' {' + token + '-className}' }; - if (formatter) { - if (Lang.isFunction(formatter)) { - col._formatterFn = formatter; - } else if (formatter in F) { - col._formatterFn = F[formatter].call(this.host || this, col); - } else { - tokenValues.content = formatter.replace(valueRegExp, tokenValues.content); - } + if (!formatter && col.formatter) { + tokenValues.content = col.formatter.replace(valueRegExp, tokenValues.content); } if (col.nodeFormatter) { @@ -781,19 +1048,37 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { content: html }); }, - /** - Cleans up temporary values created during rendering. - @method _afterRenderCleanup - @private - */ - _afterRenderCleanup: function () { - var columns = this.get('columns'), - i, len = columns.length; - for (i = 0;i < len; i+=1) { - delete columns[i]._formatterFn; + /** + Parses the columns array and defines the column's _formatterFn if there + is a formatter available on the column + @protected + @method _setColumnsFormatterFn + @param {Object[]} columns Array of column configuration objects + + @return {Object[]} Returns modified columns configuration Array + */ + _setColumnsFormatterFn: function (columns) { + var Formatters = Y.DataTable.BodyView.Formatters, + formatter, + col, + i, + len; + + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + formatter = col.formatter; + + if (!col._formatterFn && formatter) { + if (Lang.isFunction(formatter)) { + col._formatterFn = formatter; + } else if (formatter in Formatters) { + col._formatterFn = Formatters[formatter].call(this.host || this, col); + } + } } + return columns; }, /** @@ -910,4 +1195,4 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { }); -}, '3.9.1', {"requires": ["datatable-core", "view", "classnamemanager"]}); +}, '3.12.0', {"requires": ["datatable-core", "view", "classnamemanager"]}); diff --git a/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js b/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js new file mode 100644 index 00000000000..205fc453fb6 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-body",function(e,t){var n=e.Lang,r=n.isArray,i=n.isNumber,s=n.isString,o=n.sub,u=e.Escape.html,a=e.Array,f=e.bind,l=e.Object,c=/\{value\}/g;e.namespace("DataTable").BodyView=e.Base.create("tableBody",e.View,[],{CELL_TEMPLATE:'{content}',ROW_TEMPLATE:'{content}',TBODY_TEMPLATE:'',getCell:function(t,n){var i=this.tbodyNode,o,u,a,f;if(t&&i){r(t)?(o=i.get("children").item(t[0]),u=o&&o.get("children").item(t[1])):e.instanceOf(t,e.Node)&&(u=t.ancestor("."+this.getClassName("cell"),!0));if(u&&n){f=i.get("firstChild.rowIndex");if(s(n))switch(n){case"above":n=[-1,0];break;case"below":n=[1,0];break;case"next":n=[0,1];break;case"previous":n=[0,-1]}r(n)&&(a=u.get("parentNode.rowIndex")+n[0]-f,o=i.get("children").item(a),a=u.get("cellIndex")+n[1],u=o&&o.get("children").item(a))}}return u||null},getClassName:function(){var t=this.host,n;return t&&t.getClassName?t.getClassName.apply(t,arguments):(n=a(arguments),n.unshift(this.constructor.NAME),e.ClassNameManager.getClassName.apply(e.ClassNameManager,n))},getRecord:function(t){var n=this.get("modelList"),r=this.tbodyNode,i=null,o;return r&&(s(t)&&(t=r.one("#"+t)),e.instanceOf(t,e.Node)&&(i=t.ancestor(function(e){return e.get("parentNode").compareTo(r)},!0),o=i&&n.getByClientId(i.getData("yui3-record")))),o||null},getRow:function(e){var t=this.tbodyNode,n=null;return t&&(e&&(e=this._idMap[e.get?e.get("clientId"):e]||e),n=i(e)?t.get("children").item(e):t.one("#"+e)),n},render:function(){var e=this.get("container"),t=this.get("modelList"),n=this.get("columns"),r=this.tbodyNode||(this.tbodyNode=this._createTBodyNode());return this._createRowTemplate(n),t&&(r.setHTML(this._createDataHTML(n)),this._applyNodeFormatters(r,n)),r.get("parentNode")!==e&&e.appendChild(r),this.bindUI(),this},refreshRow:function(e,t,n){var r,i,s=n.length,o;for(o=0;o1?'headers="'+s._headers.join(" ")+'"':"",l={content:"{"+a+"}",headers:f,className:this.getClassName("col",a)+" "+(s.className||"")+" "+this.getClassName("cell")+" {"+a+"-className}"},!h&&s.formatter&&(l.content=s.formatter.replace(c,l.content)),s.nodeFormatter&&(l.content=""),t+=o(s.cellTemplate||n,l);this._rowTemplate=o(this.ROW_TEMPLATE,{content:t})},_setColumnsFormatterFn:function(t){var r=e.DataTable.BodyView.Formatters,i,s,o,u;for(o=0,u=t.length;o` section of a table. Used as the default `bodyView` for `Y.DataTable.Base` and `Y.DataTable` classes. Translates the provided `modelList` into a rendered `` based on the data -in the constituent Models, altered or ammended by any special column +in the constituent Models, altered or amended by any special column configurations. The `columns` configuration, passed to the constructor, determines which @@ -201,7 +207,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { // Next cell var cell = table.getCell(e.target, 'next'); - var cell = table.getCell(e.taregt, [0, 1]; + var cell = table.getCell(e.target, [0, 1]; @method getCell @param {Number[]|Node} seed Array of row and column indexes, or a Node that @@ -350,7 +356,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { 1. A row template is assembled from the `columns` attribute (see `_createRowTemplate`) - 2. An HTML string is built up by concatening the application of the data in + 2. An HTML string is built up by concatenating the application of the data in each Model in the `modelList` to the row template. For cells with `formatter`s, the function is called to generate cell content. Cells with `nodeFormatter`s are ignored. For all other cells, the data value @@ -450,13 +456,150 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { table.appendChild(tbody); } - this._afterRenderCleanup(); - this.bindUI(); return this; }, + /** + Refreshes the provided row against the provided model and the Array of + columns to be updated. + + @method refreshRow + @param {Y.Node} row + @param {Y.Model} model Y.Model representation of the row + @param {Object[]} columns Array of column configuration objects + + @chainable + */ + refreshRow: function (row, model, columns) { + var key, + cell, + len = columns.length, + i; + + for (i = 0; i < len; i++) { + key = columns[i]; + cell = row.one('.' + this.getClassName('col', key)); + this.refreshCell(cell, model); + } + + return this; + }, + + /** + Refreshes the given cell with the provided model data and the provided + column configuration. + + Uses the provided column formatter if aviable. + + @method refreshCell + @param {Y.Node} cell Y.Node pointer to the cell element to be updated + @param {Y.Model} [model] Y.Model representation of the row + @param {Object} [col] Column configuration object for the cell + + @chainable + */ + refreshCell: function (cell, model, col) { + var content, + formatterFn, + formatterData, + data = model.toJSON(); + + cell = this.getCell(cell); + model || (model = this.getRecord(cell)); + col || (col = this.getColumn(cell)); + + if (col.nodeFormatter) { + formatterData = { + cell: cell.one('.' + this.getClassName('liner')) || cell, + column: col, + data: data, + record: model, + rowIndex: this._getRowIndex(cell.ancestor('tr')), + td: cell, + value: data[col.key] + }; + + keep = col.nodeFormatter.call(host,formatterData); + + if (keep === false) { + // Remove from the Node cache to reduce + // memory footprint. This also purges events, + // which you shouldn't be scoping to a cell + // anyway. You've been warned. Incidentally, + // you should always return false. Just sayin. + cell.destroy(true); + } + + } else if (col.formatter) { + if (!col._formatterFn) { + col = this._setColumnsFormatterFn([col])[0]; + } + + formatterFn = col._formatterFn || null; + + if (formatterFn) { + formatterData = { + value : data[col.key], + data : data, + column : col, + record : model, + className: '', + rowClass : '', + rowIndex : this._getRowIndex(cell.ancestor('tr')) + }; + + // Formatters can either return a value ... + content = formatterFn.call(this.get('host'), formatterData); + + // ... or update the value property of the data obj passed + if (content === undefined) { + content = formatterData.value; + } + } + + if (content === undefined || content === null || content === '') { + content = col.emptyCellValue || ''; + } + + } else { + content = data[col.key] || col.emptyCellValue || ''; + } + + cell.setHTML(col.allowHTML ? content : Y.Escape.html(content)); + + return this; + }, + + /** + Returns column data from this.get('columns'). If a Y.Node is provided as + the key, will try to determine the key from the classname + @method getColumn + @param {String|Y.Node} key + @return {Object} Returns column configuration + */ + getColumn: function (key) { + if (Y.instanceOf(key, Y.Node)) { + // get column name from node + key = key.get('className').match( + new RegExp( this.getClassName('col') +'-([^ ]*)' ) + )[1]; + } + + var cols = this.get('columns'), + col = null; + + Y.Array.some(cols, function (_col) { + if (_col.key === key) { + col = _col; + return true; + } + }); + + return col; + }, + // -- Protected and private methods --------------------------------------- /** Handles changes in the source's columns attribute. Redraws the table data. @@ -487,11 +630,110 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @protected @since 3.5.0 **/ - _afterDataChange: function () { - //var type = e.type.slice(e.type.lastIndexOf(':') + 1); + _afterDataChange: function (e) { + var type = (e.type.match(/:(add|change|remove)$/) || [])[1], + index = e.index, + columns = this.get('columns'), + col, + changed = e.changed && Y.Object.keys(e.changed), + key, + row, + i, + len; + + for (i = 0, len = columns.length; i < len; i++ ) { + col = columns[i]; + + // since nodeFormatters typcially make changes outside of it's + // cell, we need to see if there are any columns that have a + // nodeFormatter and if so, we need to do a full render() of the + // tbody + if (col.hasOwnProperty('nodeFormatter')) { + this.render(); + return; + } + } + + // TODO: if multiple rows are being added/remove/swapped, can we avoid the restriping? + switch (type) { + case 'change': + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + key = col.key || col.name; + if (col.formatter && !e.changed[key]) { + changed.push(key); + } + } + this.refreshRow(this.getRow(e.target), e.target, changed); + break; + case 'add': + // we need to make sure we don't have an index larger than the data we have + index = Math.min(index, this.get('modelList').size() - 1); + + // updates the columns with formatter functions + this._setColumnsFormatterFn(columns); + row = Y.Node.create(this._createRowHTML(e.model, index, columns)); + this.tbodyNode.insert(row, index); + this._restripe(index); + break; + case 'remove': + this.getRow(index).remove(true); + // we removed a row, so we need to back up our index to stripe + this._restripe(index - 1); + break; + default: + this.render(); + } + }, + + /** + Toggles the odd/even classname of the row after the given index. This method + is used to update rows after a row is inserted into or removed from the table. + Note this event is delayed so the table is only restriped once when multiple + rows are updated at one time. + + @protected + @method _restripe + @param {Number} [index] Index of row to start restriping after + @since 3.11.0 + */ + _restripe: function (index) { + var task = this._restripeTask, + self; + + // index|0 to force int, avoid NaN. Math.max() to avoid neg indexes. + index = Math.max((index|0), 0); + + if (!task) { + self = this; + + this._restripeTask = { + timer: setTimeout(function () { + // Check for self existence before continuing + if (!self || self.get('destroy') || !self.tbodyNode || !self.tbodyNode.inDoc()) { + self._restripeTask = null; + return; + } + + var odd = [self.CLASS_ODD, self.CLASS_EVEN], + even = [self.CLASS_EVEN, self.CLASS_ODD], + index = self._restripeTask.index; + + self.tbodyNode.get('childNodes') + .slice(index) + .each(function (row, i) { // TODO: each vs batch + row.replaceClass.apply(row, (index + i) % 2 ? even : odd); + }); + + self._restripeTask = null; + }, 0), + + index: index + }; + } else { + task.index = Math.min(task.index, index); + } - // TODO: Isolate changes - this.render(); }, /** @@ -529,7 +771,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @since 3.5.0 **/ _applyNodeFormatters: function (tbody, columns) { - var host = this.host, + var host = this.host || this, data = this.get('modelList'), formatters = [], linerQuery = '.' + this.getClassName('liner'), @@ -712,18 +954,48 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { values.rowClass += ' ' + formatterData.rowClass; } - if (value === undefined || value === null || value === '') { - value = col.emptyCellValue || ''; + // if the token missing OR is the value a legit value + if (!values.hasOwnProperty(token) || data.hasOwnProperty(col.key)) { + if (value === undefined || value === null || value === '') { + value = col.emptyCellValue || ''; + } + + values[token] = col.allowHTML ? value : htmlEscape(value); } - - values[token] = col.allowHTML ? value : htmlEscape(value); - - values.rowClass = values.rowClass.replace(/\s+/g, ' '); } + // replace consecutive whitespace with a single space + values.rowClass = values.rowClass.replace(/\s+/g, ' '); + return fromTemplate(this._rowTemplate, values); }, + /** + Locates the row within the tbodyNode and returns the found index, or Null + if it is not found in the tbodyNode + @param {Y.Node} row + @return {Number} Index of row in tbodyNode + */ + _getRowIndex: function (row) { + var tbody = this.tbodyNode, + index = 1; + + if (tbody && row) { + + //if row is not in the tbody, return + if (row.ancestor('tbody') !== tbody) { + return null; + } + + // increment until we no longer have a previous node + while (row = row.previous()) { // NOTE: assignment + index++; + } + } + + return index; + }, + /** Creates a custom HTML template string for use in generating the markup for individual table rows with {placeholder}s to capture data from the Models @@ -739,14 +1011,15 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { _createRowTemplate: function (columns) { var html = '', cellTemplate = this.CELL_TEMPLATE, - F = Y.DataTable.BodyView.Formatters, i, len, col, key, token, headers, tokenValues, formatter; + this._setColumnsFormatterFn(columns); + for (i = 0, len = columns.length; i < len; ++i) { col = columns[i]; key = col.key; token = col._id || key; - formatter = col.formatter; + formatter = col._formatterFn; // Only include headers if there are more than one headers = (col._headers || []).length > 1 ? 'headers="' + col._headers.join(' ') + '"' : ''; @@ -759,14 +1032,8 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { this.getClassName('cell') + ' {' + token + '-className}' }; - if (formatter) { - if (Lang.isFunction(formatter)) { - col._formatterFn = formatter; - } else if (formatter in F) { - col._formatterFn = F[formatter].call(this.host || this, col); - } else { - tokenValues.content = formatter.replace(valueRegExp, tokenValues.content); - } + if (!formatter && col.formatter) { + tokenValues.content = col.formatter.replace(valueRegExp, tokenValues.content); } if (col.nodeFormatter) { @@ -781,19 +1048,37 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { content: html }); }, - /** - Cleans up temporary values created during rendering. - @method _afterRenderCleanup - @private - */ - _afterRenderCleanup: function () { - var columns = this.get('columns'), - i, len = columns.length; - for (i = 0;i < len; i+=1) { - delete columns[i]._formatterFn; + /** + Parses the columns array and defines the column's _formatterFn if there + is a formatter available on the column + @protected + @method _setColumnsFormatterFn + @param {Object[]} columns Array of column configuration objects + + @return {Object[]} Returns modified columns configuration Array + */ + _setColumnsFormatterFn: function (columns) { + var Formatters = Y.DataTable.BodyView.Formatters, + formatter, + col, + i, + len; + + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + formatter = col.formatter; + + if (!col._formatterFn && formatter) { + if (Lang.isFunction(formatter)) { + col._formatterFn = formatter; + } else if (formatter in Formatters) { + col._formatterFn = Formatters[formatter].call(this.host || this, col); + } + } } + return columns; }, /** @@ -910,4 +1195,4 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { }); -}, '3.9.1', {"requires": ["datatable-core", "view", "classnamemanager"]}); +}, '3.12.0', {"requires": ["datatable-core", "view", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js rename to lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js index fd4bce8d303..02cdf90cc07 100644 --- a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js +++ b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-column-widths', function (Y, NAME) { /** @@ -101,7 +107,7 @@ To add a liner to all columns, either provide a custom `bodyView` to the DataTable constructor or update the default `bodyView`'s `CELL_TEMPLATE` like so: -
table.on('renderBody', function (e) {
+
table.on('table:renderBody', function (e) {
     e.view.CELL_TEMPLATE = e.view.CELL_TEMPLATE.replace(/\{content\}/,
             '<div class="yui3-datatable-liner">{content}</div>');
 });
@@ -297,4 +303,4 @@ Y.DataTable.ColumnWidths = ColumnWidths;
 Y.Base.mix(Y.DataTable, [ColumnWidths]);
 
 
-}, '3.9.1', {"requires": ["datatable-base"]});
+}, '3.12.0', {"requires": ["datatable-base"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
similarity index 88%
rename from lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js
rename to lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
index b8c1e78fd65..df66cd106cd 100644
--- a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js
+++ b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
@@ -1,2 +1,8 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
-YUI.add("datatable-column-widths",function(e,t){function i(){}var n=e.Lang.isNumber,r=e.Array.indexOf;e.Features.add("table","badColWidth",{test:function(){var t=e.one("body"),n,r;return t&&(n=t.insertBefore('
.
',t.get("firstChild")),r=n.one("td").getComputedStyle("width")!=="1px",n.remove(!0)),r}}),e.mix(i.prototype,{COL_TEMPLATE:"",COLGROUP_TEMPLATE:"",setColumnWidth:function(e,t){var i=this.getColumn(e),s=i&&r(this._displayColumns,i);return s>-1&&(n(t)&&(t+="px"),i.width=t,this._setColumnWidth(s,t)),this},_createColumnGroup:function(){return e.Node.create(this.COLGROUP_TEMPLATE)},initializer:function(){this.after(["renderView","columnsChange"],this._uiSetColumnWidths)},_setColumnWidth:function(t,r){var i=this._colgroupNode,s=i&&i.all("col").item(t),o,u;s&&(r&&n(r)&&(r+="px"),s.setStyle("width",r),r&&e.Features.test("table","badColWidth")&&(o=this.getCell([0,t]),o&&(u=function(e){return parseInt(o.getComputedStyle(e),10)||0},s.setStyle("width",parseInt(r,10)-u("paddingLeft")-u("paddingRight")-u("borderLeftWidth")-u("borderRightWidth")+"px"))))},_uiSetColumnWidths:function(){if(!this.view)return;var e=this.COL_TEMPLATE,t=this._colgroupNode,n=this._displayColumns,r,i;t?t.empty():(t=this._colgroupNode=this._createColumnGroup(),this._tableNode.insertBefore(t,this._tableNode.one("> thead, > tfoot, > tbody")));for(r=0,i=n.length;r.',t.get("firstChild")),r=n.one("td").getComputedStyle("width")!=="1px",n.remove(!0)),r}}),e.mix(i.prototype,{COL_TEMPLATE:"",COLGROUP_TEMPLATE:"",setColumnWidth:function(e,t){var i=this.getColumn(e),s=i&&r(this._displayColumns,i);return s>-1&&(n(t)&&(t+="px"),i.width=t,this._setColumnWidth(s,t)),this},_createColumnGroup:function(){return e.Node.create(this.COLGROUP_TEMPLATE)},initializer:function(){this.after(["renderView","columnsChange"],this._uiSetColumnWidths)},_setColumnWidth:function(t,r){var i=this._colgroupNode,s=i&&i.all("col").item(t),o,u;s&&(r&&n(r)&&(r+="px"),s.setStyle("width",r),r&&e.Features.test("table","badColWidth")&&(o=this.getCell([0,t]),o&&(u=function(e){return parseInt(o.getComputedStyle(e),10)||0},s.setStyle("width",parseInt(r,10)-u("paddingLeft")-u("paddingRight")-u("borderLeftWidth")-u("borderRightWidth")+"px"))))},_uiSetColumnWidths:function(){if(!this.view)return;var e=this.COL_TEMPLATE,t=this._colgroupNode,n=this._displayColumns,r,i;t?t.empty():(t=this._colgroupNode=this._createColumnGroup(),this._tableNode.insertBefore(t,this._tableNode.one("> thead, > tfoot, > tbody")));for(r=0,i=n.length;rtable.on('renderBody', function (e) { +
table.on('table:renderBody', function (e) {
     e.view.CELL_TEMPLATE = e.view.CELL_TEMPLATE.replace(/\{content\}/,
             '<div class="yui3-datatable-liner">{content}</div>');
 });
@@ -297,4 +303,4 @@ Y.DataTable.ColumnWidths = ColumnWidths;
 Y.Base.mix(Y.DataTable, [ColumnWidths]);
 
 
-}, '3.9.1', {"requires": ["datatable-base"]});
+}, '3.12.0', {"requires": ["datatable-base"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js b/lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
similarity index 99%
rename from lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js
rename to lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
index f4589fc70a4..5948a041cee 100644
--- a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js
+++ b/lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
@@ -1,4 +1,10 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
 YUI.add('datatable-core', function (Y, NAME) {
 
 /**
@@ -913,4 +919,4 @@ Y.mix(Table.prototype, {
 });
 
 
-}, '3.9.1', {"requires": ["escape", "model-list", "node-event-delegate"]});
+}, '3.12.0', {"requires": ["escape", "model-list", "node-event-delegate"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js b/lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
similarity index 94%
rename from lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js
rename to lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
index 3a4f2f5de35..44a7aad304c 100644
--- a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js
+++ b/lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
@@ -1,2 +1,8 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
-YUI.add("datatable-core",function(e,t){var n=e.Attribute.INVALID_VALUE,r=e.Lang,i=r.isFunction,s=r.isObject,o=r.isArray,u=r.isString,a=r.isNumber,f=e.Array,l=e.Object.keys,c;c=e.namespace("DataTable").Core=function(){},c.ATTRS={columns:{validator:o,setter:"_setColumns",getter:"_getColumns"},recordType:{getter:"_getRecordType",setter:"_setRecordType"},data:{valueFn:"_initData",setter:"_setData",lazyAdd:!1},recordset:{setter:"_setRecordset",getter:"_getRecordset",lazyAdd:!1},columnset:{setter:"_setColumnset",getter:"_getColumnset",lazyAdd:!1}},e.mix(c.prototype,{getColumn:function(e){var t,n,r,i,u;s(e)&&!o(e)?t=e:t=this.get("columns."+e);if(t)return t;n=this.get("columns");if(a(e)||o(e)){e=f(e),u=n;for(r=0,i=e.length-1;u&&r8?this._columnMap:e},_getColumnset:function(e,t){return this.get(t.replace(/^columnset/,"columns"))},_getRecordType:function(e){return e||this.data&&this.data.model},_initColumns:function(){var e=this.get("columns")||[],t;!e.length&&this.data.size()&&(t=this.data.item(0),t.toJSON&&(t=t.toJSON()),this.set("columns",l(t))),this._setColumnMap(e)},_initCoreEvents:function(){this._eventHandles.coreAttrChanges=this.after({columnsChange:e.bind("_afterColumnsChange",this),recordTypeChange:e.bind("_afterRecordTypeChange",this),dataChange:e.bind("_afterDataChange",this)})},_initData:function(){var t=this.get("recordType"),n=new e.ModelList;return t&&(n.model=t),n},_initDataProperty:function(t){var n;this.data||(n=this.get("recordType"),t&&t.each&&t.toJSON?(this.data=t,n&&(this.data.model=n)):(this.data=new e.ModelList,n&&(this.data.model=n)),this.data.addTarget(this))},initializer:function(e){var t=e.data,n=e.columns,r;this._initDataProperty(t),n||(r=(e.recordType||e.data===this.data)&&this.get("recordType"),r?n=l(r.ATTRS):o(t)&&t.length&&(n=l(t[0])),n&&this.set("columns",n)),this._initColumns(),this._eventHandles={},this._initCoreEvents()},_setColumnMap:function(e){function n(e){var r,i,s,o;for(r=0,i=e.length;r8?this._columnMap:e},_getColumnset:function(e,t){return this.get(t.replace(/^columnset/,"columns"))},_getRecordType:function(e){return e||this.data&&this.data.model},_initColumns:function(){var e=this.get("columns")||[],t;!e.length&&this.data.size()&&(t=this.data.item(0),t.toJSON&&(t=t.toJSON()),this.set("columns",l(t))),this._setColumnMap(e)},_initCoreEvents:function(){this._eventHandles.coreAttrChanges=this.after({columnsChange:e.bind("_afterColumnsChange",this),recordTypeChange:e.bind("_afterRecordTypeChange",this),dataChange:e.bind("_afterDataChange",this)})},_initData:function(){var t=this.get("recordType"),n=new e.ModelList;return t&&(n.model=t),n},_initDataProperty:function(t){var n;this.data||(n=this.get("recordType"),t&&t.each&&t.toJSON?(this.data=t,n&&(this.data.model=n)):(this.data=new e.ModelList,n&&(this.data.model=n)),this.data.addTarget(this))},initializer:function(e){var t=e.data,n=e.columns,r;this._initDataProperty(t),n||(r=(e.recordType||e.data===this.data)&&this.get("recordType"),r?n=l(r.ATTRS):o(t)&&t.length&&(n=l(t[0])),n&&this.set("columns",n)),this._initColumns(),this._eventHandles={},this._initCoreEvents()},_setColumnMap:function(e){function n(e){var r,i,s,o;for(r=0,i=e.length;r` section of a table. Can be
+used as the default `footerView` for `Y.DataTable.Base` and `Y.DataTable`
+classes.
+
+@module datatable
+@submodule datatable-foot
+@since 3.11.0
+**/
+
+
+Y.namespace('DataTable').FooterView = Y.Base.create('tableFooter', Y.View, [], {
+    // -- Instance properties -------------------------------------------------
+
+    /**
+    HTML templates used to create the `` containing the table footers.
+
+    @property TFOOT_TEMPLATE
+    @type {HTML}
+    @default ''
+    @since 3.11.0
+    **/
+    TFOOT_TEMPLATE: '',
+
+    // -- Public methods ------------------------------------------------------
+
+    /**
+    Returns the generated CSS classname based on the input.  If the `host`
+    attribute is configured, it will attempt to relay to its `getClassName`
+    or use its static `NAME` property as a string base.
+
+    If `host` is absent or has neither method nor `NAME`, a CSS classname
+    will be generated using this class's `NAME`.
+
+    @method getClassName
+    @param {String} token* Any number of token strings to assemble the
+        classname from.
+    @return {String}
+    @protected
+    @since 3.11.0
+    **/
+    getClassName: function () {
+        // TODO: add attribute with setter? to host to use property this.host
+        // for performance
+        var host = this.host,
+            NAME = (host && host.constructor.NAME) ||
+                    this.constructor.NAME;
+
+        if (host && host.getClassName) {
+            return host.getClassName.apply(host, arguments);
+        } else {
+            return Y.ClassNameManager.getClassName
+                .apply(Y.ClassNameManager,
+                       [NAME].concat(Y.Array(arguments, 0, true)));
+        }
+    },
+
+    /**
+    Creates the `` Node and inserts it after the `` Node.
+
+    @method render
+    @return {FooterView} The instance
+    @chainable
+    @since 3.11.0
+    **/
+    render: function () {
+        var tfoot    = this.tfootNode ||
+                        (this.tfootNode = this._createTFootNode());
+
+        if (this.host && this.host._theadNode) {
+            this.host._theadNode.insert(tfoot, 'after');
+        }
+
+        return this;
+    },
+
+    /**
+    Creates the `` node that will store the footer rows and cells.
+
+    @method _createTFootNode
+    @return {Node}
+    @protected
+    @since 3.11.0
+    **/
+    _createTFootNode: function () {
+        return Y.Node.create(Y.Lang.sub(this.TFOOT_TEMPLATE, {
+            className: this.getClassName('foot')
+        }));
+    },
+
+    /**
+    Initializes the instance. Reads the following configuration properties:
+
+      * `host`    - The object to serve as source of truth for column info
+
+    @method initializer
+    @param {Object} config Configuration data
+    @protected
+    @since 3.11.0
+    **/
+    initializer: function (config) {
+        this.host  = (config && config.host);
+    }
+
+
+
+});
+
+
+}, '3.12.0', {"requires": ["datatable-core", "view"]});
diff --git a/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js b/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js
new file mode 100644
index 00000000000..aa58f1235a9
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("datatable-foot",function(e,t){e.namespace("DataTable").FooterView=e.Base.create("tableFooter",e.View,[],{TFOOT_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(e.Array(arguments,0,!0)))},render:function(){var e=this.tfootNode||(this.tfootNode=this._createTFootNode());return this.host&&this.host._theadNode&&this.host._theadNode.insert(e,"after"),this},_createTFootNode:function(){return e.Node.create(e.Lang.sub(this.TFOOT_TEMPLATE,{className:this.getClassName("foot")}))},initializer:function(e){this.host=e&&e.host}})},"3.12.0",{requires:["datatable-core","view"]});
diff --git a/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js b/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js
new file mode 100644
index 00000000000..77a6a855451
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js
@@ -0,0 +1,119 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add('datatable-foot', function (Y, NAME) {
+
+/**
+View class responsible for rendering the `` section of a table. Can be
+used as the default `footerView` for `Y.DataTable.Base` and `Y.DataTable`
+classes.
+
+@module datatable
+@submodule datatable-foot
+@since 3.11.0
+**/
+
+
+Y.namespace('DataTable').FooterView = Y.Base.create('tableFooter', Y.View, [], {
+    // -- Instance properties -------------------------------------------------
+
+    /**
+    HTML templates used to create the `` containing the table footers.
+
+    @property TFOOT_TEMPLATE
+    @type {HTML}
+    @default ''
+    @since 3.11.0
+    **/
+    TFOOT_TEMPLATE: '',
+
+    // -- Public methods ------------------------------------------------------
+
+    /**
+    Returns the generated CSS classname based on the input.  If the `host`
+    attribute is configured, it will attempt to relay to its `getClassName`
+    or use its static `NAME` property as a string base.
+
+    If `host` is absent or has neither method nor `NAME`, a CSS classname
+    will be generated using this class's `NAME`.
+
+    @method getClassName
+    @param {String} token* Any number of token strings to assemble the
+        classname from.
+    @return {String}
+    @protected
+    @since 3.11.0
+    **/
+    getClassName: function () {
+        // TODO: add attribute with setter? to host to use property this.host
+        // for performance
+        var host = this.host,
+            NAME = (host && host.constructor.NAME) ||
+                    this.constructor.NAME;
+
+        if (host && host.getClassName) {
+            return host.getClassName.apply(host, arguments);
+        } else {
+            return Y.ClassNameManager.getClassName
+                .apply(Y.ClassNameManager,
+                       [NAME].concat(Y.Array(arguments, 0, true)));
+        }
+    },
+
+    /**
+    Creates the `` Node and inserts it after the `` Node.
+
+    @method render
+    @return {FooterView} The instance
+    @chainable
+    @since 3.11.0
+    **/
+    render: function () {
+        var tfoot    = this.tfootNode ||
+                        (this.tfootNode = this._createTFootNode());
+
+        if (this.host && this.host._theadNode) {
+            this.host._theadNode.insert(tfoot, 'after');
+        }
+
+        return this;
+    },
+
+    /**
+    Creates the `` node that will store the footer rows and cells.
+
+    @method _createTFootNode
+    @return {Node}
+    @protected
+    @since 3.11.0
+    **/
+    _createTFootNode: function () {
+        return Y.Node.create(Y.Lang.sub(this.TFOOT_TEMPLATE, {
+            className: this.getClassName('foot')
+        }));
+    },
+
+    /**
+    Initializes the instance. Reads the following configuration properties:
+
+      * `host`    - The object to serve as source of truth for column info
+
+    @method initializer
+    @param {Object} config Configuration data
+    @protected
+    @since 3.11.0
+    **/
+    initializer: function (config) {
+        this.host  = (config && config.host);
+    }
+
+
+
+});
+
+
+}, '3.12.0', {"requires": ["datatable-core", "view"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
similarity index 86%
rename from lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js
rename to lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
index caba56aaf85..e7fbbdda151 100644
--- a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js
+++ b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
@@ -1,11 +1,16 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
 YUI.add('datatable-formatters', function (Y, NAME) {
 
 /**
 Adds predefined cell formatters to `Y.DataTable.BodyView`.
 
-@module datatable
-@submodule datatable-formatters
+@module datatable-formatters
 @since 3.8.0
 **/
 var Lang = Y.Lang,
@@ -331,11 +336,56 @@ var Lang = Y.Lang,
                 }
                 return fn(value, format);
             };
-        }
+        },
+        /**
+        Returns a formatter function that returns texts from a lookup table
+        based on the stored value.
 
+        It looks for the translation to apply in the `lookupTable` property of the
+        column in either of these two formats:
+
+            {key: "status", formatter: "lookup", lookupTable: {
+                0: "unknown",
+                1: "requested",
+                2: "approved",
+                3: "delivered"
+            }},
+            {key: "otherStatus", formatter: "lookup", lookupTable: [
+                {value:0, text: "unknown"},
+                {value:1, text: "requested"},
+                {value:2, text: "approved"},
+                {value:3, text: "delivered"}
+            ]}
+
+        Applies the CSS className `yui3-datatable-lookup` to the cell.
+
+        @method lookup
+        @param col {Object} The column definition
+        @return {Function} A formatter function that returns the `text`
+                associated with `value`.
+        @static
+         */
+        lookup: function (col) {
+            var className = cName('lookup'),
+                lookup = col.lookupTable || {},
+                entries, i, len;
+
+            if (Lang.isArray(lookup)) {
+                entries = lookup;
+                lookup = {};
+
+                for (i = 0, len = entries.length; i < len; ++i) {
+                    lookup[entries[i].value] = entries[i].text;
+                }
+            }
+            return function (o) {
+                o.className = className;
+                return lookup[o.value];
+            };
+        }
     };
 
 Y.mix(Y.DataTable.BodyView.Formatters, Formatters);
 
 
-}, '3.9.1', {"requires": ["datatable-body", "datatype-number-format", "datatype-date-format", "escape"]});
+}, '3.12.0', {"requires": ["datatable-body", "datatype-number-format", "datatype-date-format", "escape"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
similarity index 77%
rename from lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js
rename to lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
index 681639c4c41..a17bc312a7d 100644
--- a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js
+++ b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
@@ -1,2 +1,8 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
-YUI.add("datatable-formatters",function(e,t){var n=e.Lang,r=n.isValue,i=e.Escape.html,s=e.ClassNameManager.getClassName,o=function(e){return s("datatable",e)},u=function(e,t){return r(e)?i(e.toString()):t||""},a={button:function(e){var t=o("button"),n="";return e.allowHTML=!0,function(e){return e.className=t,n}},"boolean":function(e){var t=e.booleanLabels||this.get("booleanLabels")||{"true":"true","false":"false"};return function(e){var n=e.value;return!n&&n!==!1?n:(n=n?"true":"false",e.className=o(n),t[n])}},currency:function(t){var n=o("currency"),r=t.currencyFormat||this.get("currencyFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},_date:function(t){var n=o("date"),r=e.Date.format;return t={format:t},function(e){return e.className=n,r(e.value,t)}},date:function(e){return a._date(e.dateFormat||this.get("dateFormat"))},localDate:function(){return a._date("%x")},localTime:function(){return a._date("%X")},localDateTime:function(){return a._date("%c")},email:function(e){var t=o("email"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},link:function(e){var t=o("link"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},number:function(t){var n=o("number"),r=t.numberFormat||this.get("numberFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}}};e.mix(e.DataTable.BodyView.Formatters,a)},"3.9.1",{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]});
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("datatable-formatters",function(e,t){var n=e.Lang,r=n.isValue,i=e.Escape.html,s=e.ClassNameManager.getClassName,o=function(e){return s("datatable",e)},u=function(e,t){return r(e)?i(e.toString()):t||""},a={button:function(e){var t=o("button"),n="";return e.allowHTML=!0,function(e){return e.className=t,n}},"boolean":function(e){var t=e.booleanLabels||this.get("booleanLabels")||{"true":"true","false":"false"};return function(e){var n=e.value;return!n&&n!==!1?n:(n=n?"true":"false",e.className=o(n),t[n])}},currency:function(t){var n=o("currency"),r=t.currencyFormat||this.get("currencyFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},_date:function(t){var n=o("date"),r=e.Date.format;return t={format:t},function(e){return e.className=n,r(e.value,t)}},date:function(e){return a._date(e.dateFormat||this.get("dateFormat"))},localDate:function(){return a._date("%x")},localTime:function(){return a._date("%X")},localDateTime:function(){return a._date("%c")},email:function(e){var t=o("email"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},link:function(e){var t=o("link"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},number:function(t){var n=o("number"),r=t.numberFormat||this.get("numberFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},lookup:function(e){var t=o("lookup"),r=e.lookupTable||{},i,s,u;if(n.isArray(r)){i=r,r={};for(s=0,u=i.length;s{content}',ROW_TEMPLATE:"{content}",THEAD_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(s(arguments,0,!0)))},render:function(){var t=this.get("container"),n=this.theadNode||(this.theadNode=this._createTHeadNode()),i=this.columns,s={_colspan:1,_rowspan:1,abbr:"",title:""},o,u,a,f,l,c,h,p;if(n&&i){c="";if(i.length)for(o=0,u=i.length;o=h){if(r.length>1){o=r[r.length-2],l=o[0][o[1]],l._colspan=0;for(c=0,h=u.length;c=0;--p)l=r[p][0][r[p][1]],a._headers.unshift(l.id);if(f&&f.length){r.push([f,-1]);break}a._rowspan=s-r.length+1}c>=h&&r.pop()}}for(c=0,h=n.length;c{content}',ROW_TEMPLATE:"{content}",THEAD_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(s(arguments,0,!0)))},render:function(){var t=this.get("container"),n=this.theadNode||(this.theadNode=this._createTHeadNode()),i=this.columns,s={_colspan:1,_rowspan:1,abbr:"",title:""},o,u,a,f,l,c,h,p;if(n&&i){c="";if(i.length)for(o=0,u=i.length;o=h){if(r.length>1){o=r[r.length-2],l=o[0][o[1]],l._colspan=0;for(c=0,h=u.length;c=0;--p)l=r[p][0][r[p][1]],a._headers.unshift(l.id);if(f&&f.length){r.push([f,-1]);break}a._rowspan=s-r.length+1}c>=h&&r.pop()}}for(c=0,h=n.length;c',hideMessage:function(){return this.get("boundingBox").removeClass(this.getClassName("message","visible")),this},showMessage:function(e){var t=this.getString(e)||e;return this._messageNode||this._initMessageNode(),this.get("showMessages")&&(t?(this._messageNode.one("."+this.getClassName("message","content")).setHTML(t),this.get("boundingBox").addClass(this.getClassName("message","visible"))):this.hideMessage()),this},_afterMessageColumnsChange:function(){var e;this._messageNode&&(e=this._messageNode.one("."+this.getClassName("message","content")),e&&e.set("colSpan",this._displayColumns.length))},_afterMessageDataChange:function(){this._uiSetMessage()},_afterShowMessagesChange:function(e){e.newVal?this._uiSetMessage(e):this._messageNode&&(this.get("boundingBox").removeClass(this.getClassName("message","visible")),this._messageNode.remove().destroy(!0),this._messageNode=null)},_bindMessageUI:function(){this.after(["dataChange","*:add","*:remove","*:reset"],e.bind("_afterMessageDataChange",this)),this.after("columnsChange",e.bind("_afterMessageColumnsChange",this)),this.after("showMessagesChange",e.bind("_afterShowMessagesChange",this))},initializer:function(){this._initMessageStrings(),this.get("showMessages")&&this.after("renderBody",e.bind("_initMessageNode",this)),this.after(e.bind("_bindMessageUI",this),this,"bindUI"),this.after(e.bind("_syncMessageUI",this),this,"syncUI")},_initMessageNode:function(){this._messageNode||(this._messageNode=e.Node.create(e.Lang.sub(this.MESSAGE_TEMPLATE,{className:this.getClassName("message"),contentClass:this.getClassName("message","content"),colspan:this._displayColumns.length||1})),this._tableNode.insertBefore(this._messageNode,this._tbodyNode))},_initMessageStrings:function(){this.set("strings",e.mix(this.get("strings")||{},e.Intl.get("datatable-message")))},_syncMessageUI:function(){this._uiSetMessage()},_uiSetMessage:function(e){this.data.size()?this.hideMessage():this.showMessage(e&&e.message||"emptyMessage")}}),e.Lang.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[n])},"3.9.1",{requires:["datatable-base"],lang:["en","fr","es"],skinnable:!0});
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("datatable-message",function(e,t){var n;e.namespace("DataTable").Message=n=function(){},n.ATTRS={showMessages:{value:!0,validator:e.Lang.isBoolean}},e.mix(n.prototype,{MESSAGE_TEMPLATE:'',hideMessage:function(){return this.get("boundingBox").removeClass(this.getClassName("message","visible")),this},showMessage:function(e){var t=this.getString(e)||e;return this._messageNode||this._initMessageNode(),this.get("showMessages")&&(t?(this._messageNode.one("."+this.getClassName("message","content")).setHTML(t),this.get("boundingBox").addClass(this.getClassName("message","visible"))):this.hideMessage()),this},_afterMessageColumnsChange:function(){var e;this._messageNode&&(e=this._messageNode.one("."+this.getClassName("message","content")),e&&e.set("colSpan",this._displayColumns.length))},_afterMessageDataChange:function(){this._uiSetMessage()},_afterShowMessagesChange:function(e){e.newVal?this._uiSetMessage(e):this._messageNode&&(this.get("boundingBox").removeClass(this.getClassName("message","visible")),this._messageNode.remove().destroy(!0),this._messageNode=null)},_bindMessageUI:function(){this.after(["dataChange","*:add","*:remove","*:reset"],e.bind("_afterMessageDataChange",this)),this.after("columnsChange",e.bind("_afterMessageColumnsChange",this)),this.after("showMessagesChange",e.bind("_afterShowMessagesChange",this))},initializer:function(){this._initMessageStrings(),this.get("showMessages")&&this.after("table:renderBody",e.bind("_initMessageNode",this)),this.after(e.bind("_bindMessageUI",this),this,"bindUI"),this.after(e.bind("_syncMessageUI",this),this,"syncUI")},_initMessageNode:function(){this._messageNode||(this._messageNode=e.Node.create(e.Lang.sub(this.MESSAGE_TEMPLATE,{className:this.getClassName("message"),contentClass:this.getClassName("message","content"),colspan:this._displayColumns.length||1})),this._tableNode.insertBefore(this._messageNode,this._tbodyNode))},_initMessageStrings:function(){this.set("strings",e.mix(this.get("strings")||{},e.Intl.get("datatable-message")))},_syncMessageUI:function(){this._uiSetMessage()},_uiSetMessage:function(e){this.data.size()?this.hideMessage():this.showMessage(e&&e.message||"emptyMessage")}}),e.Lang.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[n])},"3.12.0",{requires:["datatable-base"],lang:["en","fr","es","hu","it"],skinnable:!0});
diff --git a/lib/yuilib/3.9.1/build/datatable-message/datatable-message.js b/lib/yuilib/3.12.0/datatable-message/datatable-message.js
similarity index 96%
rename from lib/yuilib/3.9.1/build/datatable-message/datatable-message.js
rename to lib/yuilib/3.12.0/datatable-message/datatable-message.js
index d9fb34bee02..da342975fa3 100644
--- a/lib/yuilib/3.9.1/build/datatable-message/datatable-message.js
+++ b/lib/yuilib/3.12.0/datatable-message/datatable-message.js
@@ -1,4 +1,10 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
 YUI.add('datatable-message', function (Y, NAME) {
 
 /**
@@ -196,7 +202,7 @@ Y.mix(Message.prototype, {
         this._initMessageStrings();
 
         if (this.get('showMessages')) {
-            this.after('renderBody', Y.bind('_initMessageNode', this));
+            this.after('table:renderBody', Y.bind('_initMessageNode', this));
         }
 
         this.after(Y.bind('_bindMessageUI', this), this, 'bindUI');
@@ -288,4 +294,4 @@ if (Y.Lang.isFunction(Y.DataTable)) {
 }
 
 
-}, '3.9.1', {"requires": ["datatable-base"], "lang": ["en", "fr", "es"], "skinnable": true});
+}, '3.12.0', {"requires": ["datatable-base"], "lang": ["en", "fr", "es", "hu", "it"], "skinnable": true});
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js
new file mode 100644
index 00000000000..e5f0e2dd324
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message",function(e){e.Intl.add("datatable-message","",{emptyMessage:"No data to display",loadingMessage:"Loading..."})},"3.12.0");
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js
new file mode 100644
index 00000000000..0ab1a004ba0
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message_en",function(e){e.Intl.add("datatable-message","en",{emptyMessage:"No data to display",loadingMessage:"Loading..."})},"3.12.0");
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js
new file mode 100644
index 00000000000..01f986db29a
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message_es",function(e){e.Intl.add("datatable-message","es",{emptyMessage:"No hay datos que mostrar",loadingMessage:"Cargando..."})},"3.12.0");
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js
new file mode 100644
index 00000000000..321c8d216ae
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message_fr",function(e){e.Intl.add("datatable-message","fr",{emptyMessage:"Aucune donn\u00e9e \u00e0 afficher",loadingMessage:"Chargement..."})},"3.12.0");
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js
new file mode 100644
index 00000000000..fd84ae35f1c
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message_hu",function(e){e.Intl.add("datatable-message","hu",{emptyMessage:"Nincs megjelen\u00edthet\u0151 adat",loadingMessage:"Bet\u00f6lt\u00e9s..."})},"3.12.0");
diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js
new file mode 100644
index 00000000000..89f42fca68a
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js
@@ -0,0 +1,8 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("lang/datatable-message_it",function(e){e.Intl.add("datatable-message","it",{emptyMessage:"Non ci sono dati da mostrare",loadingMessage:"Caricando..."})},"3.12.0");
diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
similarity index 99%
rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js
rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
index a9b482219c9..f6690c7639c 100644
--- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js
+++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
@@ -1,4 +1,10 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
 YUI.add('datatable-mutable', function (Y, NAME) {
 
 /**
@@ -633,4 +639,4 @@ Fired by the `moveColumn` method.
 
 
 
-}, '3.9.1', {"requires": ["datatable-base"]});
+}, '3.12.0', {"requires": ["datatable-base"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
similarity index 93%
rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js
rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
index 07e7eefe2ef..f7cffbace42 100644
--- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js
+++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
@@ -1,2 +1,8 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
-YUI.add("datatable-mutable",function(e,t){var n=e.Array,r=e.Lang,i=r.isString,s=r.isArray,o=r.isObject,u=r.isNumber,a=e.Array.indexOf,f;e.namespace("DataTable").Mutable=f=function(){},f.ATTRS={autoSync:{value:!1,validator:r.isBoolean}},e.mix(f.prototype,{addColumn:function(e,t){i(e)&&(e={key:e});if(e){if(arguments.length<2||!u(t)&&!s(t))t=this.get("columns").length;this.fire("addColumn",{column:e,index:t})}return this},modifyColumn:function(e,t){return i(t)&&(t={key:t}),o(t)&&this.fire("modifyColumn",{column:e,newColumnDef:t}),this},moveColumn:function(e,t){return e!==undefined&&(u(t)||s(t))&&this.fire("moveColumn",{column:e,index:t}),this},removeColumn:function(e){return e!==undefined&&this.fire("removeColumn",{column:e}),this},addRow:function(e,t){var r=t&&"sync"in t?t.sync:this.get("autoSync"),i,s,o,u,a;if(e&&this.data){i=this.data.add.apply(this.data,arguments);if(r){i=n(i),a=n(arguments,1,!0);for(o=0,u=i.length;o-1){u=t;for(f=0,l=i.length-1;u&&fu.lenth&&o-1&&(i.splice(s,1),this.set("columns",n,{originEvent:t})))},initializer:function(){this.publish({addColumn:{defaultFn:e.bind("_defAddColumnFn",this)},removeColumn:{defaultFn:e.bind("_defRemoveColumnFn",this)},moveColumn:{defaultFn:e.bind("_defMoveColumnFn",this)},modifyColumn:{defaultFn:e.bind("_defModifyColumnFn",this)}})}}),f.prototype.addRows=f.prototype.addRow,r.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[f])},"3.9.1",{requires:["datatable-base"]});
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add("datatable-mutable",function(e,t){var n=e.Array,r=e.Lang,i=r.isString,s=r.isArray,o=r.isObject,u=r.isNumber,a=e.Array.indexOf,f;e.namespace("DataTable").Mutable=f=function(){},f.ATTRS={autoSync:{value:!1,validator:r.isBoolean}},e.mix(f.prototype,{addColumn:function(e,t){i(e)&&(e={key:e});if(e){if(arguments.length<2||!u(t)&&!s(t))t=this.get("columns").length;this.fire("addColumn",{column:e,index:t})}return this},modifyColumn:function(e,t){return i(t)&&(t={key:t}),o(t)&&this.fire("modifyColumn",{column:e,newColumnDef:t}),this},moveColumn:function(e,t){return e!==undefined&&(u(t)||s(t))&&this.fire("moveColumn",{column:e,index:t}),this},removeColumn:function(e){return e!==undefined&&this.fire("removeColumn",{column:e}),this},addRow:function(e,t){var r=t&&"sync"in t?t.sync:this.get("autoSync"),i,s,o,u,a;if(e&&this.data){i=this.data.add.apply(this.data,arguments);if(r){i=n(i),a=n(arguments,1,!0);for(o=0,u=i.length;o-1){u=t;for(f=0,l=i.length-1;u&&fu.lenth&&o-1&&(i.splice(s,1),this.set("columns",n,{originEvent:t})))},initializer:function(){this.publish({addColumn:{defaultFn:e.bind("_defAddColumnFn",this)},removeColumn:{defaultFn:e.bind("_defRemoveColumnFn",this)},moveColumn:{defaultFn:e.bind("_defMoveColumnFn",this)},modifyColumn:{defaultFn:e.bind("_defModifyColumnFn",this)}})}}),f.prototype.addRows=f.prototype.addRow,r.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[f])},"3.12.0",{requires:["datatable-base"]});
diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
similarity index 99%
rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js
rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
index 102d2bcacbc..74bd231c818 100644
--- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js
+++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
@@ -1,4 +1,10 @@
-/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
 YUI.add('datatable-mutable', function (Y, NAME) {
 
 /**
@@ -628,4 +634,4 @@ Fired by the `moveColumn` method.
 
 
 
-}, '3.9.1', {"requires": ["datatable-base"]});
+}, '3.12.0', {"requires": ["datatable-base"]});
diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js
new file mode 100644
index 00000000000..6f4f8ef4f9c
--- /dev/null
+++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js
@@ -0,0 +1,93 @@
+/*
+YUI 3.12.0 (build 8655935)
+Copyright 2013 Yahoo! Inc. All rights reserved.
+Licensed under the BSD License.
+http://yuilibrary.com/license/
+*/
+
+YUI.add('datatable-paginator-templates', function (Y, NAME) {
+
+var engine = new Y.Template(),
+
+/*
+{
+    wrapperClass,
+    numOfCols
+}
+*/
+rowWrapper = '',
+
+/*
+{
+    classNames: {}
+}
+*/
+content = '<%= buttons %><%= this.classNames.gotoPage %>' +
+          '<%= this.classNames.perPage %>',
+
+/*
+{
+    classNames: {},
+    type,
+    label
+}
+*/
+button = '',
+
+/*
+{
+    classNames,
+    buttons: [
+        { type, label }
+    ]
+}
+*/
+buttons = '
' + + '<%== this.buttons %>' + + '
', + +/* +{ + classNames, + strings, + page +} +*/ +gotoPage = '
' + + '' + + '
', + +/* +{ + classNames, + strings, + options +} +*/ +perPage = '
' + + '
'; + + + + +Y.namespace('DataTable.Templates').Paginator = { + rowWrapper: engine.compile(rowWrapper), + button: engine.compile(button), + content: engine.compile(content), + buttons: engine.compile(buttons), + gotoPage: engine.compile(gotoPage), + perPage: engine.compile(perPage) +}; + +}, '3.12.0', {"requires": ["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js new file mode 100644 index 00000000000..39647f8e502 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-paginator-templates",function(e,t){var n=new e.Template,r='',i="<%= buttons %><%= this.classNames.gotoPage %><%= this.classNames.perPage %>",s='',o='
<%== this.buttons %>
',u='
',a='
';e.namespace("DataTable.Templates").Paginator={rowWrapper:n.compile(r),button:n.compile(s),content:n.compile(i),buttons:n.compile(o),gotoPage:n.compile(u),perPage:n.compile(a)}},"3.12.0",{requires:["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js new file mode 100644 index 00000000000..6f4f8ef4f9c --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js @@ -0,0 +1,93 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('datatable-paginator-templates', function (Y, NAME) { + +var engine = new Y.Template(), + +/* +{ + wrapperClass, + numOfCols +} +*/ +rowWrapper = '', + +/* +{ + classNames: {} +} +*/ +content = '<%= buttons %><%= this.classNames.gotoPage %>' + + '<%= this.classNames.perPage %>', + +/* +{ + classNames: {}, + type, + label +} +*/ +button = '', + +/* +{ + classNames, + buttons: [ + { type, label } + ] +} +*/ +buttons = '
' + + '<%== this.buttons %>' + + '
', + +/* +{ + classNames, + strings, + page +} +*/ +gotoPage = '
' + + '' + + '
', + +/* +{ + classNames, + strings, + options +} +*/ +perPage = '
' + + '
'; + + + + +Y.namespace('DataTable.Templates').Paginator = { + rowWrapper: engine.compile(rowWrapper), + button: engine.compile(button), + content: engine.compile(content), + buttons: engine.compile(buttons), + gotoPage: engine.compile(gotoPage), + perPage: engine.compile(perPage) +}; + +}, '3.12.0', {"requires": ["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css b/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css new file mode 100644 index 00000000000..855f10b9e43 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css @@ -0,0 +1,65 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper { + border: none; + padding: 0; +} +.yui3-datatable-paginator { + padding: 3px; + white-space: nowrap; +} +.yui3-datatable-paginator .yui3-paginator-content { + position: relative; +} +.yui3-datatable-paginator .yui3-paginator-page-select { + position: absolute; + right: 0; + top: 0; +} +.yui3-datatable-paginator .yui3-datatable-paginator-group { + display: inline-block; + zoom: 1; *display: inline; +} +.yui3-datatable-paginator .yui3-datatable-paginator-control { + display: inline-block; + zoom: 1; *display: inline; + margin: 0 3px; + padding: 0 0.2em; + text-align: center; + text-decoration: none; + line-height: 1.5; + border: 1px solid transparent; + border-radius: 3px; + background: transparent; +} +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + cursor: default; +} +.yui3-datatable-paginator .yui3-datatable-paginator-group input { + width: 3em; +} +.yui3-datatable-paginator form { + text-align: center; + margin: 0 2em; +} +.yui3-datatable-paginator .yui3-datatable-paginator-per-page { + text-align: right; +} +/* FOR USE WHEN DISPLAYING ICONS +.yui3-datatable-paginator .control-first, +.yui3-datatable-paginator .control-last, +.yui3-datatable-paginator .control-prev, +.yui3-datatable-paginator .control-next { + text-indent: -999px; + direction: ltr; + overflow: hidden; + position: relative; + width: 1em; +} +*/ \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css new file mode 100644 index 00000000000..beb4296286f --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css @@ -0,0 +1,42 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css new file mode 100644 index 00000000000..389f3a7274b --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21))}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-night-datatable-paginator{display:none} diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css new file mode 100644 index 00000000000..4826275c653 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css @@ -0,0 +1,43 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + border-color: #cbcbcb; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css new file mode 100644 index 00000000000..617c6f74782 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));border-color:#cbcbcb}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-sam-datatable-paginator{display:none} diff --git a/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js new file mode 100644 index 00000000000..1d4369e4388 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js @@ -0,0 +1,932 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('datatable-paginator', function (Y, NAME) { + +/** + Adds support for paging through data in the DataTable. + + @module datatable + @submodule datatable-paginator + @since 3.11.0 + */ + +var Model, + View, + PaginatorTemplates = Y.DataTable.Templates.Paginator, + sub = Y.Lang.sub, + getClassName = Y.ClassNameManager.getClassName, + CLASS_DISABLED = getClassName(NAME, 'control-disabled'), + EVENT_UI = 'paginator:ui'; + + +/** + @class DataTable.Paginator.Model + @extends Model + @since 3.11.0 + */ +Model = Y.Base.create('dt-pg-model', Y.Model, [Y.Paginator.Core]), + +/** + @class DataTable.Paginator.View + @extends View + @since 3.11.0 + */ +View = Y.Base.create('dt-pg-view', Y.View, [], { + /** + Array of event handles to keep track of what should be destroyed later + @protected + @property _eventHandles + @type {Array} + @since 3.11.0 + */ + _eventHandles: [], + + /** + Template for this view's container. + @property containerTemplate + @type {String} + @default '
' + @since 3.11.0 + */ + containerTemplate: '
', + + /** + Template for content. Helps maintain order of controls. + @property contentTemplate + @type {String} + @default '{buttons}{goto}{perPage}' + @since 3.11.0 + */ + contentTemplate: '{buttons}{goto}{perPage}', + + /** + Disables ad-hoc ATTRS for our view. + @protected + @property _allowAdHocAttrs + @type {Boolean} + @default false + @since 3.11.0 + */ + _allowAdHocAttrs: false, + + /** + Sets classnames on the templates and bind events + @method initializer + @since 3.11.0 + */ + initializer: function () { + this.containerTemplate = sub(this.containerTemplate, { + paginator: getClassName(NAME) + }); + + this._initStrings(); + this._initClassNames(); + + this.attachEvents(); + }, + + /** + @method render + @chainable + @since 3.11.0 + */ + render: function () { + var model = this.get('model'), + content = sub(this.contentTemplate, { + 'buttons': this._buildButtonsGroup(), + 'goto': this._buildGotoGroup(), + 'perPage': this._buildPerPageGroup() + }); + + this.get('container').append(content); + this.attachEvents(); + + this._rendered = true; + + this._updateControlsUI(model.get('page')); + this._updateItemsPerPageUI(model.get('itemsPerPage')); + + return this; + }, + + /** + @method attachEvents + @since 3.11.0 + */ + attachEvents: function () { + View.superclass.attachEvents.apply(this, arguments); + + var container = this.get('container'); + + if (!this.classNames) { + this._initClassNames(); + } + + this._attachedViewEvents.push( + container.delegate('click', this._controlClick, '.' + this.classNames.control, this), + this.get('model').after('change', this._modelChange, this) + ); + + container.all('form').each(Y.bind(function (frm) { + this._attachedViewEvents.push( + frm.after('submit', this._controlSubmit, this) + ); + }, this)); + + container.all('select').each(Y.bind(function (sel) { + this._attachedViewEvents.push( + sel.after('change', this._controlChange, this) + ); + }, this)); + + }, + + /** + Returns a string built from the button and buttons templates. + @protected + @method _buildButtonsGroup + @return {String} + @since 3.11.0 + */ + _buildButtonsGroup: function () { + var strings = this.get('strings'), + classNames = this.classNames, + buttons; + + buttons = PaginatorTemplates.button({ + type: 'first', label: strings.first, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'prev', label: strings.prev, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'next', label: strings.next, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'last', label: strings.last, classNames: classNames + }); + + return PaginatorTemplates.buttons({ + classNames: classNames, + buttons: buttons + }); + + }, + + /** + Returns a string built from the gotoPage template. + @protected + @method _buildGotoGroup + @return {String} + @since 3.11.0 + */ + _buildGotoGroup: function () { + + return PaginatorTemplates.gotoPage({ + classNames: this.classNames, + strings: this.get('strings'), + page: this.get('model').get('page') + }); + }, + + /** + Returns a string built from the perPage template + @protected + @method _buildPerPageGroup + @return {String} + @since 3.11.0 + */ + _buildPerPageGroup: function () { + var options = this.get('pageSizes'), + rowsPerPage = this.get('model').get('rowsPerPage'), + option, + len, + i; + + for (i = 0, len = options.length; i < len; i++ ) { + option = options[i]; + + if (typeof option !== 'object') { + option = { + value: option, + label: option + }; + } + option.selected = (option.value === rowsPerPage) ? ' selected' : ''; + } + + return PaginatorTemplates.perPage({ + classNames: this.classNames, + strings: this.get('strings'), + options: this.get('pageSizes') + }); + + }, + + /** + Update the UI after the model has changed. + @protected + @method _modelChange + @param {EventFacade} e + @since 3.11.0 + */ + _modelChange: function (e) { + var changed = e.changed, + page = (changed && changed.page), + itemsPerPage = (changed && changed.itemsPerPage); + + if (page) { + this._updateControlsUI(page.newVal); + } + if (itemsPerPage) { + this._updateItemsPerPageUI(itemsPerPage.newVal); + if (!page) { + this._updateControlsUI(e.target.get('page')); + } + } + + }, + + /** + Updates the button controls and the gotoPage form + @protected + @method _updateControlsUI + @param {Number} val Page number to set the UI input to + @since 3.11.0 + */ + _updateControlsUI: function (val) { + if (!this._rendered) { + return; + } + + var model = this.get('model'), + controlClass = '.' + this.classNames.control, + container = this.get('container'), + hasPrev = model.hasPrevPage(), + hasNext = model.hasNextPage(); + + container.one(controlClass + '-first') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-prev') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-next') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one(controlClass + '-last') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one('form input').set('value', val); + }, + + /** + Updates the drop down select for items per page + @protected + @method _updateItemsPerPageUI + @param {Number} val Number of items to display per page + @since 3.11.0 + */ + _updateItemsPerPageUI: function (val) { + if (!this._rendered) { + return; + } + + this.get('container').one('select').set('value', val); + }, + + /** + Fire EVENT_UI when an enabled control button is clicked + @protected + @method _controlClick + @param {EventFacade} e + @since 3.11.0 + */ + _controlClick: function (e) { // buttons + e.preventDefault(); + var control = e.currentTarget; + // register click events from the four control buttons + if (control.hasClass(CLASS_DISABLED)) { + return; + } + this.fire(EVENT_UI, { + type: control.getData('type'), + val: control.getData('page') || null + }); + }, + + /** + Fire EVENT_UI with `type:perPage` after the select drop down changes + @protected + @method _controlChange + @param {EventFacade} e + @since 3.11.0 + */ + _controlChange: function (e) { + + // register change events from the perPage select + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + val = e.target.get('value'); + this.fire(EVENT_UI, { type: 'perPage', val: parseInt(val, 10) }); + }, + + /** + Fire EVENT_UI with `type:page` after form is submitted + @protected + @method _controlSubmit + @param {EventFacade} e + @since 3.11.0 + */ + _controlSubmit: function (e) { + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + // the only form we have is the go to page form + e.preventDefault(); + + input = e.target.one('input'); + this.fire(EVENT_UI, { type: 'page', val: input.get('value') }); + }, + + /** + Initializes classnames to be used with the templates + @protected + @method _initClassNames + @since 3.11.0 + */ + _initClassNames: function () { + this.classNames = { + control: getClassName(NAME, 'control'), + controls: getClassName(NAME, 'controls'), + group: getClassName(NAME, 'group'), + perPage: getClassName(NAME, 'per-page') + }; + }, + + /** + Initializes strings used for internationalization + @protected + @method _initStrings + @since 3.11.0 + */ + _initStrings: function () { + // Not a valueFn because other class extensions may want to add to it + this.set('strings', Y.mix((this.get('strings') || {}), + Y.Intl.get('datatable-paginator'))); + } +}, { + ATTRS: { + /** + Array of values used to populate the drop down for items per page + @attribute pageSizes + @type {Array} + @default [ 10, 50, 100, { label: 'Show All', value: -1 } ] + @since 3.11.0 + */ + pageSizes: { + value: [ 10, 50, 100, { label: 'Show All', value: -1 } ] + }, + + /** + Model used for this view + @attribute model + @type {Y.Model} + @default null + @since 3.11.0 + */ + model: {} + } +}); + +/** + @class DataTable.Paginator + @since 3.11.0 + */ +function Controller () {} + +Controller.ATTRS = { + /** + A model instance or a configuration object for the Model. + @attribute paginatorModel + @type {Y.Model | Object} + @default null + @since 3.11.0 + */ + paginatorModel: { + setter: '_setPaginatorModel', + value: null, + writeOnce: 'initOnly' + }, + + /** + A pointer to a Model object to be instantiated, or a String off of the + `Y` namespace. + + This is only used if the `pagiantorModel` is a configuration object or + is null. + @attribute paginatorModelType + @type {Y.Model | String} + @default 'DataTable.Paginator.Model' + @since 3.11.0 + */ + paginatorModelType: { + getter: '_getConstructor', + value: 'DataTable.Paginator.Model', + writeOnce: 'initOnly' + }, + + /** + A pointer to a `Y.View` object to be instantiated. A new view will be + created for each location provided. Each view created will be given the + same model instance. + @attribute paginatorView + @type {Y.View | String} + @default 'DataTable.Paginator.View' + @since 3.11.0 + */ + paginatorView: { + getter: '_getConstructor', + value: 'DataTable.Paginator.View', + writeOnce: 'initOnly' + }, + + // PAGINATOR CONFIGS + /** + Array of values used to populate the values in the Paginator UI allowing + the end user to select the number of items to display per page. + @attribute pageSizes + @type {Array} + @default [10, 50, 100, { label: 'Show All', value: -1 }] + @since 3.11.0 + */ + pageSizes: { + setter: '_setPageSizesFn', + value: [10, 50, 100, { label: 'Show All', value: -1 }] + }, + + /** + Number of rows to display per page. As the UI changes the number of pages + to display, this will update to reflect the value selected in the UI + @attribute rowsPerPage + @type {Number | null} + @default null + @since 3.11.0 + */ + rowsPerPage: { + value: null + }, + + /** + String of `footer` or `header`, a Y.Node, or an Array or any combination + of those values. + @attribute paginatorLocation + @type {String | Array | Y.Node} + @default footer + @since 3.11.0 + */ + paginatorLocation: { + value: 'footer' + } +}; + +Y.mix(Controller.prototype, { + /** + Sets the `paginatorModel` to the first page. + @method firstPage + @chainable + @since 3.11.0 + */ + firstPage: function () { + this.get('paginatorModel').set('page', 1); + return this; + }, + + /** + Sets the `paginatorModel` to the last page. + @method lastPage + @chainable + @since 3.11.0 + */ + lastPage: function () { + var model = this.get('paginatorModel'); + model.set('page', model.get('totalPages')); + return this; + }, + + /** + Sets the `paginatorModel` to the previous page. + @method previousPage + @chainable + @since 3.11.0 + */ + previousPage: function () { + this.get('paginatorModel').prevPage(); + return this; + }, + + /** + Sets the `paginatorModel` to the next page. + @method nextPage + @chainable + @since 3.11.0 + */ + nextPage: function () { + this.get('paginatorModel').nextPage(); + return this; + }, + + + /// Init and protected + /** + Constructor logic + @protected + @method initializer + @since 3.11.0 + */ + initializer: function () { + // allow DT to use paged data + this._augmentData(); + + if (!this._eventHandles.paginatorRender) { + this._eventHandles.paginatorRender = Y.Do.after(this._paginatorRender, this, 'render'); + } + }, + + /** + Renders the paginator into locations and attaches events. + @protected + @method _paginatorRender + @since 3.11.0 + */ + _paginatorRender: function () { + var model = this.get('paginatorModel'); + + this._paginatorRenderUI(); + model.after('change', this._afterPaginatorModelChange, this); + this.after('dataChange', this._afterDataChangeWithPaginator, this); + this.after('rowsPerPageChange', this._afterRowsPerPageChange, this); + + // ensure our model has the correct totalItems set + model.set('itemsPerPage', this.get('rowsPerPage')); + model.set('totalItems', this.get('data').size()); + }, + + /** + After the data changes, we ensure we are on the first page and the data + is augmented + @protected + @method _afterDataChangeWithPaginator + @since 3.11.0 + */ + _afterDataChangeWithPaginator: function () { + var data = this.get('data'), + model = this.get('paginatorModel'); + + if (model.get('page') !== 1) { + this.firstPage(); + } else { + this._augmentData(); + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + } + }, + + /** + After the rowsPerPage changes, update the UI to reflect the new number of + rows to be displayed. If the new value is `null`, destroy all instances + of the paginators. + @protected + @method _afterRowsPerPageChange + @param {EventFacade} e + @since 3.11.0 + */ + _afterRowsPerPageChange: function (e) { + var data = this.get('data'), + model = this.get('paginatorModel'), + view; + + if (e.newVal !== null) { + // turning on + this._paginatorRenderUI(); + + if (!(data._paged)) { + this._augmentData(); + } + + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + + } else { // e.newVal === null + // destroy! + while(this._pgViews.length) { + view = this._pgViews.shift(); + view.destroy({ remove: true }); + view._rendered = null; + } + + data._paged.index = 0; + data._paged.length = null; + } + + this.get('paginatorModel').set('itemsPerPage', parseInt(e.newVal, 10)); + }, + + /** + Parse each location and render a new view into each area. + @protected + @method _paginatorRenderUI + @since 3.11.0 + */ + _paginatorRenderUI: function () { + if (!this.get('rowsPerPage')) { + return; + } + var views = this._pgViews, + ViewClass = this.get('paginatorView'), + viewConfig = { + pageSizes: this.get('pageSizes'), + model: this.get('paginatorModel') + }, + locations = this.get('paginatorLocation'); + + if (!Y.Lang.isArray(locations)) { + locations = [locations]; + } + + if (!views) { // set up initial rendering of views + views = this._pgViews = []; + } + + // for each placement area, push to views + Y.Array.each(locations, function (location) { + var view = new ViewClass(viewConfig), + container = view.render().get('container'), + row; + + view.after('*:ui', this._uiPgHandler, this); + views.push(view); + + if (location._node) { // assume Y.Node + location.append(container); + // remove this container row if the view is ever destroyed + this.after('destroy', function (/* e */) { + view.destroy({ remove: true }); + }); + } else if (location === 'footer') { // DT Footer + // Render a table footer if there isn't one + if (!this.foot) { + this.foot = new Y.DataTable.FooterView({ host: this }); + this.foot.render(); + this.fire('renderFooter', { view: this.foot }); + } + + // create a row for the paginator to sit in + row = Y.Node.create(PaginatorTemplates.rowWrapper({ + wrapperClass: getClassName(NAME, 'wrapper'), + numOfCols: this.get('columns').length + })); + + row.one('td').append(container); + this.foot.tfootNode.append(row); + + // remove this container row if the view is ever destroyed + view.after('destroy', function (/* e */) { + row.remove(true); + }); + } else if (location === 'header') { + // 'header' means insert before the table + // placement with the caption may need to be addressed + if (this.view && this.view.tableNode) { + this.view.tableNode.insert(container, 'before'); + } else { + this.get('contentBox').prepend(container); + } + } + }, this); + + }, + + /** + Handles the paginator's UI event into a single location. Updates the + `paginatorModel` according to what type is provided. + @protected + @method _uiPgHandler + @param {EventFacade} e + @since 3.11.0 + */ + _uiPgHandler: function (e) { + // e.type = control type (first|prev|next|last|page|perPage) + // e.val = value based on the control type to pass to the model + var model = this.get('paginatorModel'); + + switch (e.type) { + case 'first': + model.set('page', 1); + break; + case 'last': + model.set('page', model.get('totalPages')); + break; + case 'prev': + case 'next': // overflow intentional + model[e.type + 'Page'](); + break; + case 'page': + model.set('page', e.val); + break; + case 'perPage': + model.set('itemsPerPage', e.val); + model.set('page', 1); + break; + } + }, + + /** + Augments the model list with a paged structure, or updates the paged + data. Then fires reset on the model list. + @protected + @method _afterPaginatorModelChange + @param {EventFacade} [e] + @since 3.11.0 + */ + _afterPaginatorModelChange: function () { + var model = this.get('paginatorModel'), + data = this.get('data'); + + if (!data._paged) { + this._augmentData(); + } else { + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + } + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + }, + + /** + Augments the model list data structure with paged implementations. + + The model list will contain a method for `getPage` that will return the + given number of items listed within the range. + + `each` will also loop over the items in the page + @protected + @method _augmentData + @since 3.11.0 + */ + _augmentData: function () { + var model = this.get('paginatorModel'); + + if (this.get('rowsPerPage') === null) { + return; + } + + Y.mix(this.get('data'), { + + _paged: { + index: (model.get('page') - 1) * model.get('itemsPerPage'), + length: model.get('itemsPerPage') + }, + + getPage: function () { + var _pg = this._paged, + min = _pg.index; + + // IE LTE 8 doesn't allow "undefined" as a second param - gh890 + return (_pg.length >= 0) ? + this._items.slice(min, min + _pg.length) : + this._items.slice(min); + }, + + size: function (paged) { + return (paged && this._paged.length >=0 ) ? + this._paged.length : + this._items.length; + }, + + each: function () { + var args = Array.prototype.slice.call(arguments); + args.unshift(this.getPage()); + + Y.Array.each.apply(null, args); + + return this; + } + }, true); + }, + + /** + Ensures `pageSizes` value is an array of objects to be used in the + paginator view. + @protected + @method _setPageSizesFn + @param {Array} val + @return Array + @since 3.11.0 + */ + _setPageSizesFn: function (val) { + var i, + len = val.length, + label, + value; + + if (!Y.Lang.isArray(val)) { + val = [val]; + len = val.length; + } + + for ( i = 0; i < len; i++ ) { + if (typeof val[i] !== 'object') { + label = val[i]; + value = val[i]; + + // We want to check to see if we have a number or a string + // of a number. If we do not, we want the value to be -1 to + // indicate "all rows" + /*jshint eqeqeq:false */ + if (parseInt(value, 10) != value) { + value = -1; + } + /*jshint eqeqeq:true */ + val[i] = { label: label, value: value }; + } + } + + return val; + }, + + /** + Ensures the object provided is an instance of a `Y.Model`. If it is not, + it assumes it is the configuration of a model, and gets the new model + type from `paginatorModelType`. + @protected + @method _setPaginatorModel + @param {Y.Model | Object} model + @return Y.Model instance + @since 3.11.0 + */ + _setPaginatorModel: function (model) { + if (!(model && model._isYUIModel)) { + var ModelConstructor = this.get('paginatorModelType'); + model = new ModelConstructor(model); + } + + return model; + }, + + /** + Returns a pointer to an object to be instantiated if the provided type is + a string + @protected + @method _getConstructor + @param {Object | String} type Type of Object to contruct. If `type` is a + String, we assume it is a namespace off the Y object + @return + @since 3.11.0 + */ + _getConstructor: function (type) { + return typeof type === 'string' ? + Y.Object.getValue(Y, type.split('.')) : + type; + } +}, true); + + +Y.DataTable.Paginator = Controller; +Y.DataTable.Paginator.Model = Model; +Y.DataTable.Paginator.View = View; + +Y.Base.mix(Y.DataTable, [Y.DataTable.Paginator]); + + +}, '3.12.0', { + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "lang": [ + "en" + ], + "skinnable": true +}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js new file mode 100644 index 00000000000..0aba2562c18 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-paginator",function(e,t){function f(){}var n,r,i=e.DataTable.Templates.Paginator,s=e.Lang.sub,o=e.ClassNameManager.getClassName,u=o(t,"control-disabled"),a="paginator:ui";n=e.Base.create("dt-pg-model",e.Model,[e.Paginator.Core]),r=e.Base.create("dt-pg-view",e.View,[],{_eventHandles:[],containerTemplate:'
',contentTemplate:"{buttons}{goto}{perPage}",_allowAdHocAttrs:!1,initializer:function(){this.containerTemplate=s(this.containerTemplate,{paginator:o(t)}),this._initStrings(),this._initClassNames(),this.attachEvents()},render:function(){var e=this.get("model"),t=s(this.contentTemplate,{buttons:this._buildButtonsGroup(),"goto":this._buildGotoGroup(),perPage:this._buildPerPageGroup()});return this.get("container").append(t),this.attachEvents(),this._rendered=!0,this._updateControlsUI(e.get("page")),this._updateItemsPerPageUI(e.get("itemsPerPage")),this},attachEvents:function(){r.superclass.attachEvents.apply(this,arguments);var t=this.get("container");this.classNames||this._initClassNames(),this._attachedViewEvents.push(t.delegate("click",this._controlClick,"."+this.classNames.control,this),this.get("model").after("change",this._modelChange,this)),t.all("form").each(e.bind(function(e){this._attachedViewEvents.push(e.after("submit",this._controlSubmit,this))},this)),t.all("select").each(e.bind(function(e){this._attachedViewEvents.push(e.after("change",this._controlChange,this))},this))},_buildButtonsGroup:function(){var e=this.get("strings"),t=this.classNames,n;return n=i.button({type:"first",label:e.first,classNames:t})+i.button({type:"prev",label:e.prev,classNames:t})+i.button({type:"next",label:e.next,classNames:t})+i.button({type:"last",label:e.last,classNames:t}),i.buttons({classNames:t,buttons:n})},_buildGotoGroup:function(){return i.gotoPage({classNames:this.classNames,strings:this.get("strings"),page:this.get("model").get("page")})},_buildPerPageGroup:function(){var e=this.get("pageSizes"),t=this.get("model").get("rowsPerPage"),n,r,s;for(s=0,r=e.length;s=0?this._items.slice(t,t+e.length):this._items.slice(t)},size:function(e){return e&&this._paged.length>=0?this._paged.length:this._items.length},each:function(){var t=Array.prototype.slice.call(arguments);return t.unshift(this.getPage()),e.Array.each.apply(null,t),this}},!0)},_setPageSizesFn:function(t){var n,r=t.length,i,s;e.Lang.isArray(t)||(t=[t],r=t.length);for(n=0;n' + @since 3.11.0 + */ + containerTemplate: '
', + + /** + Template for content. Helps maintain order of controls. + @property contentTemplate + @type {String} + @default '{buttons}{goto}{perPage}' + @since 3.11.0 + */ + contentTemplate: '{buttons}{goto}{perPage}', + + /** + Disables ad-hoc ATTRS for our view. + @protected + @property _allowAdHocAttrs + @type {Boolean} + @default false + @since 3.11.0 + */ + _allowAdHocAttrs: false, + + /** + Sets classnames on the templates and bind events + @method initializer + @since 3.11.0 + */ + initializer: function () { + this.containerTemplate = sub(this.containerTemplate, { + paginator: getClassName(NAME) + }); + + this._initStrings(); + this._initClassNames(); + + this.attachEvents(); + }, + + /** + @method render + @chainable + @since 3.11.0 + */ + render: function () { + var model = this.get('model'), + content = sub(this.contentTemplate, { + 'buttons': this._buildButtonsGroup(), + 'goto': this._buildGotoGroup(), + 'perPage': this._buildPerPageGroup() + }); + + this.get('container').append(content); + this.attachEvents(); + + this._rendered = true; + + this._updateControlsUI(model.get('page')); + this._updateItemsPerPageUI(model.get('itemsPerPage')); + + return this; + }, + + /** + @method attachEvents + @since 3.11.0 + */ + attachEvents: function () { + View.superclass.attachEvents.apply(this, arguments); + + var container = this.get('container'); + + if (!this.classNames) { + this._initClassNames(); + } + + this._attachedViewEvents.push( + container.delegate('click', this._controlClick, '.' + this.classNames.control, this), + this.get('model').after('change', this._modelChange, this) + ); + + container.all('form').each(Y.bind(function (frm) { + this._attachedViewEvents.push( + frm.after('submit', this._controlSubmit, this) + ); + }, this)); + + container.all('select').each(Y.bind(function (sel) { + this._attachedViewEvents.push( + sel.after('change', this._controlChange, this) + ); + }, this)); + + }, + + /** + Returns a string built from the button and buttons templates. + @protected + @method _buildButtonsGroup + @return {String} + @since 3.11.0 + */ + _buildButtonsGroup: function () { + var strings = this.get('strings'), + classNames = this.classNames, + buttons; + + buttons = PaginatorTemplates.button({ + type: 'first', label: strings.first, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'prev', label: strings.prev, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'next', label: strings.next, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'last', label: strings.last, classNames: classNames + }); + + return PaginatorTemplates.buttons({ + classNames: classNames, + buttons: buttons + }); + + }, + + /** + Returns a string built from the gotoPage template. + @protected + @method _buildGotoGroup + @return {String} + @since 3.11.0 + */ + _buildGotoGroup: function () { + + return PaginatorTemplates.gotoPage({ + classNames: this.classNames, + strings: this.get('strings'), + page: this.get('model').get('page') + }); + }, + + /** + Returns a string built from the perPage template + @protected + @method _buildPerPageGroup + @return {String} + @since 3.11.0 + */ + _buildPerPageGroup: function () { + var options = this.get('pageSizes'), + rowsPerPage = this.get('model').get('rowsPerPage'), + option, + len, + i; + + for (i = 0, len = options.length; i < len; i++ ) { + option = options[i]; + + if (typeof option !== 'object') { + option = { + value: option, + label: option + }; + } + option.selected = (option.value === rowsPerPage) ? ' selected' : ''; + } + + return PaginatorTemplates.perPage({ + classNames: this.classNames, + strings: this.get('strings'), + options: this.get('pageSizes') + }); + + }, + + /** + Update the UI after the model has changed. + @protected + @method _modelChange + @param {EventFacade} e + @since 3.11.0 + */ + _modelChange: function (e) { + var changed = e.changed, + page = (changed && changed.page), + itemsPerPage = (changed && changed.itemsPerPage); + + if (page) { + this._updateControlsUI(page.newVal); + } + if (itemsPerPage) { + this._updateItemsPerPageUI(itemsPerPage.newVal); + if (!page) { + this._updateControlsUI(e.target.get('page')); + } + } + + }, + + /** + Updates the button controls and the gotoPage form + @protected + @method _updateControlsUI + @param {Number} val Page number to set the UI input to + @since 3.11.0 + */ + _updateControlsUI: function (val) { + if (!this._rendered) { + return; + } + + var model = this.get('model'), + controlClass = '.' + this.classNames.control, + container = this.get('container'), + hasPrev = model.hasPrevPage(), + hasNext = model.hasNextPage(); + + container.one(controlClass + '-first') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-prev') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-next') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one(controlClass + '-last') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one('form input').set('value', val); + }, + + /** + Updates the drop down select for items per page + @protected + @method _updateItemsPerPageUI + @param {Number} val Number of items to display per page + @since 3.11.0 + */ + _updateItemsPerPageUI: function (val) { + if (!this._rendered) { + return; + } + + this.get('container').one('select').set('value', val); + }, + + /** + Fire EVENT_UI when an enabled control button is clicked + @protected + @method _controlClick + @param {EventFacade} e + @since 3.11.0 + */ + _controlClick: function (e) { // buttons + e.preventDefault(); + var control = e.currentTarget; + // register click events from the four control buttons + if (control.hasClass(CLASS_DISABLED)) { + return; + } + this.fire(EVENT_UI, { + type: control.getData('type'), + val: control.getData('page') || null + }); + }, + + /** + Fire EVENT_UI with `type:perPage` after the select drop down changes + @protected + @method _controlChange + @param {EventFacade} e + @since 3.11.0 + */ + _controlChange: function (e) { + + // register change events from the perPage select + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + val = e.target.get('value'); + this.fire(EVENT_UI, { type: 'perPage', val: parseInt(val, 10) }); + }, + + /** + Fire EVENT_UI with `type:page` after form is submitted + @protected + @method _controlSubmit + @param {EventFacade} e + @since 3.11.0 + */ + _controlSubmit: function (e) { + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + // the only form we have is the go to page form + e.preventDefault(); + + input = e.target.one('input'); + this.fire(EVENT_UI, { type: 'page', val: input.get('value') }); + }, + + /** + Initializes classnames to be used with the templates + @protected + @method _initClassNames + @since 3.11.0 + */ + _initClassNames: function () { + this.classNames = { + control: getClassName(NAME, 'control'), + controls: getClassName(NAME, 'controls'), + group: getClassName(NAME, 'group'), + perPage: getClassName(NAME, 'per-page') + }; + }, + + /** + Initializes strings used for internationalization + @protected + @method _initStrings + @since 3.11.0 + */ + _initStrings: function () { + // Not a valueFn because other class extensions may want to add to it + this.set('strings', Y.mix((this.get('strings') || {}), + Y.Intl.get('datatable-paginator'))); + } +}, { + ATTRS: { + /** + Array of values used to populate the drop down for items per page + @attribute pageSizes + @type {Array} + @default [ 10, 50, 100, { label: 'Show All', value: -1 } ] + @since 3.11.0 + */ + pageSizes: { + value: [ 10, 50, 100, { label: 'Show All', value: -1 } ] + }, + + /** + Model used for this view + @attribute model + @type {Y.Model} + @default null + @since 3.11.0 + */ + model: {} + } +}); + +/** + @class DataTable.Paginator + @since 3.11.0 + */ +function Controller () {} + +Controller.ATTRS = { + /** + A model instance or a configuration object for the Model. + @attribute paginatorModel + @type {Y.Model | Object} + @default null + @since 3.11.0 + */ + paginatorModel: { + setter: '_setPaginatorModel', + value: null, + writeOnce: 'initOnly' + }, + + /** + A pointer to a Model object to be instantiated, or a String off of the + `Y` namespace. + + This is only used if the `pagiantorModel` is a configuration object or + is null. + @attribute paginatorModelType + @type {Y.Model | String} + @default 'DataTable.Paginator.Model' + @since 3.11.0 + */ + paginatorModelType: { + getter: '_getConstructor', + value: 'DataTable.Paginator.Model', + writeOnce: 'initOnly' + }, + + /** + A pointer to a `Y.View` object to be instantiated. A new view will be + created for each location provided. Each view created will be given the + same model instance. + @attribute paginatorView + @type {Y.View | String} + @default 'DataTable.Paginator.View' + @since 3.11.0 + */ + paginatorView: { + getter: '_getConstructor', + value: 'DataTable.Paginator.View', + writeOnce: 'initOnly' + }, + + // PAGINATOR CONFIGS + /** + Array of values used to populate the values in the Paginator UI allowing + the end user to select the number of items to display per page. + @attribute pageSizes + @type {Array} + @default [10, 50, 100, { label: 'Show All', value: -1 }] + @since 3.11.0 + */ + pageSizes: { + setter: '_setPageSizesFn', + value: [10, 50, 100, { label: 'Show All', value: -1 }] + }, + + /** + Number of rows to display per page. As the UI changes the number of pages + to display, this will update to reflect the value selected in the UI + @attribute rowsPerPage + @type {Number | null} + @default null + @since 3.11.0 + */ + rowsPerPage: { + value: null + }, + + /** + String of `footer` or `header`, a Y.Node, or an Array or any combination + of those values. + @attribute paginatorLocation + @type {String | Array | Y.Node} + @default footer + @since 3.11.0 + */ + paginatorLocation: { + value: 'footer' + } +}; + +Y.mix(Controller.prototype, { + /** + Sets the `paginatorModel` to the first page. + @method firstPage + @chainable + @since 3.11.0 + */ + firstPage: function () { + this.get('paginatorModel').set('page', 1); + return this; + }, + + /** + Sets the `paginatorModel` to the last page. + @method lastPage + @chainable + @since 3.11.0 + */ + lastPage: function () { + var model = this.get('paginatorModel'); + model.set('page', model.get('totalPages')); + return this; + }, + + /** + Sets the `paginatorModel` to the previous page. + @method previousPage + @chainable + @since 3.11.0 + */ + previousPage: function () { + this.get('paginatorModel').prevPage(); + return this; + }, + + /** + Sets the `paginatorModel` to the next page. + @method nextPage + @chainable + @since 3.11.0 + */ + nextPage: function () { + this.get('paginatorModel').nextPage(); + return this; + }, + + + /// Init and protected + /** + Constructor logic + @protected + @method initializer + @since 3.11.0 + */ + initializer: function () { + // allow DT to use paged data + this._augmentData(); + + if (!this._eventHandles.paginatorRender) { + this._eventHandles.paginatorRender = Y.Do.after(this._paginatorRender, this, 'render'); + } + }, + + /** + Renders the paginator into locations and attaches events. + @protected + @method _paginatorRender + @since 3.11.0 + */ + _paginatorRender: function () { + var model = this.get('paginatorModel'); + + this._paginatorRenderUI(); + model.after('change', this._afterPaginatorModelChange, this); + this.after('dataChange', this._afterDataChangeWithPaginator, this); + this.after('rowsPerPageChange', this._afterRowsPerPageChange, this); + + // ensure our model has the correct totalItems set + model.set('itemsPerPage', this.get('rowsPerPage')); + model.set('totalItems', this.get('data').size()); + }, + + /** + After the data changes, we ensure we are on the first page and the data + is augmented + @protected + @method _afterDataChangeWithPaginator + @since 3.11.0 + */ + _afterDataChangeWithPaginator: function () { + var data = this.get('data'), + model = this.get('paginatorModel'); + + if (model.get('page') !== 1) { + this.firstPage(); + } else { + this._augmentData(); + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + } + }, + + /** + After the rowsPerPage changes, update the UI to reflect the new number of + rows to be displayed. If the new value is `null`, destroy all instances + of the paginators. + @protected + @method _afterRowsPerPageChange + @param {EventFacade} e + @since 3.11.0 + */ + _afterRowsPerPageChange: function (e) { + var data = this.get('data'), + model = this.get('paginatorModel'), + view; + + if (e.newVal !== null) { + // turning on + this._paginatorRenderUI(); + + if (!(data._paged)) { + this._augmentData(); + } + + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + + } else { // e.newVal === null + // destroy! + while(this._pgViews.length) { + view = this._pgViews.shift(); + view.destroy({ remove: true }); + view._rendered = null; + } + + data._paged.index = 0; + data._paged.length = null; + } + + this.get('paginatorModel').set('itemsPerPage', parseInt(e.newVal, 10)); + }, + + /** + Parse each location and render a new view into each area. + @protected + @method _paginatorRenderUI + @since 3.11.0 + */ + _paginatorRenderUI: function () { + if (!this.get('rowsPerPage')) { + return; + } + var views = this._pgViews, + ViewClass = this.get('paginatorView'), + viewConfig = { + pageSizes: this.get('pageSizes'), + model: this.get('paginatorModel') + }, + locations = this.get('paginatorLocation'); + + if (!Y.Lang.isArray(locations)) { + locations = [locations]; + } + + if (!views) { // set up initial rendering of views + views = this._pgViews = []; + } + + // for each placement area, push to views + Y.Array.each(locations, function (location) { + var view = new ViewClass(viewConfig), + container = view.render().get('container'), + row; + + view.after('*:ui', this._uiPgHandler, this); + views.push(view); + + if (location._node) { // assume Y.Node + location.append(container); + // remove this container row if the view is ever destroyed + this.after('destroy', function (/* e */) { + view.destroy({ remove: true }); + }); + } else if (location === 'footer') { // DT Footer + // Render a table footer if there isn't one + if (!this.foot) { + this.foot = new Y.DataTable.FooterView({ host: this }); + this.foot.render(); + this.fire('renderFooter', { view: this.foot }); + } + + // create a row for the paginator to sit in + row = Y.Node.create(PaginatorTemplates.rowWrapper({ + wrapperClass: getClassName(NAME, 'wrapper'), + numOfCols: this.get('columns').length + })); + + row.one('td').append(container); + this.foot.tfootNode.append(row); + + // remove this container row if the view is ever destroyed + view.after('destroy', function (/* e */) { + row.remove(true); + }); + } else if (location === 'header') { + // 'header' means insert before the table + // placement with the caption may need to be addressed + if (this.view && this.view.tableNode) { + this.view.tableNode.insert(container, 'before'); + } else { + this.get('contentBox').prepend(container); + } + } + }, this); + + }, + + /** + Handles the paginator's UI event into a single location. Updates the + `paginatorModel` according to what type is provided. + @protected + @method _uiPgHandler + @param {EventFacade} e + @since 3.11.0 + */ + _uiPgHandler: function (e) { + // e.type = control type (first|prev|next|last|page|perPage) + // e.val = value based on the control type to pass to the model + var model = this.get('paginatorModel'); + + switch (e.type) { + case 'first': + model.set('page', 1); + break; + case 'last': + model.set('page', model.get('totalPages')); + break; + case 'prev': + case 'next': // overflow intentional + model[e.type + 'Page'](); + break; + case 'page': + model.set('page', e.val); + break; + case 'perPage': + model.set('itemsPerPage', e.val); + model.set('page', 1); + break; + } + }, + + /** + Augments the model list with a paged structure, or updates the paged + data. Then fires reset on the model list. + @protected + @method _afterPaginatorModelChange + @param {EventFacade} [e] + @since 3.11.0 + */ + _afterPaginatorModelChange: function () { + var model = this.get('paginatorModel'), + data = this.get('data'); + + if (!data._paged) { + this._augmentData(); + } else { + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + } + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + }, + + /** + Augments the model list data structure with paged implementations. + + The model list will contain a method for `getPage` that will return the + given number of items listed within the range. + + `each` will also loop over the items in the page + @protected + @method _augmentData + @since 3.11.0 + */ + _augmentData: function () { + var model = this.get('paginatorModel'); + + if (this.get('rowsPerPage') === null) { + return; + } + + Y.mix(this.get('data'), { + + _paged: { + index: (model.get('page') - 1) * model.get('itemsPerPage'), + length: model.get('itemsPerPage') + }, + + getPage: function () { + var _pg = this._paged, + min = _pg.index; + + // IE LTE 8 doesn't allow "undefined" as a second param - gh890 + return (_pg.length >= 0) ? + this._items.slice(min, min + _pg.length) : + this._items.slice(min); + }, + + size: function (paged) { + return (paged && this._paged.length >=0 ) ? + this._paged.length : + this._items.length; + }, + + each: function () { + var args = Array.prototype.slice.call(arguments); + args.unshift(this.getPage()); + + Y.Array.each.apply(null, args); + + return this; + } + }, true); + }, + + /** + Ensures `pageSizes` value is an array of objects to be used in the + paginator view. + @protected + @method _setPageSizesFn + @param {Array} val + @return Array + @since 3.11.0 + */ + _setPageSizesFn: function (val) { + var i, + len = val.length, + label, + value; + + if (!Y.Lang.isArray(val)) { + val = [val]; + len = val.length; + } + + for ( i = 0; i < len; i++ ) { + if (typeof val[i] !== 'object') { + label = val[i]; + value = val[i]; + + // We want to check to see if we have a number or a string + // of a number. If we do not, we want the value to be -1 to + // indicate "all rows" + /*jshint eqeqeq:false */ + if (parseInt(value, 10) != value) { + value = -1; + } + /*jshint eqeqeq:true */ + val[i] = { label: label, value: value }; + } + } + + return val; + }, + + /** + Ensures the object provided is an instance of a `Y.Model`. If it is not, + it assumes it is the configuration of a model, and gets the new model + type from `paginatorModelType`. + @protected + @method _setPaginatorModel + @param {Y.Model | Object} model + @return Y.Model instance + @since 3.11.0 + */ + _setPaginatorModel: function (model) { + if (!(model && model._isYUIModel)) { + var ModelConstructor = this.get('paginatorModelType'); + model = new ModelConstructor(model); + } + + return model; + }, + + /** + Returns a pointer to an object to be instantiated if the provided type is + a string + @protected + @method _getConstructor + @param {Object | String} type Type of Object to contruct. If `type` is a + String, we assume it is a namespace off the Y object + @return + @since 3.11.0 + */ + _getConstructor: function (type) { + return typeof type === 'string' ? + Y.Object.getValue(Y, type.split('.')) : + type; + } +}, true); + + +Y.DataTable.Paginator = Controller; +Y.DataTable.Paginator.Model = Model; +Y.DataTable.Paginator.View = View; + +Y.Base.mix(Y.DataTable, [Y.DataTable.Paginator]); + + +}, '3.12.0', { + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "lang": [ + "en" + ], + "skinnable": true +}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js new file mode 100644 index 00000000000..4972e3ec087 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatable-paginator",function(e){e.Intl.add("datatable-paginator","",{first:"First",prev:"Previous",next:"Next",last:"Last",goToLabel:"Page:",goToAction:"Go",perPage:"Rows:"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js new file mode 100644 index 00000000000..48b7ad20d5d --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatable-paginator_en",function(e){e.Intl.add("datatable-paginator","en",{first:"First",prev:"Previous",next:"Next",last:"Last",goToLabel:"Page:",goToAction:"Go",perPage:"Rows:"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css b/lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css similarity index 91% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css index 670445457d4..ec722ddcdfd 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* foundational CSS */ .yui3-datatable-scrollable-x { _overflow-x: hidden; diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css similarity index 83% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css index 66cbf578d2e..3b146a76bff 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-datatable-scroll-columns { border-collapse: separate; border-spacing: 0; diff --git a/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css new file mode 100644 index 00000000000..4d93b2e0a34 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #303030;border-left-color:#323434}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-night-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css similarity index 81% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css index 2af7cb48c7d..846ed38b286 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-datatable-scroll-columns { border-collapse: separate; border-spacing: 0; diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css similarity index 91% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css index e995d9db8f3..8f777cac915 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:arial,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-sam-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js index e511ef311aa..85c792caa8b 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-scroll', function (Y, NAME) { /** @@ -1384,4 +1390,4 @@ Y.mix(Scrollable.prototype, { Y.Base.mix(Y.DataTable, [Scrollable]); -}, '3.9.1', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); +}, '3.12.0', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js similarity index 98% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js index 15ff0f27b2e..92a214af611 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("datatable-scroll",function(e,t){function u(e,t){return parseInt(e.getComputedStyle(t),10)||0}var n=e.Lang,r=n.isString,i=n.isNumber,s=n.isArray,o;e.DataTable.Scrollable=o=function(){},o.ATTRS={scrollable:{value:!1,setter:"_setScrollable"}},e.mix(o.prototype,{scrollTo:function(t){var n;return t&&this._tbodyNode&&(this._yScrollNode||this._xScrollNode)&&(s(t)?n=this.getCell(t):i(t)?n=this.getRow(t):r(t)?n=this._tbodyNode.one("#"+t):t instanceof e.Node&&t.ancestor(".yui3-datatable")===this.get("boundingBox")&&(n=t),n&&n.scrollIntoView()),this},_CAPTION_TABLE_TEMPLATE:'',_SCROLL_LINER_TEMPLATE:'
',_SCROLLBAR_TEMPLATE:'
',_X_SCROLLER_TEMPLATE:'
',_Y_SCROLL_HEADER_TEMPLATE:'',_Y_SCROLLER_TEMPLATE:'
',_addScrollbarPadding:function(){var t=this._yScrollHeader,n="."+this.getClassName("header"),r,i,s,o,u;if(t){r=e.DOM.getScrollbarWidth()+"px",i=t.all("tr");for(o=0,u=i.size();o-1,this._yScroll=n&&e.indexOf("y")>-1},_syncScrollPosition:function(t){var n=this._scrollbarNode,r=this._yScrollNode,i=t.currentTarget,s;if(n&&r){if(this._scrollLock&&this._scrollLock.source!==i)return;this._clearScrollLock(),this._scrollLock=e.later(300,this,this._clearScrollLock),this._scrollLock.source=i,s=i===n?r:n,s.set("scrollTop",i.get("scrollTop"))}},_syncScrollCaptionUI:function(){var t=this._captionNode,n=this._tableNode,r=this._captionTable,i;t?(i=t.getAttribute("id"),r||(r=this._createScrollCaptionTable(),this.get("contentBox").prepend(r)),t.get("parentNode").compareTo(r)||(r.empty().insert(t),i||(i=e.stamp(t),t.setAttribute("id",i)),n.setAttribute("aria-describedby",i))):r&&this._removeScrollCaptionTable()},_syncScrollColumnWidths:function(){var t=[];this._theadNode&&this._yScrollHeader&&(this._theadNode.all("."+this.getClassName("header")).each(function(n){t.push(e.UA.ie&&e.UA.ie<8?n.get("clientWidth")-u(n,"paddingLeft")-u(n,"paddingRight")+"px":n.getComputedStyle("width"))}),this._yScrollHeader.all("."+this.getClassName("scroll","liner")).each(function(e,n){e.setStyle("width",t[n])}))},_syncScrollHeaders:function(){var t=this._yScrollHeader,n=this._SCROLL_LINER_TEMPLATE,r=this.getClassName("scroll","liner"),i=this.getClassName("header"),s=this._theadNode.all("."+i);this._theadNode&&t&&(t.empty().appendChild(this._theadNode.cloneNode(!0)),t.all("[id]").removeAttribute("id"),t.all("."+i).each(function(t,i){var o=e.Node.create(e.Lang.sub(n,{className:r})),u=s.item(i);o.setStyle("padding",u.getComputedStyle("paddingTop")+" "+u.getComputedStyle("paddingRight")+" "+u.getComputedStyle("paddingBottom")+" "+u.getComputedStyle("paddingLeft")),o.appendChild(t.get("childNodes").toFrag()),t.appendChild(o)},this),this._syncScrollColumnWidths(),this._addScrollbarPadding())},_syncScrollUI:function(){var e=this._xScroll,t=this._yScroll,n=this._xScrollNode,r=this._yScrollNode,i=n&&n.get("scrollLeft"),s=r&&r.get("scrollTop");this._uiSetScrollable(),e||t?((this.get("width")||"").slice(-1)==="%"?this._bindScrollResize():this._unbindScrollResize(),this._syncScrollCaptionUI()):this._disableScrolling(),this._yScrollHeader&&this._yScrollHeader.setStyle("display","none"),e&&(t||this._disableYScrolling(),this._syncXScrollUI(t)),t&&(e||this._disableXScrolling(),this._syncYScrollUI(e)),i&&this._xScrollNode&&this._xScrollNode.set("scrollLeft",i),s&&this._yScrollNode&&this._yScrollNode.set("scrollTop",s)},_syncXScrollUI:function(t){var n=this._xScrollNode,r=this._yScrollContainer,i=this._tableNode,s=this.get("width"),o=this.get("boundingBox").get("offsetWidth"),a=e.DOM.getScrollbarWidth(),f,l;n||(n=this._createXScrollNode(),(r||i).replace(n).appendTo(n)),f=u(n,"borderLeftWidth")+u(n,"borderRightWidth"),n.setStyle("width",""),this._uiSetDim("width",""),t&&this._yScrollContainer&&this._yScrollContainer.setStyle("width",""),e.UA.ie&&e.UA.ie<8&&(i.setStyle("width",s),i.get("offsetWidth")),i.setStyle("width",""),l=i.get("offsetWidth"),i.setStyle("width",l+"px"),this._uiSetDim("width",s),n.setStyle("width",o-f+"px"),n.get("offsetWidth")-f>l&&(t?i.setStyle("width",n.get("offsetWidth")-f-a+"px"):i.setStyle("width","100%"))},_syncYScrollUI:function(t){var n=this._yScrollContainer,r=this._yScrollNode,i=this._xScrollNode,s=this._yScrollHeader,o=this._scrollbarNode,a=this._tableNode,f=this._theadNode,l=this._captionTable,c=this.get("boundingBox"),h=this.get("contentBox"),p=this.get("width"),d=c.get("offsetHeight"),v=e.DOM.getScrollbarWidth(),m;l&&!t&&l.setStyle("width",p||"100%"),n||(n=this._createYScrollNode(),r=this._yScrollNode,a.replace(n).appendTo(r)),m=t?i:n,t||a.setStyle("width",""),t&&(d-=v),r.setStyle("height",d-m.get("offsetTop")-u(m,"borderTopWidth")-u(m,"borderBottomWidth")+"px"),t?n.setStyle("width",a.get("offsetWidth")+v+"px"):this._uiSetYScrollWidth(p),l&&!t&&l.setStyle("width",n.get("offsetWidth")+"px"),f&&!s&&(s=this._createYScrollHeader(),n.prepend(s),this._syncScrollHeaders()),s&&(this._syncScrollColumnWidths(),s.setStyle("display",""),o||(o=this._createScrollbar(),this._bindScrollbar(),h.prepend(o)),this._uiSetScrollbarHeight(),this._uiSetScrollbarPosition(m))},_uiSetScrollable:function(){this.get("boundingBox").toggleClass(this.getClassName("scrollable","x"),this._xScroll).toggleClass(this.getClassName("scrollable","y"),this._yScroll)},_uiSetScrollbarHeight:function(){var e=this._scrollbarNode,t=this._yScrollNode,n=this._yScrollHeader;e&&t&&n&&(e.get("firstChild").setStyle("height",this._tbodyNode.get("scrollHeight")+"px"),e.setStyle("height",parseFloat(t.getComputedStyle("height"))-parseFloat(n.getComputedStyle("height"))+"px"))},_uiSetScrollbarPosition:function(t){var n=this._scrollbarNode,r=this._yScrollHeader;n&&t&&r&&n.setStyles({top:parseFloat(r.getComputedStyle("height"))+u(t,"borderTopWidth")+t.get("offsetTop")+"px",left:t.get("offsetWidth")-e.DOM.getScrollbarWidth()-1-u(t,"borderRightWidth")+"px"})},_uiSetYScrollWidth:function(t){var n=this._yScrollContainer,r=this._tableNode,i,s,o,u;n&&r&&(u=e.DOM.getScrollbarWidth(),t?(s=n.get("offsetWidth")-n.get("clientWidth")+u,n.setStyle("width",t),o=n.get("clientWidth")-s,r.setStyle("width",o+"px"),i=r.get("offsetWidth"),n.setStyle("width",i+u+"px")):(r.setStyle("width",""),n.setStyle("width",""),n.setStyle("width",r.get("offsetWidth")+u+"px")))},_unbindScrollbar:function(){this._scrollbarEventHandle&&this._scrollbarEventHandle.detach()},_unbindScrollResize:function(){this._scrollResizeHandle&&(this._scrollResizeHandle.detach(),delete this._scrollResizeHandle)}},!0),e.Base.mix(e.DataTable,[o])},"3.9.1",{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0}); +this._scrollbarEventHandle.detach(),delete this._scrollbarEventHandle)},_setScrollable:function(t){return t===!0&&(t="xy"),r(t)&&(t=t.toLowerCase()),t===!1||t==="y"||t==="x"||t==="xy"?t:e.Attribute.INVALID_VALUE},_setScrollProperties:function(){var e=this.get("scrollable")||"",t=this.get("width"),n=this.get("height");this._xScroll=t&&e.indexOf("x")>-1,this._yScroll=n&&e.indexOf("y")>-1},_syncScrollPosition:function(t){var n=this._scrollbarNode,r=this._yScrollNode,i=t.currentTarget,s;if(n&&r){if(this._scrollLock&&this._scrollLock.source!==i)return;this._clearScrollLock(),this._scrollLock=e.later(300,this,this._clearScrollLock),this._scrollLock.source=i,s=i===n?r:n,s.set("scrollTop",i.get("scrollTop"))}},_syncScrollCaptionUI:function(){var t=this._captionNode,n=this._tableNode,r=this._captionTable,i;t?(i=t.getAttribute("id"),r||(r=this._createScrollCaptionTable(),this.get("contentBox").prepend(r)),t.get("parentNode").compareTo(r)||(r.empty().insert(t),i||(i=e.stamp(t),t.setAttribute("id",i)),n.setAttribute("aria-describedby",i))):r&&this._removeScrollCaptionTable()},_syncScrollColumnWidths:function(){var t=[];this._theadNode&&this._yScrollHeader&&(this._theadNode.all("."+this.getClassName("header")).each(function(n){t.push(e.UA.ie&&e.UA.ie<8?n.get("clientWidth")-u(n,"paddingLeft")-u(n,"paddingRight")+"px":n.getComputedStyle("width"))}),this._yScrollHeader.all("."+this.getClassName("scroll","liner")).each(function(e,n){e.setStyle("width",t[n])}))},_syncScrollHeaders:function(){var t=this._yScrollHeader,n=this._SCROLL_LINER_TEMPLATE,r=this.getClassName("scroll","liner"),i=this.getClassName("header"),s=this._theadNode.all("."+i);this._theadNode&&t&&(t.empty().appendChild(this._theadNode.cloneNode(!0)),t.all("[id]").removeAttribute("id"),t.all("."+i).each(function(t,i){var o=e.Node.create(e.Lang.sub(n,{className:r})),u=s.item(i);o.setStyle("padding",u.getComputedStyle("paddingTop")+" "+u.getComputedStyle("paddingRight")+" "+u.getComputedStyle("paddingBottom")+" "+u.getComputedStyle("paddingLeft")),o.appendChild(t.get("childNodes").toFrag()),t.appendChild(o)},this),this._syncScrollColumnWidths(),this._addScrollbarPadding())},_syncScrollUI:function(){var e=this._xScroll,t=this._yScroll,n=this._xScrollNode,r=this._yScrollNode,i=n&&n.get("scrollLeft"),s=r&&r.get("scrollTop");this._uiSetScrollable(),e||t?((this.get("width")||"").slice(-1)==="%"?this._bindScrollResize():this._unbindScrollResize(),this._syncScrollCaptionUI()):this._disableScrolling(),this._yScrollHeader&&this._yScrollHeader.setStyle("display","none"),e&&(t||this._disableYScrolling(),this._syncXScrollUI(t)),t&&(e||this._disableXScrolling(),this._syncYScrollUI(e)),i&&this._xScrollNode&&this._xScrollNode.set("scrollLeft",i),s&&this._yScrollNode&&this._yScrollNode.set("scrollTop",s)},_syncXScrollUI:function(t){var n=this._xScrollNode,r=this._yScrollContainer,i=this._tableNode,s=this.get("width"),o=this.get("boundingBox").get("offsetWidth"),a=e.DOM.getScrollbarWidth(),f,l;n||(n=this._createXScrollNode(),(r||i).replace(n).appendTo(n)),f=u(n,"borderLeftWidth")+u(n,"borderRightWidth"),n.setStyle("width",""),this._uiSetDim("width",""),t&&this._yScrollContainer&&this._yScrollContainer.setStyle("width",""),e.UA.ie&&e.UA.ie<8&&(i.setStyle("width",s),i.get("offsetWidth")),i.setStyle("width",""),l=i.get("offsetWidth"),i.setStyle("width",l+"px"),this._uiSetDim("width",s),n.setStyle("width",o-f+"px"),n.get("offsetWidth")-f>l&&(t?i.setStyle("width",n.get("offsetWidth")-f-a+"px"):i.setStyle("width","100%"))},_syncYScrollUI:function(t){var n=this._yScrollContainer,r=this._yScrollNode,i=this._xScrollNode,s=this._yScrollHeader,o=this._scrollbarNode,a=this._tableNode,f=this._theadNode,l=this._captionTable,c=this.get("boundingBox"),h=this.get("contentBox"),p=this.get("width"),d=c.get("offsetHeight"),v=e.DOM.getScrollbarWidth(),m;l&&!t&&l.setStyle("width",p||"100%"),n||(n=this._createYScrollNode(),r=this._yScrollNode,a.replace(n).appendTo(r)),m=t?i:n,t||a.setStyle("width",""),t&&(d-=v),r.setStyle("height",d-m.get("offsetTop")-u(m,"borderTopWidth")-u(m,"borderBottomWidth")+"px"),t?n.setStyle("width",a.get("offsetWidth")+v+"px"):this._uiSetYScrollWidth(p),l&&!t&&l.setStyle("width",n.get("offsetWidth")+"px"),f&&!s&&(s=this._createYScrollHeader(),n.prepend(s),this._syncScrollHeaders()),s&&(this._syncScrollColumnWidths(),s.setStyle("display",""),o||(o=this._createScrollbar(),this._bindScrollbar(),h.prepend(o)),this._uiSetScrollbarHeight(),this._uiSetScrollbarPosition(m))},_uiSetScrollable:function(){this.get("boundingBox").toggleClass(this.getClassName("scrollable","x"),this._xScroll).toggleClass(this.getClassName("scrollable","y"),this._yScroll)},_uiSetScrollbarHeight:function(){var e=this._scrollbarNode,t=this._yScrollNode,n=this._yScrollHeader;e&&t&&n&&(e.get("firstChild").setStyle("height",this._tbodyNode.get("scrollHeight")+"px"),e.setStyle("height",parseFloat(t.getComputedStyle("height"))-parseFloat(n.getComputedStyle("height"))+"px"))},_uiSetScrollbarPosition:function(t){var n=this._scrollbarNode,r=this._yScrollHeader;n&&t&&r&&n.setStyles({top:parseFloat(r.getComputedStyle("height"))+u(t,"borderTopWidth")+t.get("offsetTop")+"px",left:t.get("offsetWidth")-e.DOM.getScrollbarWidth()-1-u(t,"borderRightWidth")+"px"})},_uiSetYScrollWidth:function(t){var n=this._yScrollContainer,r=this._tableNode,i,s,o,u;n&&r&&(u=e.DOM.getScrollbarWidth(),t?(s=n.get("offsetWidth")-n.get("clientWidth")+u,n.setStyle("width",t),o=n.get("clientWidth")-s,r.setStyle("width",o+"px"),i=r.get("offsetWidth"),n.setStyle("width",i+u+"px")):(r.setStyle("width",""),n.setStyle("width",""),n.setStyle("width",r.get("offsetWidth")+u+"px")))},_unbindScrollbar:function(){this._scrollbarEventHandle&&this._scrollbarEventHandle.detach()},_unbindScrollResize:function(){this._scrollResizeHandle&&(this._scrollResizeHandle.detach(),delete this._scrollResizeHandle)}},!0),e.Base.mix(e.DataTable,[o])},"3.12.0",{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js index e511ef311aa..85c792caa8b 100644 --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-scroll', function (Y, NAME) { /** @@ -1384,4 +1390,4 @@ Y.mix(Scrollable.prototype, { Y.Base.mix(Y.DataTable, [Scrollable]); -}, '3.9.1', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); +}, '3.12.0', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css b/lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css similarity index 75% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css rename to lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css index b87b4340322..4881b6ce651 100644 --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css +++ b/lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* foundational CSS */ .yui3-datatable-sortable-column { z-index: 1; diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css rename to lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css index 63e9c3c2c77..3de82b1cbd3 100644 --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-datatable-sortable-column { cursor: pointer; } diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css new file mode 100644 index 00000000000..92b6a1f072c --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-night .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-night .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-night .yui3-datatable-sortable-column:hover{background-color:#4d4e4f;*background:#505152 url(../../../../assets/skins/night/sprite.png) repeat-x 0 -100px;background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.2)),color-stop(40%,rgba(255,255,255,0.1)),color-stop(80%,rgba(255,255,255,0.01)),to(transparent));background-image:-webkit-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-moz-linear-gradient(top,rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-ms-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-o-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent)}.yui3-skin-night .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-night .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-night .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-night .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-night .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#262626;color:#b3b2b2}.yui3-skin-night .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#393a3a;color:#cbcbcb}#yui3-css-stamp.skin-night-datatable-sort{display:none} diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png new file mode 100644 index 00000000000..9ced289458e Binary files /dev/null and b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png differ diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png new file mode 100644 index 00000000000..c4befbc9a37 Binary files /dev/null and b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png differ diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort-skin.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort-skin.css similarity index 89% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort-skin.css rename to lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort-skin.css index 5cf7ab9af41..a757abad5e9 100644 --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort-skin.css +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-datatable-sortable-column { cursor: pointer; } diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort.css new file mode 100644 index 00000000000..e11c2c505fe --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/sort-arrow-sprite-ie.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/sort-arrow-sprite-ie.png similarity index 100% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/sort-arrow-sprite-ie.png rename to lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/sort-arrow-sprite-ie.png diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/sort-arrow-sprite.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/sort-arrow-sprite.png similarity index 100% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/sort-arrow-sprite.png rename to lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/sort-arrow-sprite.png diff --git a/lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-debug.js b/lib/yuilib/3.12.0/datatable-sort/datatable-sort-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-debug.js rename to lib/yuilib/3.12.0/datatable-sort/datatable-sort-debug.js index af4d387047f..510ec4284f3 100644 --- a/lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-debug.js +++ b/lib/yuilib/3.12.0/datatable-sort/datatable-sort-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-sort', function (Y, NAME) { /** @@ -556,9 +562,8 @@ Y.mix(Sortable.prototype, { **/ _onUITriggerSort: function (e) { var id = e.currentTarget.getAttribute('data-yui3-col-id'), - sortBy = e.shiftKey ? this.get('sortBy') : [{}], column = id && this.getColumn(id), - i, len; + sortBy, i, len; if (e.type === 'keydown' && e.keyCode !== 32) { return; @@ -570,6 +575,8 @@ Y.mix(Sortable.prototype, { if (column) { if (e.shiftKey) { + sortBy = this.get('sortBy') || []; + for (i = 0, len = sortBy.length; i < len; ++i) { if (id === sortBy[i] || Math.abs(sortBy[i][id]) === 1) { if (!isObject(sortBy[i])) { @@ -585,6 +592,8 @@ Y.mix(Sortable.prototype, { sortBy.push(column._id); } } else { + sortBy = [{}]; + sortBy[0][id] = -(column.sortDir||0) || 1; } @@ -845,10 +854,16 @@ Y.mix(Sortable.prototype, { } title = sub(this.getString( - (col.sortDir === 1) ? 'reverseSortBy' : 'sortBy'), { + (col.sortDir === 1) ? 'reverseSortBy' : 'sortBy'), // get string + { + title: col.title || '', + key: col.key || '', + abbr: col.abbr || '', + label: col.label || '', column: col.abbr || col.label || col.key || ('column ' + i) - }); + } + ); node.setAttribute('title', title); // To combat VoiceOver from reading the sort title as the @@ -894,4 +909,4 @@ Y.DataTable.Sortable = Sortable; Y.Base.mix(Y.DataTable, [Sortable]); -}, '3.9.1', {"requires": ["datatable-base"], "lang": ["en", "fr", "es"], "skinnable": true}); +}, '3.12.0', {"requires": ["datatable-base"], "lang": ["en", "fr", "es", "hu"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-min.js b/lib/yuilib/3.12.0/datatable-sort/datatable-sort-min.js similarity index 51% rename from lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-min.js rename to lib/yuilib/3.12.0/datatable-sort/datatable-sort-min.js index 541bc05479a..0cb9632eef5 100644 --- a/lib/yuilib/3.9.1/build/datatable-sort/datatable-sort-min.js +++ b/lib/yuilib/3.12.0/datatable-sort/datatable-sort-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatable-sort",function(e,t){function l(){}var n=e.Lang,r=n.isBoolean,i=n.isString,s=n.isArray,o=n.isObject,u=e.Array,a=n.sub,f={asc:1,desc:-1,1:1,"-1":-1};l.ATTRS={sortable:{value:"auto",validator:"_validateSortable"},sortBy:{validator:"_validateSortBy",getter:"_getSortBy"},strings:{}},e.mix(l.prototype,{sort:function(t,n){return this.fire("sort",e.merge(n||{},{sortBy:t||this.get("sortBy")}))},SORTABLE_HEADER_TEMPLATE:'
',toggleSort:function(t,n){var r=this._sortBy,i=[],s,o,a,f,l;for(s=0,o=r.length;s=0;--s)if(i[a][f]){i[a][f]*=-1;break}}}else for(s=0,o=i.length;sl?u:f=s&&n.push(r._id)}else n[0][t]=-(r.sortDir||0)||1;this.fire("sort",{originEvent:e,sortBy:n})}},_parseSortable:function(){var e=this.get("sortable"),t=[],n,r,i;if(s(e))for(n=0,r=e.length;n=0;--n)t[n].sortable||t.splice(n,1)}this._sortable=t},_renderSortable:function(){this._uiSetSortable(),this._bindSortUI()},_setSortBy:function(){var e=this._displayColumns,t=this.get("sortBy")||[],n=" "+this.getClassName("sorted"),r,i,s,a,l,c;this._sortBy=[];for(r=0,i=e.length;r
',toggleSort:function(t,n){var r=this._sortBy,i=[],s,o,a,f,l;for(s=0,o=r.length;s=0;--s)if(i[a][f]){i[a][f]*=-1;break}}}else for(s=0,o=i.length;sl?u:f=s&&r.push(n._id)}else r=[{}],r[0][t]=-(n.sortDir||0)||1;this.fire("sort",{originEvent:e,sortBy:r})}},_parseSortable:function(){var e=this.get("sortable"),t=[],n,r,i;if(s(e))for(n=0,r=e.length;n=0;--n)t[n].sortable||t.splice(n,1)}this._sortable=t},_renderSortable:function(){this._uiSetSortable(),this._bindSortUI()},_setSortBy:function(){var e=this._displayColumns,t=this.get("sortBy")||[],n=" "+this.getClassName("sorted"),r,i,s,a,l,c;this._sortBy=[];for(r=0,i=e.length;r',TABLE_TEMPLATE:'',getCell:function(){return this.body&&this.body.getCell&&this.body.getCell.apply(this.body,arguments)},getClassName:function(){var t=this.host,r=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[r].concat(n(arguments,0,!0)))},getRecord:function(){return this.body&&this.body.getRecord&&this.body.getRecord.apply(this.body,arguments)},getRow:function(){return this.body&&this.body.getRow&&this.body.getRow.apply(this.body,arguments)},_afterSummaryChange:function(e){this._uiSetSummary(e.newVal)},_afterCaptionChange:function(e){this._uiSetCaption(e.newVal)},_afterWidthChange:function(e){this._uiSetWidth(e.newVal)},_bindUI:function(){var t;this._eventHandles||(t=e.bind("_relayAttrChange",this),this._eventHandles=this.after({columnsChange:t,modelListChange:t,summaryChange:e.bind("_afterSummaryChange",this),captionChange:e.bind("_afterCaptionChange",this),widthChange:e.bind("_afterWidthChange",this)}))},_createTable:function(){return e.Node.create(i(this.TABLE_TEMPLATE,{className:this.getClassName("table")})).empty()},_defRenderBodyFn:function(e){e.view.render()},_defRenderFooterFn:function(e){e.view.render()},_defRenderHeaderFn:function(e){e.view.render()},_defRenderTableFn:function(t){var n=this.get("container"),r=this.getAttrs();this.tableNode||(this.tableNode=this._createTable()),r.host=this.get("host")||this,r.table=this,r.container=this.tableNode,this._uiSetCaption(this.get("caption")),this._uiSetSummary(this.get("summary")),this._uiSetWidth(this.get("width"));if(this.head||t.headerView)this.head||(this.head=new t.headerView(e.merge(r,t.headerConfig))),this.fire("renderHeader",{view:this.head});if(this.foot||t.footerView)this.foot||(this.foot=new t.footerView(e.merge(r,t.footerConfig))),this.fire("renderFooter",{view:this.foot});r.columns=this.displayColumns;if(this.body||t.bodyView)this.body||(this.body=new t.bodyView(e.merge(r,t.bodyConfig))),this.fire("renderBody",{view:this.body});n.contains(this.tableNode)||n.append(this.tableNode),this._bindUI()},destructor:function(){this.head&&this.head.destroy&&this.head.destroy(),delete this.head,this.foot&&this.foot.destroy&&this.foot.destroy(),delete this.foot,this.body&&this.body.destroy&&this.body.destroy(),delete this.body,this._eventHandles&&(this._eventHandles.detach(),delete this._eventHandles),this.tableNode&&this.tableNode.remove().destroy(!0)},_extractDisplayColumns:function(){function n(e){var r,i,o;for(r=0,i=e.length;r',TABLE_TEMPLATE:'
',getCell:function(){return this.body&&this.body.getCell&&this.body.getCell.apply(this.body,arguments)},getClassName:function(){var t=this.host,r=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[r].concat(n(arguments,0,!0)))},getRecord:function(){return this.body&&this.body.getRecord&&this.body.getRecord.apply(this.body,arguments)},getRow:function(){return this.body&&this.body.getRow&&this.body.getRow.apply(this.body,arguments)},_afterSummaryChange:function(e){this._uiSetSummary(e.newVal)},_afterCaptionChange:function(e){this._uiSetCaption(e.newVal)},_afterWidthChange:function(e){this._uiSetWidth(e.newVal)},_bindUI:function(){var t;this._eventHandles||(t=e.bind("_relayAttrChange",this),this._eventHandles=this.after({columnsChange:t,modelListChange:t,summaryChange:e.bind("_afterSummaryChange",this),captionChange:e.bind("_afterCaptionChange",this),widthChange:e.bind("_afterWidthChange",this)}))},_createTable:function(){return e.Node.create(i(this.TABLE_TEMPLATE,{className:this.getClassName("table")})).empty()},_defRenderBodyFn:function(e){e.view.render()},_defRenderFooterFn:function(e){e.view.render()},_defRenderHeaderFn:function(e){e.view.render()},_defRenderTableFn:function(t){var n=this.get("container"),r=this.getAttrs();this.tableNode||(this.tableNode=this._createTable()),r.host=this.get("host")||this,r.table=this,r.container=this.tableNode,this._uiSetCaption(this.get("caption")),this._uiSetSummary(this.get("summary")),this._uiSetWidth(this.get("width"));if(this.head||t.headerView)this.head||(this.head=new t.headerView(e.merge(r,t.headerConfig))),this.fire("renderHeader",{view:this.head});if(this.foot||t.footerView)this.foot||(this.foot=new t.footerView(e.merge(r,t.footerConfig))),this.fire("renderFooter",{view:this.foot});r.columns=this.displayColumns;if(this.body||t.bodyView)this.body||(this.body=new t.bodyView(e.merge(r,t.bodyConfig))),this.fire("renderBody",{view:this.body});n.contains(this.tableNode)||n.append(this.tableNode),this._bindUI()},destructor:function(){this.head&&this.head.destroy&&this.head.destroy(),delete this.head,this.foot&&this.foot.destroy&&this.foot.destroy(),delete this.foot,this.body&&this.body.destroy&&this.body.destroy(),delete this.body,this._eventHandles&&(this._eventHandles.detach(),delete this._eventHandles),this.tableNode&&this.tableNode.remove().destroy(!0)},_extractDisplayColumns:function(){function n(e){var r,i,o;for(r=0,i=e.length;r1;n/=10)e=t+e;return e.toString()},r={formats:{a:function(e,t){return t.a[e.getDay()]},A:function(e,t){return t.A[e.getDay()]},b:function(e,t){return t.b[e.getMonth()]},B:function(e,t){return t.B[e.getMonth()]},C:function(e){return n(parseInt(e.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(e){return n(parseInt(r.formats.G(e)%100,10),0)},G:function(e){var t=e.getFullYear(),n=parseInt(r.formats.V(e),10),i=parseInt(r.formats.W(e),10);return i>n?t++:i===0&&n>=52&&t--,t},H:["getHours","0"],I:function(e){var t=e.getHours()%12;return n(t===0?12:t,0)},j:function(e){var t=new Date(""+e.getFullYear()+"/1/1 GMT"),r=new Date(""+e.getFullYear()+"/"+(e.getMonth()+1)+"/"+e.getDate()+" GMT"),i=r-t,s=parseInt(i/6e4/60/24,10)+1;return n(s,0,100)},k:["getHours"," "],l:function(e){var t=e.getHours()%12;return n(t===0?12:t," ")},m:function(e){return n(e.getMonth()+1,0)},M:["getMinutes","0"],p:function(e,t){return t.p[e.getHours()>=12?1:0]},P:function(e,t){return t.P[e.getHours()>=12?1:0]},s:function(e,t){return parseInt(e.getTime()/1e3,10)},S:["getSeconds","0"],u:function(e){var t=e.getDay();return t===0?7:t},U:function(e){var t=parseInt(r.formats.j(e),10),i=6-e.getDay(),s=parseInt((t+i)/7,10);return n(s,0)},V:function(e){var t=parseInt(r.formats.W(e),10),i=(new Date(""+e.getFullYear()+"/1/1")).getDay(),s=t+(i>4||i<=1?0:1);return s===53&&(new Date(""+e.getFullYear()+"/12/31")).getDay()<4?s=1:s===0&&(s=r.formats.V(new Date(""+(e.getFullYear()-1)+"/12/31"))),n(s,0)},w:"getDay",W:function(e){var t=parseInt(r.formats.j(e),10),i=7-r.formats.u(e),s=parseInt((t+i)/7,10);return n(s,0,10)},y:function(e){return n(e.getFullYear()%100,0)},Y:"getFullYear",z:function(e){var t=e.getTimezoneOffset(),r=n(parseInt(Math.abs(t/60),10),0),i=n(Math.abs(t%60),0);return(t>0?"-":"+")+r+i},Z:function(e){var t=e.toString().replace(/^.*:\d\d( GMT[+-]\d+)? \(?([A-Za-z ]+)\)?\d*$/,"$2").replace(/[a-z ]/g,"");return t.length>4&&(t=r.formats.z(e)),t},"%":function(e){return"%"}},aggregates:{c:"locale",D:"%m/%d/%y",F:"%Y-%m-%d",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:" ",T:"%H:%M:%S",x:"locale",X:"locale"},format:function(t,i){i=i||{};if(!e.Lang.isDate(t))return e.Lang.isValue(t)?t:"";var s,o,u,a,f;s=i.format||"%Y-%m-%d",o=e.Intl.get("datatype-date-format");var l=function(e,t){if(u&&t==="r")return o[t];var n=r.aggregates[t];return n==="locale"?o[t]:n},c=function(i,s){var u=r.formats[s];switch(e.Lang.type(u)){case"string":return t[u]();case"function":return u.call(t,t,o);case"array":if(e.Lang.type(u[0])==="string")return n(t[u[0]](),u[1]);default:return s}};while(s.match(/%[cDFhnrRtTxX]/))s=s.replace(/%([cDFhnrRtTxX])/g,l);var h=s.replace(/%([aAbBCdegGHIjklmMpPsSuUVwWyYzZ%])/g,c);return l=c=undefined,h}};e.mix(e.namespace("Date"),r),e.namespace("DataType"),e.DataType.Date=e.Date},"3.9.1",{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-format",function(e,t){var n=function(e,t,n){typeof n=="undefined"&&(n=10),t+="";for(;parseInt(e,10)1;n/=10)e=t+e;return e.toString()},r={formats:{a:function(e,t){return t.a[e.getDay()]},A:function(e,t){return t.A[e.getDay()]},b:function(e,t){return t.b[e.getMonth()]},B:function(e,t){return t.B[e.getMonth()]},C:function(e){return n(parseInt(e.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(e){return n(parseInt(r.formats.G(e)%100,10),0)},G:function(e){var t=e.getFullYear(),n=parseInt(r.formats.V(e),10),i=parseInt(r.formats.W(e),10);return i>n?t++:i===0&&n>=52&&t--,t},H:["getHours","0"],I:function(e){var t=e.getHours()%12;return n(t===0?12:t,0)},j:function(e){var t=new Date(""+e.getFullYear()+"/1/1 GMT"),r=new Date(""+e.getFullYear()+"/"+(e.getMonth()+1)+"/"+e.getDate()+" GMT"),i=r-t,s=parseInt(i/6e4/60/24,10)+1;return n(s,0,100)},k:["getHours"," "],l:function(e){var t=e.getHours()%12;return n(t===0?12:t," ")},m:function(e){return n(e.getMonth()+1,0)},M:["getMinutes","0"],p:function(e,t){return t.p[e.getHours()>=12?1:0]},P:function(e,t){return t.P[e.getHours()>=12?1:0]},s:function(e,t){return parseInt(e.getTime()/1e3,10)},S:["getSeconds","0"],u:function(e){var t=e.getDay();return t===0?7:t},U:function(e){var t=parseInt(r.formats.j(e),10),i=6-e.getDay(),s=parseInt((t+i)/7,10);return n(s,0)},V:function(e){var t=parseInt(r.formats.W(e),10),i=(new Date(""+e.getFullYear()+"/1/1")).getDay(),s=t+(i>4||i<=1?0:1);return s===53&&(new Date(""+e.getFullYear()+"/12/31")).getDay()<4?s=1:s===0&&(s=r.formats.V(new Date(""+(e.getFullYear()-1)+"/12/31"))),n(s,0)},w:"getDay",W:function(e){var t=parseInt(r.formats.j(e),10),i=7-r.formats.u(e),s=parseInt((t+i)/7,10);return n(s,0,10)},y:function(e){return n(e.getFullYear()%100,0)},Y:"getFullYear",z:function(e){var t=e.getTimezoneOffset(),r=n(parseInt(Math.abs(t/60),10),0),i=n(Math.abs(t%60),0);return(t>0?"-":"+")+r+i},Z:function(e){var t=e.toString().replace(/^.*:\d\d( GMT[+-]\d+)? \(?([A-Za-z ]+)\)?\d*$/,"$2").replace(/[a-z ]/g,"");return t.length>4&&(t=r.formats.z(e)),t},"%":function(e){return"%"}},aggregates:{c:"locale",D:"%m/%d/%y",F:"%Y-%m-%d",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:" ",T:"%H:%M:%S",x:"locale",X:"locale"},format:function(t,i){i=i||{};if(!e.Lang.isDate(t))return e.Lang.isValue(t)?t:"";var s,o,u,a,f;s=i.format||"%Y-%m-%d",o=e.Intl.get("datatype-date-format");var l=function(e,t){if(u&&t==="r")return o[t];var n=r.aggregates[t];return n==="locale"?o[t]:n},c=function(i,s){var u=r.formats[s];switch(e.Lang.type(u)){case"string":return t[u]();case"function":return u.call(t,t,o);case"array":if(e.Lang.type(u[0])==="string")return n(t[u[0]](),u[1]);default:return s}};while(s.match(/%[cDFhnrRtTxX]/))s=s.replace(/%([cDFhnrRtTxX])/g,l);var h=s.replace(/%([aAbBCdegGHIjklmMpPsSuUVwWyYzZ%])/g,c);return l=c=undefined,h}};e.mix(e.namespace("Date"),r),e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0",{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js b/lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js similarity index 98% rename from lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js rename to lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js index a6db7a4b021..4db62665fd0 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js +++ b/lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-format', function (Y, NAME) { /** @@ -299,7 +305,7 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', { +}, '3.12.0', { "lang": [ "ar", "ar-JO", @@ -345,6 +351,7 @@ Y.DataType.Date = Y.Date; "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js index 1902776b5af..0663f980b35 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format",function(e){e.Intl.add("datatype-date-format","",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%Y-%m-%dT%H:%M:%S%z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format",function(e){e.Intl.add("datatype-date-format","",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%Y-%m-%dT%H:%M:%S%z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js index 6b06f8dbc07..c3c50acf999 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ar-JO",function(e){e.Intl.add("datatype-date-format","ar-JO",{a:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],B:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ar-JO",function(e){e.Intl.add("datatype-date-format","ar-JO",{a:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],B:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js index b1e78b1a80a..2e96cd34664 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ar",function(e){e.Intl.add("datatype-date-format","ar",{a:["\u0623\u062d\u062f","\u0625\u062b\u0646\u064a\u0646","\u062b\u0644\u0627\u062b\u0627\u0621","\u0623\u0631\u0628\u0639\u0627\u0621","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639\u0629","\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],B:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ar",function(e){e.Intl.add("datatype-date-format","ar",{a:["\u0623\u062d\u062f","\u0625\u062b\u0646\u064a\u0646","\u062b\u0644\u0627\u062b\u0627\u0621","\u0623\u0631\u0628\u0639\u0627\u0621","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639\u0629","\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],B:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js index 511fa1ab211..eb130ec8016 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ca-ES",function(e){e.Intl.add("datatype-date-format","ca-ES",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ca-ES",function(e){e.Intl.add("datatype-date-format","ca-ES",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js index 8d00f505dcf..479352a1d37 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ca",function(e){e.Intl.add("datatype-date-format","ca",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ca",function(e){e.Intl.add("datatype-date-format","ca",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js index 9c7272f2066..a69f47a1f62 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_da-DK",function(e){e.Intl.add("datatype-date-format","da-DK",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_da-DK",function(e){e.Intl.add("datatype-date-format","da-DK",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js index eed50fd1075..7b897191d6f 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_da",function(e){e.Intl.add("datatype-date-format","da",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_da",function(e){e.Intl.add("datatype-date-format","da",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js index b2019aa86bf..2fb6de2db2d 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de-AT",function(e){e.Intl.add("datatype-date-format","de-AT",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["J\u00e4n","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["J\u00e4nner","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de-AT",function(e){e.Intl.add("datatype-date-format","de-AT",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["J\u00e4n","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["J\u00e4nner","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js index 12e2699ba4a..e9a5d7877c7 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de-DE",function(e){e.Intl.add("datatype-date-format","de-DE",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de-DE",function(e){e.Intl.add("datatype-date-format","de-DE",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js index d0ed60b3352..7a3d5bd5162 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de",function(e){e.Intl.add("datatype-date-format","de",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de",function(e){e.Intl.add("datatype-date-format","de",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js index e7bf7188a97..17460de1d09 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_el-GR",function(e){e.Intl.add("datatype-date-format","el-GR",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_el-GR",function(e){e.Intl.add("datatype-date-format","el-GR",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js index 8e0e4e9279d..7f9b8aeb027 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_el",function(e){e.Intl.add("datatype-date-format","el",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_el",function(e){e.Intl.add("datatype-date-format","el",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js index c3655a39879..ee72da739e6 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-AU",function(e){e.Intl.add("datatype-date-format","en-AU",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-AU",function(e){e.Intl.add("datatype-date-format","en-AU",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js index 3b661c0e590..2bdc90bc962 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-CA",function(e){e.Intl.add("datatype-date-format","en-CA",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-CA",function(e){e.Intl.add("datatype-date-format","en-CA",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js index c4ed41c07fa..14462d451f5 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-GB",function(e){e.Intl.add("datatype-date-format","en-GB",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-GB",function(e){e.Intl.add("datatype-date-format","en-GB",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js index 8f499725213..bd225e7e42b 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-IE",function(e){e.Intl.add("datatype-date-format","en-IE",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-IE",function(e){e.Intl.add("datatype-date-format","en-IE",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js index 1173c8c2cb2..e50ca142bae 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-IN",function(e){e.Intl.add("datatype-date-format","en-IN",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-IN",function(e){e.Intl.add("datatype-date-format","en-IN",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js index 31f06be5511..506561d67ad 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-JO",function(e){e.Intl.add("datatype-date-format","en-JO",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-JO",function(e){e.Intl.add("datatype-date-format","en-JO",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js index 76d5509691d..27b348e1abc 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-MY",function(e){e.Intl.add("datatype-date-format","en-MY",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-MY",function(e){e.Intl.add("datatype-date-format","en-MY",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js index 52af520c7c0..297b951e3c9 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-NZ",function(e){e.Intl.add("datatype-date-format","en-NZ",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-NZ",function(e){e.Intl.add("datatype-date-format","en-NZ",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js index 18d2f6920f8..c4c8a9275ba 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-PH",function(e){e.Intl.add("datatype-date-format","en-PH",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-PH",function(e){e.Intl.add("datatype-date-format","en-PH",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js index f9de068759f..4ae796b371e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-SG",function(e){e.Intl.add("datatype-date-format","en-SG",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-SG",function(e){e.Intl.add("datatype-date-format","en-SG",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js index 47518a3d677..fd81da850b2 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-US",function(e){e.Intl.add("datatype-date-format","en-US",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-US",function(e){e.Intl.add("datatype-date-format","en-US",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js index 1ca26bc4e52..5539af6da58 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en",function(e){e.Intl.add("datatype-date-format","en",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en",function(e){e.Intl.add("datatype-date-format","en",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js index 6fc7e4dbf48..2539420f100 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-AR",function(e){e.Intl.add("datatype-date-format","es-AR",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %Hh'%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%Hh'%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-AR",function(e){e.Intl.add("datatype-date-format","es-AR",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %Hh'%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%Hh'%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js index 07d503b1782..48d9ad96820 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-BO",function(e){e.Intl.add("datatype-date-format","es-BO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-BO",function(e){e.Intl.add("datatype-date-format","es-BO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js index 4f5cfd01c2c..4022396b8eb 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-CL",function(e){e.Intl.add("datatype-date-format","es-CL",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-CL",function(e){e.Intl.add("datatype-date-format","es-CL",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js index bcf1b0d70b8..27f77ec2ec9 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-CO",function(e){e.Intl.add("datatype-date-format","es-CO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-CO",function(e){e.Intl.add("datatype-date-format","es-CO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js index f12eb38cdca..4bebfa79387 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-EC",function(e){e.Intl.add("datatype-date-format","es-EC",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-EC",function(e){e.Intl.add("datatype-date-format","es-EC",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js index 4dcd08b4d0c..6e5abc73301 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-ES",function(e){e.Intl.add("datatype-date-format","es-ES",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-ES",function(e){e.Intl.add("datatype-date-format","es-ES",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js index aa074e0b417..7afd3a2ec78 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-MX",function(e){e.Intl.add("datatype-date-format","es-MX",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-MX",function(e){e.Intl.add("datatype-date-format","es-MX",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js index 7c66788bb7c..c76276c78cb 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-PE",function(e){e.Intl.add("datatype-date-format","es-PE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %HH%M'%S\" %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%HH%M'%S\""})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-PE",function(e){e.Intl.add("datatype-date-format","es-PE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %HH%M'%S\" %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%HH%M'%S\""})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js index 39b01ec3e21..7219374310d 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-PY",function(e){e.Intl.add("datatype-date-format","es-PY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-PY",function(e){e.Intl.add("datatype-date-format","es-PY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js index 9723cb09139..7b8014d453f 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-US",function(e){e.Intl.add("datatype-date-format","es-US",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-US",function(e){e.Intl.add("datatype-date-format","es-US",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js index 0c44bd018aa..71094351db2 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-UY",function(e){e.Intl.add("datatype-date-format","es-UY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-UY",function(e){e.Intl.add("datatype-date-format","es-UY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js index 0d6531324df..730725e01b1 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-VE",function(e){e.Intl.add("datatype-date-format","es-VE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-VE",function(e){e.Intl.add("datatype-date-format","es-VE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js index a5a564bd411..bb7cdc14095 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es",function(e){e.Intl.add("datatype-date-format","es",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es",function(e){e.Intl.add("datatype-date-format","es",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js index a0f16b4ec00..9574ecaae20 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fi-FI",function(e){e.Intl.add("datatype-date-format","fi-FI",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fi-FI",function(e){e.Intl.add("datatype-date-format","fi-FI",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js similarity index 79% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js index 6d81986dcae..259b8cf39b4 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fi",function(e){e.Intl.add("datatype-date-format","fi",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fi",function(e){e.Intl.add("datatype-date-format","fi",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js index efc673e8be6..e6d2a11b685 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-BE",function(e){e.Intl.add("datatype-date-format","fr-BE",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %k h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%k h %M min %S s"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-BE",function(e){e.Intl.add("datatype-date-format","fr-BE",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %k h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%k h %M min %S s"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js index ac8fd5febe1..ea9d35ba005 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-CA",function(e){e.Intl.add("datatype-date-format","fr-CA",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%H h %M min %S s"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-CA",function(e){e.Intl.add("datatype-date-format","fr-CA",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%H h %M min %S s"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js index 13d67845694..dbf1cd72717 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-FR",function(e){e.Intl.add("datatype-date-format","fr-FR",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-FR",function(e){e.Intl.add("datatype-date-format","fr-FR",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js index 6598f7361b8..96c523869f8 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr",function(e){e.Intl.add("datatype-date-format","fr",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr",function(e){e.Intl.add("datatype-date-format","fr",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js similarity index 88% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js index 54d92e7e7ce..ab6b6bf430d 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_hi-IN",function(e){e.Intl.add("datatype-date-format","hi-IN",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hi-IN",function(e){e.Intl.add("datatype-date-format","hi-IN",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js index 406880f70bf..e974ca9cc02 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_hi",function(e){e.Intl.add("datatype-date-format","hi",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hi",function(e){e.Intl.add("datatype-date-format","hi",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js new file mode 100644 index 00000000000..8584f381c23 --- /dev/null +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hu",function(e){e.Intl.add("datatype-date-format","hu",{a:["Vas","H\u00e9","Ke","Sze","Cs\u00fc","P\u00e9","Szo"],A:["Vas\u00e1rnap","H\u00e9tf\u0151","Kedd","Szerda","Cs\u00fct\u00f6rt\u00f6k","P\u00e9ntek","Szombat"],b:["Jan","Feb","M\u00e1rc","\u00c1pr","M\u00e1j","J\u00fan","J\u00fal","Aug","Szep","Okt","Nov","Dec"],B:["Janu\u00e1r","Febru\u00e1r","M\u00e1rcius","\u00e1prilis","M\u00e1jus","J\u00fanius","J\u00falius","Augusztus","Szeptember","Okt\u00f3ber","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["DE","DU"],P:["de.","du."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js index 0cdbb8d3af9..db589bd914d 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_id-ID",function(e){e.Intl.add("datatype-date-format","id-ID",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_id-ID",function(e){e.Intl.add("datatype-date-format","id-ID",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js index 61ce15bb952..bf571782fc2 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_id",function(e){e.Intl.add("datatype-date-format","id",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_id",function(e){e.Intl.add("datatype-date-format","id",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js index 161b8b9b5c9..065476ca481 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_it-IT",function(e){e.Intl.add("datatype-date-format","it-IT",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_it-IT",function(e){e.Intl.add("datatype-date-format","it-IT",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js index f84a03cdc4c..ba3ccebd476 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_it",function(e){e.Intl.add("datatype-date-format","it",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_it",function(e){e.Intl.add("datatype-date-format","it",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js index 890b7d9a983..4815d42532d 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ja-JP",function(e){e.Intl.add("datatype-date-format","ja-JP",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ja-JP",function(e){e.Intl.add("datatype-date-format","ja-JP",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js index edb8a8a67c1..4342ee13cb9 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ja",function(e){e.Intl.add("datatype-date-format","ja",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ja",function(e){e.Intl.add("datatype-date-format","ja",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js index adb080fd8d2..fc5263758ea 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ko-KR",function(e){e.Intl.add("datatype-date-format","ko-KR",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ko-KR",function(e){e.Intl.add("datatype-date-format","ko-KR",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js index 623d786aa98..3915b2bbe96 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ko",function(e){e.Intl.add("datatype-date-format","ko",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ko",function(e){e.Intl.add("datatype-date-format","ko",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js index 2514230b1ba..493323e4ead 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ms-MY",function(e){e.Intl.add("datatype-date-format","ms-MY",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ms-MY",function(e){e.Intl.add("datatype-date-format","ms-MY",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js similarity index 71% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js index 8b0a47eaf6a..73242925ef9 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ms",function(e){e.Intl.add("datatype-date-format","ms",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ms",function(e){e.Intl.add("datatype-date-format","ms",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js index 196fa2aa545..dfb1e0a3b7e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nb-NO",function(e){e.Intl.add("datatype-date-format","nb-NO",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nb-NO",function(e){e.Intl.add("datatype-date-format","nb-NO",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js index 94f6ce662c6..e1c5dad06a8 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nb",function(e){e.Intl.add("datatype-date-format","nb",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nb",function(e){e.Intl.add("datatype-date-format","nb",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js index b31674f5871..95f353d8443 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl-BE",function(e){e.Intl.add("datatype-date-format","nl-BE",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl-BE",function(e){e.Intl.add("datatype-date-format","nl-BE",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js index 29989434c8c..434fecf96c7 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl-NL",function(e){e.Intl.add("datatype-date-format","nl-NL",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl-NL",function(e){e.Intl.add("datatype-date-format","nl-NL",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js index 1a4c43fd2bc..addd7ee2ee4 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl",function(e){e.Intl.add("datatype-date-format","nl",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl",function(e){e.Intl.add("datatype-date-format","nl",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js index 27975822dce..3745b3133ed 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pl-PL",function(e){e.Intl.add("datatype-date-format","pl-PL",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pl-PL",function(e){e.Intl.add("datatype-date-format","pl-PL",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js index 2451a1eeedc..a22b1c9a90f 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pl",function(e){e.Intl.add("datatype-date-format","pl",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pl",function(e){e.Intl.add("datatype-date-format","pl",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js index 46ccb7f7f21..626531df4a5 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pt-BR",function(e){e.Intl.add("datatype-date-format","pt-BR",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pt-BR",function(e){e.Intl.add("datatype-date-format","pt-BR",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js index acdd0b177f1..189ec970db2 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pt",function(e){e.Intl.add("datatype-date-format","pt",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pt",function(e){e.Intl.add("datatype-date-format","pt",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js index 4d21e084692..8ee07872e1b 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ro-RO",function(e){e.Intl.add("datatype-date-format","ro-RO",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ro-RO",function(e){e.Intl.add("datatype-date-format","ro-RO",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js index 84e4f2051ea..ef2989455c7 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ro",function(e){e.Intl.add("datatype-date-format","ro",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ro",function(e){e.Intl.add("datatype-date-format","ro",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js index 475e6a10421..b2b089ae5a6 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ru-RU",function(e){e.Intl.add("datatype-date-format","ru-RU",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ru-RU",function(e){e.Intl.add("datatype-date-format","ru-RU",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js index cd2623e5363..edfdf050130 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ru",function(e){e.Intl.add("datatype-date-format","ru",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ru",function(e){e.Intl.add("datatype-date-format","ru",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js index 3b5bb24c248..c80a424fa96 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_sv-SE",function(e){e.Intl.add("datatype-date-format","sv-SE",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_sv-SE",function(e){e.Intl.add("datatype-date-format","sv-SE",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js index 412fd269e64..14710d064a6 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_sv",function(e){e.Intl.add("datatype-date-format","sv",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_sv",function(e){e.Intl.add("datatype-date-format","sv",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js index 273a73c9da8..a74cf4c81ab 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_th-TH",function(e){e.Intl.add("datatype-date-format","th-TH",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_th-TH",function(e){e.Intl.add("datatype-date-format","th-TH",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js index 5edf49596f5..cab00b97c20 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_th",function(e){e.Intl.add("datatype-date-format","th",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_th",function(e){e.Intl.add("datatype-date-format","th",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js index 64d08900aff..9c1c3ff25d8 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_tr-TR",function(e){e.Intl.add("datatype-date-format","tr-TR",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_tr-TR",function(e){e.Intl.add("datatype-date-format","tr-TR",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js index 4d4a73ca6f0..4427d01054e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_tr",function(e){e.Intl.add("datatype-date-format","tr",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_tr",function(e){e.Intl.add("datatype-date-format","tr",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js index 4f8713e3c71..9081e8ae90e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_vi-VN",function(e){e.Intl.add("datatype-date-format","vi-VN",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_vi-VN",function(e){e.Intl.add("datatype-date-format","vi-VN",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js index 5feefe062fd..2c2e7acbf88 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_vi",function(e){e.Intl.add("datatype-date-format","vi",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_vi",function(e){e.Intl.add("datatype-date-format","vi",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js index 7e8fdafdc13..aea340b790e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hans-CN",function(e){e.Intl.add("datatype-date-format","zh-Hans-CN",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hans-CN",function(e){e.Intl.add("datatype-date-format","zh-Hans-CN",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js index 245b525cefa..20752f5e3b3 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hans",function(e){e.Intl.add("datatype-date-format","zh-Hans",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hans",function(e){e.Intl.add("datatype-date-format","zh-Hans",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js similarity index 79% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js index 9cfa1378c1a..f649d74003e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant-HK",function(e){e.Intl.add("datatype-date-format","zh-Hant-HK",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y\u5e74%m\u6708%d\u65e5",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant-HK",function(e){e.Intl.add("datatype-date-format","zh-Hant-HK",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y\u5e74%m\u6708%d\u65e5",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js index b486d774e47..6055bac6bb7 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant-TW",function(e){e.Intl.add("datatype-date-format","zh-Hant-TW",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant-TW",function(e){e.Intl.add("datatype-date-format","zh-Hant-TW",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js index aba64dec686..8cfcb51837e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant",function(e){e.Intl.add("datatype-date-format","zh-Hant",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant",function(e){e.Intl.add("datatype-date-format","zh-Hant",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js index a9f53f441a7..3fbd78d60ef 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-math', function (Y, NAME) { /** @@ -206,4 +212,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js similarity index 87% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js index b270d954103..35ba422a998 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-date-math",function(e,t){var n=e.Lang;e.mix(e.namespace("Date"),{isValidDate:function(e){return n.isDate(e)&&isFinite(e)&&e!="Invalid Date"&&!isNaN(e)&&e!=null?!0:!1},areEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()==t.getTime()},isGreater:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>t.getTime()},isGreaterOrEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>=t.getTime()},isInRange:function(e,t,n){return this.isGreaterOrEqual(e,t)&&this.isGreaterOrEqual(n,e)},addDays:function(e,t){return new Date(e.getTime()+864e5*t)},addMonths:function(e,t){var n=e.getFullYear(),r=e.getMonth()+t;n=Math.floor(n+r/12),r=(r%12+12)%12;var i=new Date(e.getTime());return i.setFullYear(n),i.setMonth(r),i},addYears:function(e,t){var n=e.getFullYear()+t,r=new Date(e.getTime());return r.setFullYear(n),r},listOfDatesInMonth:function(e){if(!this.isValidDate(e))return[];var t=this.daysInMonth(e),n=e.getFullYear(),r=e.getMonth(),i=[];for(var s=1;s<=t;s++)i.push(new Date(n,r,s,12,0,0));return i},daysInMonth:function(e){if(!this.isValidDate(e))return 0;var t=e.getMonth(),n=[31,28,31,30,31,30,31,31,30,31,30,31];if(t!=1)return n[t];var r=e.getFullYear();return r%400===0?29:r%100===0?28:r%4===0?29:28}}),e.namespace("DataType"),e.DataType.Date=e.Date},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-math",function(e,t){var n=e.Lang;e.mix(e.namespace("Date"),{isValidDate:function(e){return n.isDate(e)&&isFinite(e)&&e!="Invalid Date"&&!isNaN(e)&&e!=null?!0:!1},areEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()==t.getTime()},isGreater:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>t.getTime()},isGreaterOrEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>=t.getTime()},isInRange:function(e,t,n){return this.isGreaterOrEqual(e,t)&&this.isGreaterOrEqual(n,e)},addDays:function(e,t){return new Date(e.getTime()+864e5*t)},addMonths:function(e,t){var n=e.getFullYear(),r=e.getMonth()+t;n=Math.floor(n+r/12),r=(r%12+12)%12;var i=new Date(e.getTime());return i.setFullYear(n),i.setMonth(r),i},addYears:function(e,t){var n=e.getFullYear()+t,r=new Date(e.getTime());return r.setFullYear(n),r},listOfDatesInMonth:function(e){if(!this.isValidDate(e))return[];var t=this.daysInMonth(e),n=e.getFullYear(),r=e.getMonth(),i=[];for(var s=1;s<=t;s++)i.push(new Date(n,r,s,12,0,0));return i},daysInMonth:function(e){if(!this.isValidDate(e))return 0;var t=e.getMonth(),n=[31,28,31,30,31,30,31,31,30,31,30,31];if(t!=1)return n[t];var r=e.getFullYear();return r%400===0?29:r%100===0?28:r%4===0?29:28}}),e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js similarity index 96% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js index abf25e167b0..c560a56880e 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-math', function (Y, NAME) { /** @@ -205,4 +211,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js similarity index 84% rename from lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js rename to lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js index 97949c00a9d..1d800eb21d4 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-parse', function (Y, NAME) { /** @@ -34,4 +40,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js new file mode 100644 index 00000000000..f1e0af56dc6 --- /dev/null +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-parse",function(e,t){e.mix(e.namespace("Date"),{parse:function(t){var n=new Date(+t||t);return e.Lang.isDate(n)?n:null}}),e.namespace("Parsers").date=e.Date.parse,e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js similarity index 82% rename from lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js rename to lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js index f892b739187..8eaf84d8b4c 100644 --- a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-parse', function (Y, NAME) { /** @@ -33,4 +39,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js similarity index 95% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js index 0c68a16e841..0b64c315474 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-format', function (Y, NAME) { /** @@ -107,4 +113,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js index 2e7e67ab9f6..599d4166697 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-number-format",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{format:function(e,t){if(n.isNumber(e)){t=t||{};var r=e<0,i=e+"",s=t.decimalPlaces,o=t.decimalSeparator||".",u=t.thousandsSeparator,a,f,l,c;n.isNumber(s)&&s>=0&&s<=20&&(i=e.toFixed(s)),o!=="."&&(i=i.replace(".",o));if(u){a=i.lastIndexOf(o),a=a>-1?a:i.length,f=i.substring(a);for(l=0,c=a;c>0;c--)l%3===0&&c!==a&&(!r||c>1)&&(f=u+f),f=i.charAt(c-1)+f,l++;i=f}return i=t.prefix?t.prefix+i:i,i=t.suffix?i+t.suffix:i,i}return n.isValue(e)&&e.toString?e.toString():""}}),e.namespace("DataType"),e.DataType.Number=e.Number},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-number-format",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{format:function(e,t){if(n.isNumber(e)){t=t||{};var r=e<0,i=e+"",s=t.decimalPlaces,o=t.decimalSeparator||".",u=t.thousandsSeparator,a,f,l,c;n.isNumber(s)&&s>=0&&s<=20&&(i=e.toFixed(s)),o!=="."&&(i=i.replace(".",o));if(u){a=i.lastIndexOf(o),a=a>-1?a:i.length,f=i.substring(a);for(l=0,c=a;c>0;c--)l%3===0&&c!==a&&(!r||c>1)&&(f=u+f),f=i.charAt(c-1)+f,l++;i=f}return i=t.prefix?t.prefix+i:i,i=t.suffix?i+t.suffix:i,i}return n.isValue(e)&&e.toString?e.toString():""}}),e.namespace("DataType"),e.DataType.Number=e.Number},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js similarity index 95% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js index 0624a5b0bad..700a8f1c95d 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-format', function (Y, NAME) { /** @@ -106,4 +112,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js similarity index 85% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js index ed21f4e40bf..47606a6c5a4 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-parse', function (Y, NAME) { /** @@ -38,4 +44,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js similarity index 61% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js index c1a729fd06f..58a7aeb9c68 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-number-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{parse:function(e){var t=e===null||e===""?e:+e;return n.isNumber(t)?t:null}}),e.namespace("Parsers").number=e.Number.parse,e.namespace("DataType"),e.DataType.Number=e.Number},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-number-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{parse:function(e){var t=e===null||e===""?e:+e;return n.isNumber(t)?t:null}}),e.namespace("Parsers").number=e.Number.parse,e.namespace("DataType"),e.DataType.Number=e.Number},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js similarity index 84% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js index 27f3ae175ec..4c75df784f5 100644 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-parse', function (Y, NAME) { /** @@ -37,4 +43,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js similarity index 88% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js index 15dd893144a..ebab04fe5bb 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-format', function (Y, NAME) { /** @@ -51,4 +57,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js similarity index 62% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js index 7e6843d094d..966dcb7b856 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-xml-format",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{format:function(e){try{if(!n.isUndefined(e.getXml))return e.getXml();if(!n.isUndefined(XMLSerializer))return(new XMLSerializer).serializeToString(e)}catch(t){return e&&e.xml?e.xml:n.isValue(e)&&e.toString?e.toString():""}}}),e.namespace("DataType"),e.DataType.XML=e.XML},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-xml-format",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{format:function(e){try{if(!n.isUndefined(e.getXml))return e.getXml();if(!n.isUndefined(XMLSerializer))return(new XMLSerializer).serializeToString(e)}catch(t){return e&&e.xml?e.xml:n.isValue(e)&&e.toString?e.toString():""}}}),e.namespace("DataType"),e.DataType.XML=e.XML},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js similarity index 87% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js index 95771e172d4..3a803ba219c 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-format', function (Y, NAME) { /** @@ -50,4 +56,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js index 5d7a750bd22..3e407c778d5 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-parse', function (Y, NAME) { /** @@ -60,4 +66,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js index 835d50b9a7b..c61f114f7c8 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-xml-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{parse:function(e){var t=null;if(n.isString(e))try{n.isUndefined(ActiveXObject)||(t=new ActiveXObject("Microsoft.XMLDOM"),t.async=!1,t.loadXML(e))}catch(r){try{n.isUndefined(DOMParser)||(t=(new DOMParser).parseFromString(e,"text/xml")),n.isUndefined(Windows.Data.Xml.Dom)||(t=new Windows.Data.Xml.Dom.XmlDocument,t.loadXml(e))}catch(i){}}return n.isNull(t)||n.isNull(t.documentElement)||t.documentElement.nodeName==="parsererror",t}}),e.namespace("Parsers").xml=e.XML.parse,e.namespace("DataType"),e.DataType.XML=e.XML},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-xml-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{parse:function(e){var t=null;if(n.isString(e))try{n.isUndefined(ActiveXObject)||(t=new ActiveXObject("Microsoft.XMLDOM"),t.async=!1,t.loadXML(e))}catch(r){try{n.isUndefined(DOMParser)||(t=(new DOMParser).parseFromString(e,"text/xml")),n.isUndefined(Windows.Data.Xml.Dom)||(t=new Windows.Data.Xml.Dom.XmlDocument,t.loadXml(e))}catch(i){}}return n.isNull(t)||n.isNull(t.documentElement)||t.documentElement.nodeName==="parsererror",t}}),e.namespace("Parsers").xml=e.XML.parse,e.namespace("DataType"),e.DataType.XML=e.XML},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js index d1a5b480f01..b0fcb853e8a 100644 --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-parse', function (Y, NAME) { /** @@ -58,4 +64,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js index bb5c7cc637e..1ce2dc9b745 100644 --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-constrain', function (Y, NAME) { @@ -560,4 +566,4 @@ YUI.add('dd-constrain', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js similarity index 95% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js index f18a05a62ef..c50d0ca310e 100644 --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-constrain",function(e,t){var n="dragNode",r="offsetHeight",i="offsetWidth",s="host",o="tickXArray",u="tickYArray",a=e.DD.DDM,f="top",l="right",c="bottom",h="left",p="view",d=null,v="drag:tickAlignX",m="drag:tickAlignY",g=function(){this._lazyAddAttrs=!1,g.superclass.constructor.apply(this,arguments)};g.NAME="ddConstrained",g.NS="con",g.ATTRS={host:{},stickX:{value:!1},stickY:{value:!1},tickX:{value:!1},tickY:{value:!1},tickXArray:{value:!1},tickYArray:{value:!1},gutter:{value:"0",setter:function(t){return e.DD.DDM.cssSizestoObject(t)}},constrain:{value:p,setter:function(t){var n=e.one(t);return n&&(t=n),t}},constrain2region:{setter:function(e){return this.set("constrain",e)}},constrain2node:{setter:function(t){return this.set("constrain",e.one(t))}},constrain2view:{setter:function(){return this.set("constrain",p)}},cacheRegion:{value:!0}},d={_lastTickXFired:null,_lastTickYFired:null,initializer:function(){this._createEvents(),this._eventHandles=[this.get(s).on("drag:end",e.bind(this._handleEnd,this)),this.get(s).on("drag:start",e.bind(this._handleStart,this)),this.get(s).after("drag:align",e.bind(this.align,this)),this.get(s).after("drag:drag",e.bind(this.drag,this))]},destructor:function(){e.Array.each(this._eventHandles,function(e){e.detach()}),this._eventHandles.length=0},_createEvents:function(){var t=[v,m];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,queuable:!1,prefix:"drag"})},this)},_handleEnd:function(){this._lastTickYFired=null,this._lastTickXFired=null},_handleStart:function(){this.resetCache()},_regionCache:null,_cacheRegion:function(){this._regionCache=this.get("constrain").get("region")},resetCache:function(){this._regionCache=null},_getConstraint:function(){var t=this.get("constrain"),r=this.get("gutter"),i;t&&(t instanceof e.Node?(this._regionCache||(this._eventHandles.push(e.on("resize",e.bind(this._cacheRegion,this),e.config.win)),this._cacheRegion()),i=e.clone(this._regionCache),this.get("cacheRegion")||this.resetCache()):e.Lang.isObject(t)&&(i=e.clone(t)));if(!t||!i)t=p;return t===p&&(i=this.get(s).get(n).get("viewportRegion")),e.Object.each(r,function(e,t){t===l||t===c?i[t]-=e:i[t]+=e}),i},getRegion:function(e){var t={},o=null,u=null,a=this.get(s);return t=this._getConstraint(),e&&(o=a.get(n).get(r),u=a.get(n).get(i),t[l]=t[l]-u,t[c]=t[c]-o),t},_checkRegion:function(e){var t=e,o=this.getRegion(),u=this.get(s),a=u.get(n).get(r),p=u.get(n).get(i);return t[1]>o[c]-a&&(e[1]=o[c]-a),o[f]>t[1]&&(e[1]=o[f]),t[0]>o[l]-p&&(e[0]=o[l]-p),o[h]>t[0]&&(e[0]=o[h]),e},inRegion:function(e){e=e||this.get(s).get(n).getXY();var t=this._checkRegion([e[0],e[1]]),r=!1;return e[0]===t[0]&&e[1]===t[1]&&(r=!0),r},align:function(){var e=this.get(s),t=[e.actXY[0],e.actXY[1]],n=this.getRegion(!0);this.get("stickX")&&(t[1]=e.startXY[1]-e.deltaXY[1]),this.get("stickY")&&(t[0]=e.startXY[0]-e.deltaXY[0]),n&&(t=this._checkRegion(t)),t=this._checkTicks(t,n),e.actXY=t},drag:function(){var t=this.get(s),n=this.get("tickX"),r=this.get("tickY"),i=[t.actXY[0],t.actXY[1]];(e.Lang.isNumber(n)||this.get(o))&&this._lastTickXFired!==i[0]&&(this._tickAlignX(),this._lastTickXFired=i[0]),(e.Lang.isNumber(r)||this.get(u))&&this._lastTickYFired!==i[1]&&(this._tickAlignY(),this._lastTickYFired=i[1])},_checkTicks:function(e,t){var n=this.get(s),r=n.startXY[0]-n.deltaXY[0],i=n.startXY[1]-n.deltaXY[1],p=this.get("tickX"),d=this.get("tickY");return p&&!this.get(o)&&(e[0]=a._calcTicks(e[0],r,p,t[h],t[l])),d&&!this.get(u)&&(e[1]=a._calcTicks(e[1],i,d,t[f],t[c])),this.get(o)&&(e[0]=a._calcTickArray(e[0],this.get(o),t[h],t[l])),this.get(u)&&(e[1]=a._calcTickArray(e[1],this.get(u),t[f],t[c])),e},_tickAlignX:function(){this.fire(v)},_tickAlignY:function(){this.fire(m)}},e.namespace("Plugin"),e.extend(g,e.Base,d),e.Plugin.DDConstrained=g,e.mix(a,{_calcTicks:function(e,t,n,r,i){var s=(e-t)/n,o=Math.floor(s),u=Math.ceil(s);return(o!==0||u!==0)&&s>=o&&s<=u&&(e=t+n*o,r&&i&&(ei&&(e=t+n*(o-1)))),e},_calcTickArray:function(e,t,n,r){var i=0,s=t.length,o=0,u,a,f;if(!t||t.length===0)return e;if(t[0]>=e)return t[0];for(i=0;i=e)return u=e-t[i],a=t[o]-e,f=a>u?t[i]:t[o],n&&r&&f>r&&(t[i]?f=t[i]:f=t[s-1]),f}return t[t.length-1]}})},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-constrain",function(e,t){var n="dragNode",r="offsetHeight",i="offsetWidth",s="host",o="tickXArray",u="tickYArray",a=e.DD.DDM,f="top",l="right",c="bottom",h="left",p="view",d=null,v="drag:tickAlignX",m="drag:tickAlignY",g=function(){this._lazyAddAttrs=!1,g.superclass.constructor.apply(this,arguments)};g.NAME="ddConstrained",g.NS="con",g.ATTRS={host:{},stickX:{value:!1},stickY:{value:!1},tickX:{value:!1},tickY:{value:!1},tickXArray:{value:!1},tickYArray:{value:!1},gutter:{value:"0",setter:function(t){return e.DD.DDM.cssSizestoObject(t)}},constrain:{value:p,setter:function(t){var n=e.one(t);return n&&(t=n),t}},constrain2region:{setter:function(e){return this.set("constrain",e)}},constrain2node:{setter:function(t){return this.set("constrain",e.one(t))}},constrain2view:{setter:function(){return this.set("constrain",p)}},cacheRegion:{value:!0}},d={_lastTickXFired:null,_lastTickYFired:null,initializer:function(){this._createEvents(),this._eventHandles=[this.get(s).on("drag:end",e.bind(this._handleEnd,this)),this.get(s).on("drag:start",e.bind(this._handleStart,this)),this.get(s).after("drag:align",e.bind(this.align,this)),this.get(s).after("drag:drag",e.bind(this.drag,this))]},destructor:function(){e.Array.each(this._eventHandles,function(e){e.detach()}),this._eventHandles.length=0},_createEvents:function(){var t=[v,m];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,queuable:!1,prefix:"drag"})},this)},_handleEnd:function(){this._lastTickYFired=null,this._lastTickXFired=null},_handleStart:function(){this.resetCache()},_regionCache:null,_cacheRegion:function(){this._regionCache=this.get("constrain").get("region")},resetCache:function(){this._regionCache=null},_getConstraint:function(){var t=this.get("constrain"),r=this.get("gutter"),i;t&&(t instanceof e.Node?(this._regionCache||(this._eventHandles.push(e.on("resize",e.bind(this._cacheRegion,this),e.config.win)),this._cacheRegion()),i=e.clone(this._regionCache),this.get("cacheRegion")||this.resetCache()):e.Lang.isObject(t)&&(i=e.clone(t)));if(!t||!i)t=p;return t===p&&(i=this.get(s).get(n).get("viewportRegion")),e.Object.each(r,function(e,t){t===l||t===c?i[t]-=e:i[t]+=e}),i},getRegion:function(e){var t={},o=null,u=null,a=this.get(s);return t=this._getConstraint(),e&&(o=a.get(n).get(r),u=a.get(n).get(i),t[l]=t[l]-u,t[c]=t[c]-o),t},_checkRegion:function(e){var t=e,o=this.getRegion(),u=this.get(s),a=u.get(n).get(r),p=u.get(n).get(i);return t[1]>o[c]-a&&(e[1]=o[c]-a),o[f]>t[1]&&(e[1]=o[f]),t[0]>o[l]-p&&(e[0]=o[l]-p),o[h]>t[0]&&(e[0]=o[h]),e},inRegion:function(e){e=e||this.get(s).get(n).getXY();var t=this._checkRegion([e[0],e[1]]),r=!1;return e[0]===t[0]&&e[1]===t[1]&&(r=!0),r},align:function(){var e=this.get(s),t=[e.actXY[0],e.actXY[1]],n=this.getRegion(!0);this.get("stickX")&&(t[1]=e.startXY[1]-e.deltaXY[1]),this.get("stickY")&&(t[0]=e.startXY[0]-e.deltaXY[0]),n&&(t=this._checkRegion(t)),t=this._checkTicks(t,n),e.actXY=t},drag:function(){var t=this.get(s),n=this.get("tickX"),r=this.get("tickY"),i=[t.actXY[0],t.actXY[1]];(e.Lang.isNumber(n)||this.get(o))&&this._lastTickXFired!==i[0]&&(this._tickAlignX(),this._lastTickXFired=i[0]),(e.Lang.isNumber(r)||this.get(u))&&this._lastTickYFired!==i[1]&&(this._tickAlignY(),this._lastTickYFired=i[1])},_checkTicks:function(e,t){var n=this.get(s),r=n.startXY[0]-n.deltaXY[0],i=n.startXY[1]-n.deltaXY[1],p=this.get("tickX"),d=this.get("tickY");return p&&!this.get(o)&&(e[0]=a._calcTicks(e[0],r,p,t[h],t[l])),d&&!this.get(u)&&(e[1]=a._calcTicks(e[1],i,d,t[f],t[c])),this.get(o)&&(e[0]=a._calcTickArray(e[0],this.get(o),t[h],t[l])),this.get(u)&&(e[1]=a._calcTickArray(e[1],this.get(u),t[f],t[c])),e},_tickAlignX:function(){this.fire(v)},_tickAlignY:function(){this.fire(m)}},e.namespace("Plugin"),e.extend(g,e.Base,d),e.Plugin.DDConstrained=g,e.mix(a,{_calcTicks:function(e,t,n,r,i){var s=(e-t)/n,o=Math.floor(s),u=Math.ceil(s);return(o!==0||u!==0)&&s>=o&&s<=u&&(e=t+n*o,r&&i&&(ei&&(e=t+n*(o-1)))),e},_calcTickArray:function(e,t,n,r){var i=0,s=t.length,o=0,u,a,f;if(!t||t.length===0)return e;if(t[0]>=e)return t[0];for(i=0;i=e)return u=e-t[i],a=t[o]-e,f=a>u?t[i]:t[o],n&&r&&f>r&&(t[i]?f=t[i]:f=t[s-1]),f}return t[t.length-1]}})},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain.js index bb5c7cc637e..1ce2dc9b745 100644 --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-constrain', function (Y, NAME) { @@ -560,4 +566,4 @@ YUI.add('dd-constrain', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js index 44309c1aad6..b07cea9c184 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js @@ -1,14 +1,20 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-base', function (Y, NAME) { /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @module dd * @submodule dd-ddm-base */ /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @class DDM * @extends Base * @constructor @@ -373,4 +379,4 @@ YUI.add('dd-ddm-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js similarity index 90% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js index 560c7a5f4f1..15ed556a458 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};n.NAME="ddm",n.ATTRS={dragCursor:{value:"move"},clickPixelThresh:{value:3},clickTimeThresh:{value:1e3},throttleTime:{value:-1},dragMode:{value:"point",setter:function(e){return this._setDragMode(e),e}}},e.extend(n,e.Base,{_createPG:function(){},_active:null,_setDragMode:function(t){t===null&&(t=e.DD.DDM.get("dragMode"));switch(t){case 1:case"intersect":return 1;case 2:case"strict":return 2;case 0:case"point":return 0}return 0},CSS_PREFIX:e.ClassNameManager.getClassName("dd"),_activateTargets:function(){},_drags:[],activeDrag:!1,_regDrag:function(e){return this.getDrag(e.get("node"))?!1:(this._active||this._setupListeners(),this._drags.push(e),!0)},_unregDrag:function(t){var n=[];e.Array.each(this._drags,function(e){e!==t&&(n[n.length]=e)}),this._drags=n},_setupListeners:function(){this._createPG(),this._active=!0;var t=e.one(e.config.doc);t.on("mousemove",e.throttle(e.bind(this._docMove,this),this.get("throttleTime"))),t.on("mouseup",e.bind(this._end,this))},_start:function(){this.fire("ddm:start"),this._startDrag()},_startDrag:function(){},_endDrag:function(){},_dropMove:function(){},_end:function(){this.activeDrag&&(this._shimming=!1,this._endDrag(),this.fire("ddm:end"),this.activeDrag.end.call(this.activeDrag),this.activeDrag=null)},stopDrag:function(){return this.activeDrag&&this._end(),this},_shimming:!1,_docMove:function(e){this._shimming||this._move(e)},_move:function(e){this.activeDrag&&(this.activeDrag._move.call(this.activeDrag,e),this._dropMove())},cssSizestoObject:function(e){var t=e.split(" ");switch(t.length){case 1:t[1]=t[2]=t[3]=t[0];break;case 2:t[2]=t[0],t[3]=t[1];break;case 3:t[3]=t[1]}return{top:parseInt(t[0],10),right:parseInt(t[1],10),bottom:parseInt(t[2],10),left:parseInt(t[3],10)}},getDrag:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this._drags,function(e){r.compareTo(e.get("node"))&&(n=e)}),n},swapPosition:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=t.getXY(),i=n.getXY();return t.setXY(i),n.setXY(r),t},getNode:function(t){return t instanceof e.Node?t:(t&&t.get?e.Widget&&t instanceof e.Widget?t=t.get("boundingBox"):t=t.get("node"):t=e.one(t),t)},swapNode:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=n.get("parentNode"),i=n.get("nextSibling");return i===t?r.insertBefore(t,n):n===t.get("nextSibling")?r.insertBefore(n,t):(t.get("parentNode").replaceChild(n,t),r.insertBefore(t,i)),t}}),e.namespace("DD"),e.DD.DDM=new n},"3.9.1",{requires:["node","base","yui-throttle","classnamemanager"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};n.NAME="ddm",n.ATTRS={dragCursor:{value:"move"},clickPixelThresh:{value:3},clickTimeThresh:{value:1e3},throttleTime:{value:-1},dragMode:{value:"point",setter:function(e){return this._setDragMode(e),e}}},e.extend(n,e.Base,{_createPG:function(){},_active:null,_setDragMode:function(t){t===null&&(t=e.DD.DDM.get("dragMode"));switch(t){case 1:case"intersect":return 1;case 2:case"strict":return 2;case 0:case"point":return 0}return 0},CSS_PREFIX:e.ClassNameManager.getClassName("dd"),_activateTargets:function(){},_drags:[],activeDrag:!1,_regDrag:function(e){return this.getDrag(e.get("node"))?!1:(this._active||this._setupListeners(),this._drags.push(e),!0)},_unregDrag:function(t){var n=[];e.Array.each(this._drags,function(e){e!==t&&(n[n.length]=e)}),this._drags=n},_setupListeners:function(){this._createPG(),this._active=!0;var t=e.one(e.config.doc);t.on("mousemove",e.throttle(e.bind(this._docMove,this),this.get("throttleTime"))),t.on("mouseup",e.bind(this._end,this))},_start:function(){this.fire("ddm:start"),this._startDrag()},_startDrag:function(){},_endDrag:function(){},_dropMove:function(){},_end:function(){this.activeDrag&&(this._shimming=!1,this._endDrag(),this.fire("ddm:end"),this.activeDrag.end.call(this.activeDrag),this.activeDrag=null)},stopDrag:function(){return this.activeDrag&&this._end(),this},_shimming:!1,_docMove:function(e){this._shimming||this._move(e)},_move:function(e){this.activeDrag&&(this.activeDrag._move.call(this.activeDrag,e),this._dropMove())},cssSizestoObject:function(e){var t=e.split(" ");switch(t.length){case 1:t[1]=t[2]=t[3]=t[0];break;case 2:t[2]=t[0],t[3]=t[1];break;case 3:t[3]=t[1]}return{top:parseInt(t[0],10),right:parseInt(t[1],10),bottom:parseInt(t[2],10),left:parseInt(t[3],10)}},getDrag:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this._drags,function(e){r.compareTo(e.get("node"))&&(n=e)}),n},swapPosition:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=t.getXY(),i=n.getXY();return t.setXY(i),n.setXY(r),t},getNode:function(t){return t instanceof e.Node?t:(t&&t.get?e.Widget&&t instanceof e.Widget?t=t.get("boundingBox"):t=t.get("node"):t=e.one(t),t)},swapNode:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=n.get("parentNode"),i=n.get("nextSibling");return i===t?r.insertBefore(t,n):n===t.get("nextSibling")?r.insertBefore(n,t):(t.get("parentNode").replaceChild(n,t),r.insertBefore(t,i)),t}}),e.namespace("DD"),e.DD.DDM=new n},"3.12.0",{requires:["node","base","yui-throttle","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js similarity index 96% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js index 44309c1aad6..b07cea9c184 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js @@ -1,14 +1,20 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-base', function (Y, NAME) { /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @module dd * @submodule dd-ddm-base */ /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @class DDM * @extends Base * @constructor @@ -373,4 +379,4 @@ YUI.add('dd-ddm-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js index 1dc495bb71e..2223b47472b 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-drop', function (Y, NAME) { @@ -399,4 +405,4 @@ YUI.add('dd-ddm-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm"]}); +}, '3.12.0', {"requires": ["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js index 04fe585c27e..4d95e0403c5 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm-drop",function(e,t){e.mix(e.DD.DDM,{_noShim:!1,_activeShims:[],_hasActiveShim:function(){return this._noShim?!0:this._activeShims.length},_addActiveShim:function(e){this._activeShims.push(e)},_removeActiveShim:function(t){var n=[];e.Array.each(this._activeShims,function(e){e._yuid!==t._yuid&&n.push(e)}),this._activeShims=n},syncActiveShims:function(t){e.later(0,this,function(t){var n=t?this.targets:this._lookup();e.Array.each(n,function(e){e.sizeShim.call(e)},this)},t)},mode:0,POINT:0,INTERSECT:1,STRICT:2,useHash:!0,activeDrop:null,validDrops:[],otherDrops:{},targets:[],_addValid:function(e){return this.validDrops.push(e),this},_removeValid:function(t){var n=[];return e.Array.each(this.validDrops,function(e){e!==t&&n.push(e)}),this.validDrops=n,this},isOverTarget:function(e){if(this.activeDrag&&e){var t=this.activeDrag.mouseXY,n,r=this.activeDrag.get("dragMode"),i,s=e.shim;if(t&&this.activeDrag){i=this.activeDrag.region;if(r===this.STRICT)return this.activeDrag.get("dragNode").inRegion(e.region,!0,i);if(e&&e.shim)return r===this.INTERSECT&&this._noShim?(n=i||this.activeDrag.get("node"),e.get("node").intersect(n,e.region).inRegion):(this._noShim&&(s=e.get("node")),s.intersect({top:t[1],bottom:t[1],left:t[0],right:t[0]},e.region).inRegion)}}return!1},clearCache:function(){this.validDrops=[],this.otherDrops={},this._activeShims=[]},_activateTargets:function(){this._noShim=!0,this.clearCache(),e.Array.each(this.targets,function(e){e._activateShim([]),e.get("noShim")===!0&&(this._noShim=!1)},this),this._handleTargetOver()},getBestMatch:function(t,n){var r=null,i=0,s;return e.Array.each(t,function(e){var t=this.activeDrag.get("dragNode").intersect(e.get("node"));e.region.area=t.area,t.inRegion&&t.area>i&&(i=t.area,r=e)},this),n?(s=[],e.Array.each(t,function(e){e!==r&&s.push(e)},this),[r,s]):r},_deactivateTargets:function(){var t=[],n,r=this.activeDrag,i=this.activeDrop;r&&i&&this.otherDrops[i]?(r.get("dragMode")?(n=this.getBestMatch(this.otherDrops,!0),i=n[0],t=n[1]):(t=this.otherDrops,delete t[i]),r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),i&&(i.fire("drop:hit",{drag:r,drop:i,others:t}),r.fire("drag:drophit",{drag:r,drop:i,others:t}))):r&&r.get("dragging")&&(r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),r.fire("drag:dropmiss",{pageX:r.lastXY[0],pageY:r.lastXY[1]})),this.activeDrop=null,e.Array.each(this.targets,function(e){e._deactivateShim([])},this)},_dropMove:function(){this._hasActiveShim()?this._handleTargetOver():e.Array.each(this.otherDrops,function(e){e._handleOut.apply(e,[])})},_lookup:function(){if(!this.useHash||this._noShim)return this.validDrops;var t=[];return e.Array.each(this.validDrops,function(e){e.shim&&e.shim.inViewportRegion(!1,e.region)&&t.push(e)}),t},_handleTargetOver:function(){var t=this._lookup();e.Array.each(t,function(e){e._handleTargetOver.call(e)},this)},_regTarget:function(e){this.targets.push(e)},_unregTarget:function(t){var n=[],r;e.Array.each(this.targets,function(e){e!==t&&n.push(e)},this),this.targets=n,r=[],e.Array.each(this.validDrops,function(e){e!==t&&r.push(e)}),this.validDrops=r},getDrop:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this.targets,function(e){r.compareTo(e.get("node"))&&(n=e)}),n}},!0)},"3.9.1",{requires:["dd-ddm"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm-drop",function(e,t){e.mix(e.DD.DDM,{_noShim:!1,_activeShims:[],_hasActiveShim:function(){return this._noShim?!0:this._activeShims.length},_addActiveShim:function(e){this._activeShims.push(e)},_removeActiveShim:function(t){var n=[];e.Array.each(this._activeShims,function(e){e._yuid!==t._yuid&&n.push(e)}),this._activeShims=n},syncActiveShims:function(t){e.later(0,this,function(t){var n=t?this.targets:this._lookup();e.Array.each(n,function(e){e.sizeShim.call(e)},this)},t)},mode:0,POINT:0,INTERSECT:1,STRICT:2,useHash:!0,activeDrop:null,validDrops:[],otherDrops:{},targets:[],_addValid:function(e){return this.validDrops.push(e),this},_removeValid:function(t){var n=[];return e.Array.each(this.validDrops,function(e){e!==t&&n.push(e)}),this.validDrops=n,this},isOverTarget:function(e){if(this.activeDrag&&e){var t=this.activeDrag.mouseXY,n,r=this.activeDrag.get("dragMode"),i,s=e.shim;if(t&&this.activeDrag){i=this.activeDrag.region;if(r===this.STRICT)return this.activeDrag.get("dragNode").inRegion(e.region,!0,i);if(e&&e.shim)return r===this.INTERSECT&&this._noShim?(n=i||this.activeDrag.get("node"),e.get("node").intersect(n,e.region).inRegion):(this._noShim&&(s=e.get("node")),s.intersect({top:t[1],bottom:t[1],left:t[0],right:t[0]},e.region).inRegion)}}return!1},clearCache:function(){this.validDrops=[],this.otherDrops={},this._activeShims=[]},_activateTargets:function(){this._noShim=!0,this.clearCache(),e.Array.each(this.targets,function(e){e._activateShim([]),e.get("noShim")===!0&&(this._noShim=!1)},this),this._handleTargetOver()},getBestMatch:function(t,n){var r=null,i=0,s;return e.Array.each(t,function(e){var t=this.activeDrag.get("dragNode").intersect(e.get("node"));e.region.area=t.area,t.inRegion&&t.area>i&&(i=t.area,r=e)},this),n?(s=[],e.Array.each(t,function(e){e!==r&&s.push(e)},this),[r,s]):r},_deactivateTargets:function(){var t=[],n,r=this.activeDrag,i=this.activeDrop;r&&i&&this.otherDrops[i]?(r.get("dragMode")?(n=this.getBestMatch(this.otherDrops,!0),i=n[0],t=n[1]):(t=this.otherDrops,delete t[i]),r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),i&&(i.fire("drop:hit",{drag:r,drop:i,others:t}),r.fire("drag:drophit",{drag:r,drop:i,others:t}))):r&&r.get("dragging")&&(r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),r.fire("drag:dropmiss",{pageX:r.lastXY[0],pageY:r.lastXY[1]})),this.activeDrop=null,e.Array.each(this.targets,function(e){e._deactivateShim([])},this)},_dropMove:function(){this._hasActiveShim()?this._handleTargetOver():e.Array.each(this.otherDrops,function(e){e._handleOut.apply(e,[])})},_lookup:function(){if(!this.useHash||this._noShim)return this.validDrops;var t=[];return e.Array.each(this.validDrops,function(e){e.shim&&e.shim.inViewportRegion(!1,e.region)&&t.push(e)}),t},_handleTargetOver:function(){var t=this._lookup();e.Array.each(t,function(e){e._handleTargetOver.call(e)},this)},_regTarget:function(e){this.targets.push(e)},_unregTarget:function(t){var n=[],r;e.Array.each(this.targets,function(e){e!==t&&n.push(e)},this),this.targets=n,r=[],e.Array.each(this.validDrops,function(e){e!==t&&r.push(e)}),this.validDrops=r},getDrop:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this.targets,function(e){r.compareTo(e.get("node"))&&(n=e)}),n}},!0)},"3.12.0",{requires:["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js index 1dc495bb71e..2223b47472b 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-drop', function (Y, NAME) { @@ -399,4 +405,4 @@ YUI.add('dd-ddm-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm"]}); +}, '3.12.0', {"requires": ["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js index fad441c0748..41c93aaa6fd 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm', function (Y, NAME) { @@ -124,4 +130,4 @@ YUI.add('dd-ddm', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base", "event-resize"]}); +}, '3.12.0', {"requires": ["dd-ddm-base", "event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js index 64661e56a30..30e92ef2d34 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm",function(e,t){e.mix(e.DD.DDM,{_pg:null,_debugShim:!1,_activateTargets:function(){},_deactivateTargets:function(){},_startDrag:function(){this.activeDrag&&this.activeDrag.get("useShim")&&(this._shimming=!0,this._pg_activate(),this._activateTargets())},_endDrag:function(){this._pg_deactivate(),this._deactivateTargets()},_pg_deactivate:function(){this._pg.setStyle("display","none")},_pg_activate:function(){this._pg||this._createPG();var e=this.activeDrag.get("activeHandle"),t="auto";e&&(t=e.getStyle("cursor")),t==="auto"&&(t=this.get("dragCursor")),this._pg_size(),this._pg.setStyles({top:0,left:0,display:"block",opacity:this._debugShim?".5":"0",cursor:t})},_pg_size:function(){if(this.activeDrag){var t=e.one("body"),n=t.get("docHeight"),r=t.get("docWidth");this._pg.setStyles({height:n+"px",width:r+"px"})}},_createPG:function(){var t=e.Node.create("
"),n=e.one("body"),r;t.setStyles({top:"0",left:"0",position:"absolute",zIndex:"9999",overflow:"hidden",backgroundColor:"red",display:"none",height:"5px",width:"5px"}),t.set("id",e.stamp(t)),t.addClass(e.DD.DDM.CSS_PREFIX+"-shim"),n.prepend(t),this._pg=t,this._pg.on("mousemove",e.throttle(e.bind(this._move,this),this.get("throttleTime"))),this._pg.on("mouseup",e.bind(this._end,this)),r=e.one("win"),e.on("window:resize",e.bind(this._pg_size,this)),r.on("scroll",e.bind(this._pg_size,this))}},!0)},"3.9.1",{requires:["dd-ddm-base","event-resize"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm",function(e,t){e.mix(e.DD.DDM,{_pg:null,_debugShim:!1,_activateTargets:function(){},_deactivateTargets:function(){},_startDrag:function(){this.activeDrag&&this.activeDrag.get("useShim")&&(this._shimming=!0,this._pg_activate(),this._activateTargets())},_endDrag:function(){this._pg_deactivate(),this._deactivateTargets()},_pg_deactivate:function(){this._pg.setStyle("display","none")},_pg_activate:function(){this._pg||this._createPG();var e=this.activeDrag.get("activeHandle"),t="auto";e&&(t=e.getStyle("cursor")),t==="auto"&&(t=this.get("dragCursor")),this._pg_size(),this._pg.setStyles({top:0,left:0,display:"block",opacity:this._debugShim?".5":"0",cursor:t})},_pg_size:function(){if(this.activeDrag){var t=e.one("body"),n=t.get("docHeight"),r=t.get("docWidth");this._pg.setStyles({height:n+"px",width:r+"px"})}},_createPG:function(){var t=e.Node.create("
"),n=e.one("body"),r;t.setStyles({top:"0",left:"0",position:"absolute",zIndex:"9999",overflow:"hidden",backgroundColor:"red",display:"none",height:"5px",width:"5px"}),t.set("id",e.stamp(t)),t.addClass(e.DD.DDM.CSS_PREFIX+"-shim"),n.prepend(t),this._pg=t,this._pg.on("mousemove",e.throttle(e.bind(this._move,this),this.get("throttleTime"))),this._pg.on("mouseup",e.bind(this._end,this)),r=e.one("win"),e.on("window:resize",e.bind(this._pg_size,this)),r.on("scroll",e.bind(this._pg_size,this))}},!0)},"3.12.0",{requires:["dd-ddm-base","event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm.js similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm.js index fad441c0748..41c93aaa6fd 100644 --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm', function (Y, NAME) { @@ -124,4 +130,4 @@ YUI.add('dd-ddm', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base", "event-resize"]}); +}, '3.12.0', {"requires": ["dd-ddm-base", "event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js index d9dc7ad0b45..5f1ccd271e6 100644 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-delegate', function (Y, NAME) { @@ -336,4 +342,4 @@ YUI.add('dd-delegate', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js index c5b9f8925e9..0436a7d3755 100644 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-delegate",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="container",i="nodes",s=e.Node.create("
Temp Node
");e.extend(n,e.Base,{_bubbleTargets:e.DD.DDM,dd:null,_shimState:null,_handles:null,_onNodeChange:function(e){this.set("dragNode",e.newVal)},_afterDragEnd:function(){e.DD.DDM._noShim=this._shimState,this.set("lastNode",this.dd.get("node")),this.get("lastNode").removeClass(e.DD.DDM.CSS_PREFIX+"-dragging"),this.dd._unprep(),this.dd.set("node",s)},_delMouseDown:function(t){var n=t.currentTarget,r=this.dd,s=n,o=this.get("dragConfig");n.test(this.get(i))&&!n.test(this.get("invalid"))&&(this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0,this.set("currentNode",n),r.set("node",n),o&&o.dragNode?s=o.dragNode:r.proxy&&(s=e.DD.DDM._proxy),r.set("dragNode",s),r._prep(),r.fire("drag:mouseDown",{ev:t}))},_onMouseEnter:function(){this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0},_onMouseLeave:function(){e.DD.DDM._noShim=this._shimState},initializer:function(){this._handles=[];var t=this.get("dragConfig")||{},n=this.get(r);t.node=s.cloneNode(!0),t.bubbleTargets=this,this.get("handles")&&(t.handles=this.get("handles")),this.dd=new e.DD.Drag(t),this.dd.after("drag:end",e.bind(this._afterDragEnd,this)),this.dd.on("dragNodeChange",e.bind(this._onNodeChange,this)),this.dd.after("drag:mouseup",function(){this._unprep()}),this._handles.push(e.delegate(e.DD.Drag.START_EVENT,e.bind(this._delMouseDown,this),n,this.get(i))),this._handles.push(e.on("mouseenter",e.bind(this._onMouseEnter,this),n)),this._handles.push(e.on("mouseleave",e.bind(this._onMouseLeave,this),n)),e.later(50,this,this.syncTargets),e.DD.DDM.regDelegate(this)},syncTargets:function(){if(!e.Plugin.Drop||this.get("destroyed"))return;var t,n,s;return this.get("target")&&(t=e.one(this.get(r)).all(this.get(i)),n=this.dd.get("groups"),s=this.get("dragConfig"),s&&s.groups&&(n=s.groups),t.each(function(e){this.createDrop(e,n)},this)),this},createDrop:function(t,n){var r={useShim:!1,bubbleTargets:this};return t.drop||t.plug(e.Plugin.Drop,r),t.drop.set("groups",n),t},destructor:function(){this.dd&&this.dd.destroy();if(e.Plugin.Drop){var t=e.one(this.get(r)).all(this.get(i));t.unplug(e.Plugin.Drop)}e.Array.each(this._handles,function(e){e.detach()})}},{NAME:"delegate",ATTRS:{container:{value:"body"},nodes:{value:".dd-draggable"},invalid:{value:"input, select, button, a, textarea"},lastNode:{value:s},currentNode:{value:s},dragNode:{value:s},over:{value:!1},target:{value:!1},dragConfig:{value:null},handles:{value:null}}}),e.mix(e.DD.DDM,{_delegates:[],regDelegate:function(e){this._delegates.push(e)},getDelegate:function(t){var n=null;return t=e.one(t),e.Array.each(this._delegates,function(e){t.test(e.get(r))&&(n=e)},this),n}}),e.namespace("DD"),e.DD.Delegate=n},"3.9.1",{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-delegate",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="container",i="nodes",s=e.Node.create("
Temp Node
");e.extend(n,e.Base,{_bubbleTargets:e.DD.DDM,dd:null,_shimState:null,_handles:null,_onNodeChange:function(e){this.set("dragNode",e.newVal)},_afterDragEnd:function(){e.DD.DDM._noShim=this._shimState,this.set("lastNode",this.dd.get("node")),this.get("lastNode").removeClass(e.DD.DDM.CSS_PREFIX+"-dragging"),this.dd._unprep(),this.dd.set("node",s)},_delMouseDown:function(t){var n=t.currentTarget,r=this.dd,s=n,o=this.get("dragConfig");n.test(this.get(i))&&!n.test(this.get("invalid"))&&(this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0,this.set("currentNode",n),r.set("node",n),o&&o.dragNode?s=o.dragNode:r.proxy&&(s=e.DD.DDM._proxy),r.set("dragNode",s),r._prep(),r.fire("drag:mouseDown",{ev:t}))},_onMouseEnter:function(){this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0},_onMouseLeave:function(){e.DD.DDM._noShim=this._shimState},initializer:function(){this._handles=[];var t=this.get("dragConfig")||{},n=this.get(r);t.node=s.cloneNode(!0),t.bubbleTargets=this,this.get("handles")&&(t.handles=this.get("handles")),this.dd=new e.DD.Drag(t),this.dd.after("drag:end",e.bind(this._afterDragEnd,this)),this.dd.on("dragNodeChange",e.bind(this._onNodeChange,this)),this.dd.after("drag:mouseup",function(){this._unprep()}),this._handles.push(e.delegate(e.DD.Drag.START_EVENT,e.bind(this._delMouseDown,this),n,this.get(i))),this._handles.push(e.on("mouseenter",e.bind(this._onMouseEnter,this),n)),this._handles.push(e.on("mouseleave",e.bind(this._onMouseLeave,this),n)),e.later(50,this,this.syncTargets),e.DD.DDM.regDelegate(this)},syncTargets:function(){if(!e.Plugin.Drop||this.get("destroyed"))return;var t,n,s;return this.get("target")&&(t=e.one(this.get(r)).all(this.get(i)),n=this.dd.get("groups"),s=this.get("dragConfig"),s&&s.groups&&(n=s.groups),t.each(function(e){this.createDrop(e,n)},this)),this},createDrop:function(t,n){var r={useShim:!1,bubbleTargets:this};return t.drop||t.plug(e.Plugin.Drop,r),t.drop.set("groups",n),t},destructor:function(){this.dd&&this.dd.destroy();if(e.Plugin.Drop){var t=e.one(this.get(r)).all(this.get(i));t.unplug(e.Plugin.Drop)}e.Array.each(this._handles,function(e){e.detach()})}},{NAME:"delegate",ATTRS:{container:{value:"body"},nodes:{value:".dd-draggable"},invalid:{value:"input, select, button, a, textarea"},lastNode:{value:s},currentNode:{value:s},dragNode:{value:s},over:{value:!1},target:{value:!1},dragConfig:{value:null},handles:{value:null}}}),e.mix(e.DD.DDM,{_delegates:[],regDelegate:function(e){this._delegates.push(e)},getDelegate:function(t){var n=null;return t=e.one(t),e.Array.each(this._delegates,function(e){t.test(e.get(r))&&(n=e)},this),n}}),e.namespace("DD"),e.DD.Delegate=n},"3.12.0",{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate.js similarity index 97% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate.js index d9dc7ad0b45..5f1ccd271e6 100644 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-delegate', function (Y, NAME) { @@ -336,4 +342,4 @@ YUI.add('dd-delegate', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js b/lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js rename to lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js index e086ae5cb69..d77213bed1a 100644 --- a/lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drag', function (Y, NAME) { @@ -504,7 +510,7 @@ YUI.add('dd-drag', function (Y, NAME) { if (!Y.Lang.isObject(config)) { config = {}; } - config.bubbleTargets = config.bubbleTargets || Y.Object.values(this._yuievt.targets); + config.bubbleTargets = config.bubbleTargets || this.getTargets(); config.node = this.get(NODE); config.groups = config.groups || this.get('groups'); this.target = new Y.DD.Drop(config); @@ -1274,4 +1280,4 @@ YUI.add('dd-drag', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base"]}); +}, '3.12.0', {"requires": ["dd-ddm-base"]}); diff --git a/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js b/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js new file mode 100644 index 00000000000..68ede9aa8c4 --- /dev/null +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drag",function(e,t){var n=e.DD.DDM,r="node",i="dragging",s="dragNode",o="offsetHeight",u="offsetWidth",a="drag:mouseDown",f="drag:afterMouseDown",l="drag:removeHandle",c="drag:addHandle",h="drag:removeInvalid",p="drag:addInvalid",d="drag:start",v="drag:end",m="drag:drag",g="drag:align",y=function(t){this._lazyAddAttrs=!1,y.superclass.constructor.apply(this,arguments);var r=n._regDrag(this);r||e.error("Failed to register node, already in use: "+t.node)};y.NAME="drag",y.START_EVENT="mousedown",y.ATTRS={node:{setter:function(t){if(this._canDrag(t))return t;var n=e.one(t);return n||e.error("DD.Drag: Invalid Node Given: "+t),n}},dragNode:{setter:function(t){if(this._canDrag(t))return t;var n=e.one(t);return n||e.error("DD.Drag: Invalid dragNode Given: "+t),n}},offsetNode:{value:!0},startCentered:{value:!1},clickPixelThresh:{value:n.get("clickPixelThresh")},clickTimeThresh:{value:n.get("clickTimeThresh")},lock:{value:!1,setter:function(e){return e?this.get(r).addClass(n.CSS_PREFIX+"-locked"):this.get(r).removeClass(n.CSS_PREFIX+"-locked"),e}},data:{value:!1},move:{value:!0},useShim:{value:!0},activeHandle:{value:!1},primaryButtonOnly:{value:!0},dragging:{value:!1},parent:{value:!1},target:{value:!1,setter:function(e){return this._handleTarget(e),e}},dragMode:{value:null,setter:function(e){return n._setDragMode(e)}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},handles:{value:null,setter:function(t){return t?(this._handles={},e.Array.each(t,function(t){var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;this._handles[n]=t},this)):this._handles=null,t}},bubbles:{setter:function(e){return this.addTarget(e),e}},haltDown:{value:!0}},e.extend(y,e.Base,{_canDrag:function(e){return e&&e.setXY&&e.getXY&&e.test&&e.contains?!0:!1},_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,n._activateTargets(),this},removeFromGroup:function(e){return delete this._groups[e],n._activateTargets(),this},target:null,_handleTarget:function(t){e.DD.Drop&&(t===!1?this.target&&(n._unregTarget(this.target),this.target=null):(e.Lang.isObject(t)||(t={}),t.bubbleTargets=t.bubbleTargets||this.getTargets(),t.node=this.get(r),t.groups=t.groups||this.get("groups"),this.target=new e.DD.Drop(t)))},_groups:null,_createEvents:function(){this.publish(a,{defaultFn:this._defMouseDownFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(g,{defaultFn:this._defAlignFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(m,{defaultFn:this._defDragFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(v,{defaultFn:this._defEndFn,preventedFn:this._prevEndFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"});var t=[f,l,c,h,p,d,"drag:drophit","drag:dropmiss","drag:over","drag:enter","drag:exit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,preventable:!1,queuable:!1,prefix:"drag"})},this)},_ev_md:null,_startTime:null,_endTime:null,_handles:null,_invalids:null,_invalidsDefault:{textarea:!0,input:!0,a:!0,button:!0,select:!0},_dragThreshMet:null,_fromTimeout:null,_clickTimeout:null,deltaXY:null,startXY:null,nodeXY:null,lastXY:null,actXY:null,realXY:null,mouseXY:null,region:null,_handleMouseUp:function(){this.fire("drag:mouseup"),this._fixIEMouseUp(),n.activeDrag&&n._end()},_fixDragStart:function(e){this.validClick(e)&&e.preventDefault()},_ieSelectFix:function(){return!1},_ieSelectBack:null,_fixIEMouseDown:function(){e.UA.ie&&(this._ieSelectBack=e.config.doc.body.onselectstart,e.config.doc.body.onselectstart=this._ieSelectFix)},_fixIEMouseUp:function(){e.UA.ie&&(e.config.doc.body.onselectstart=this._ieSelectBack)},_handleMouseDownEvent:function(e){this.fire(a,{ev:e})},_defMouseDownFn:function(t){var r=t.ev;this._dragThreshMet=!1,this._ev_md=r;if(this.get("primaryButtonOnly")&&r.button>1)return!1;this.validClick(r)&&(this._fixIEMouseDown(r),y.START_EVENT.indexOf("gesture")!==0&&(this.get("haltDown")?r.halt():r.preventDefault()),this._setStartPosition([r.pageX,r.pageY]),n.activeDrag=this,this._clickTimeout=e.later(this.get("clickTimeThresh"),this,this._timeoutCheck)),this.fire(f,{ev:r})},validClick:function(t){var n=!1,i=!1,s=t.target,o=null,u=null,a=null,f=!1;if(this._handles)e.Object.each(this._handles,function(t,r){t instanceof e.Node||t instanceof e.NodeList?n||(a=t,a instanceof e.Node&&(a=new e.NodeList(t._node)),a.each(function(e){e.contains(s)&&(n=!0)})):e.Lang.isString(r)&&s.test(r+", "+r+" *")&&!o&&(o=r,n=!0)});else{i=this.get(r);if(i.contains(s)||i.compareTo(s))n=!0}return n&&this._invalids&&e.Object.each(this._invalids,function(t,r){e.Lang.isString(r)&&s.test(r+", "+r+" *")&&(n=!1)}),n&&(o?(u=t.currentTarget.all(o),f=!1,u.each(function(e){(e.contains(s)||e.compareTo(s))&&!f&&(f=!0,this.set("activeHandle",e))},this)):this.set("activeHandle",this.get(r))),n},_setStartPosition:function(e){this.startXY=e,this.nodeXY=this.lastXY=this.realXY=this.get(r).getXY(),this.get("offsetNode")?this.deltaXY=[this.startXY[0]-this.nodeXY[0],this.startXY[1]-this.nodeXY[1]]:this.deltaXY=[0,0]},_timeoutCheck:function(){!this.get("lock")&&!this._dragThreshMet&&this._ev_md&&(this._fromTimeout=this._dragThreshMet=!0,this.start(),this._alignNode([this._ev_md.pageX,this._ev_md.pageY],!0))},removeHandle:function(t){var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;return this._handles[n]&&(delete this._handles[n],this.fire(l,{handle:t})),this},addHandle:function(t){this._handles||(this._handles={});var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;return this._handles[n]=t,this.fire(c,{handle:t}),this},removeInvalid:function(e){return this._invalids[e]&&(this._invalids[e]=null,delete this._invalids[e],this.fire(h,{handle:e})),this},addInvalid:function(t){return e.Lang.isString(t)&&(this._invalids[t]=!0,this.fire(p,{handle:t})),this},initializer:function(){this.get(r).dd=this;if(!this.get(r).get +("id")){var t=e.stamp(this.get(r));this.get(r).set("id",t)}this.actXY=[],this._invalids=e.clone(this._invalidsDefault,!0),this._createEvents(),this.get(s)||this.set(s,this.get(r)),this.on("initializedChange",e.bind(this._prep,this)),this.set("groups",this.get("groups"))},_prep:function(){this._dragThreshMet=!1;var t=this.get(r);t.addClass(n.CSS_PREFIX+"-draggable"),t.on(y.START_EVENT,e.bind(this._handleMouseDownEvent,this)),t.on("mouseup",e.bind(this._handleMouseUp,this)),t.on("dragstart",e.bind(this._fixDragStart,this))},_unprep:function(){var e=this.get(r);e.removeClass(n.CSS_PREFIX+"-draggable"),e.detachAll("mouseup"),e.detachAll("dragstart"),e.detachAll(y.START_EVENT),this.mouseXY=[],this.deltaXY=[0,0],this.startXY=[],this.nodeXY=[],this.lastXY=[],this.actXY=[],this.realXY=[]},start:function(){if(!this.get("lock")&&!this.get(i)){var e=this.get(r),t,a,f;this._startTime=(new Date).getTime(),n._start(),e.addClass(n.CSS_PREFIX+"-dragging"),this.fire(d,{pageX:this.nodeXY[0],pageY:this.nodeXY[1],startTime:this._startTime}),e=this.get(s),f=this.nodeXY,t=e.get(u),a=e.get(o),this.get("startCentered")&&this._setStartPosition([f[0]+t/2,f[1]+a/2]),this.region={0:f[0],1:f[1],area:0,top:f[1],right:f[0]+t,bottom:f[1]+a,left:f[0]},this.set(i,!0)}return this},end:function(){return this._endTime=(new Date).getTime(),this._clickTimeout&&this._clickTimeout.cancel(),this._dragThreshMet=this._fromTimeout=!1,!this.get("lock")&&this.get(i)&&this.fire(v,{pageX:this.lastXY[0],pageY:this.lastXY[1],startTime:this._startTime,endTime:this._endTime}),this.get(r).removeClass(n.CSS_PREFIX+"-dragging"),this.set(i,!1),this.deltaXY=[0,0],this},_defEndFn:function(){this._fixIEMouseUp(),this._ev_md=null},_prevEndFn:function(){this._fixIEMouseUp(),this.get(s).setXY(this.nodeXY),this._ev_md=null,this.region=null},_align:function(e){this.fire(g,{pageX:e[0],pageY:e[1]})},_defAlignFn:function(e){this.actXY=[e.pageX-this.deltaXY[0],e.pageY-this.deltaXY[1]]},_alignNode:function(e,t){this._align(e),t||this._moveNode()},_moveNode:function(e){var t=[],n=[],r=this.nodeXY,i=this.actXY;t[0]=i[0]-this.lastXY[0],t[1]=i[1]-this.lastXY[1],n[0]=i[0]-this.nodeXY[0],n[1]=i[1]-this.nodeXY[1],this.region={0:i[0],1:i[1],area:0,top:i[1],right:i[0]+this.get(s).get(u),bottom:i[1]+this.get(s).get(o),left:i[0]},this.fire(m,{pageX:i[0],pageY:i[1],scroll:e,info:{start:r,xy:i,delta:t,offset:n}}),this.lastXY=i},_defDragFn:function(t){if(this.get("move")){if(t.scroll&&t.scroll.node){var n=t.scroll.node.getDOMNode();n===e.config.win?n.scrollTo(t.scroll.left,t.scroll.top):(t.scroll.node.set("scrollTop",t.scroll.top),t.scroll.node.set("scrollLeft",t.scroll.left))}this.get(s).setXY([t.pageX,t.pageY]),this.realXY=[t.pageX,t.pageY]}},_move:function(e){if(this.get("lock"))return!1;this.mouseXY=[e.pageX,e.pageY];if(!this._dragThreshMet){var t=Math.abs(this.startXY[0]-e.pageX),n=Math.abs(this.startXY[1]-e.pageY);if(t>this.get("clickPixelThresh")||n>this.get("clickPixelThresh"))this._dragThreshMet=!0,this.start(),e&&e.preventDefault&&e.preventDefault(),this._alignNode([e.pageX,e.pageY])}else this._clickTimeout&&this._clickTimeout.cancel(),this._alignNode([e.pageX,e.pageY])},stopDrag:function(){return this.get(i)&&n._end(),this},destructor:function(){this._unprep(),this.target&&this.target.destroy(),n._unregDrag(this)}}),e.namespace("DD"),e.DD.Drag=y},"3.12.0",{requires:["dd-ddm-base"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drag/dd-drag.js b/lib/yuilib/3.12.0/dd-drag/dd-drag.js similarity index 99% rename from lib/yuilib/3.9.1/build/dd-drag/dd-drag.js rename to lib/yuilib/3.12.0/dd-drag/dd-drag.js index e2a165a22b9..a7c271c96f1 100644 --- a/lib/yuilib/3.9.1/build/dd-drag/dd-drag.js +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drag', function (Y, NAME) { @@ -503,7 +509,7 @@ YUI.add('dd-drag', function (Y, NAME) { if (!Y.Lang.isObject(config)) { config = {}; } - config.bubbleTargets = config.bubbleTargets || Y.Object.values(this._yuievt.targets); + config.bubbleTargets = config.bubbleTargets || this.getTargets(); config.node = this.get(NODE); config.groups = config.groups || this.get('groups'); this.target = new Y.DD.Drop(config); @@ -1271,4 +1277,4 @@ YUI.add('dd-drag', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base"]}); +}, '3.12.0', {"requires": ["dd-ddm-base"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js similarity index 84% rename from lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js rename to lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js index e821b5d573a..719e8229798 100644 --- a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop-plugin', function (Y, NAME) { @@ -42,4 +48,4 @@ YUI.add('dd-drop-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drop"]}); +}, '3.12.0', {"requires": ["dd-drop"]}); diff --git a/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js new file mode 100644 index 00000000000..e34d26bd440 --- /dev/null +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drop-plugin",function(e,t){var n=function(e){e.node=e.host,n.superclass.constructor.apply(this,arguments)};n.NAME="dd-drop-plugin",n.NS="drop",e.extend(n,e.DD.Drop),e.namespace("Plugin"),e.Plugin.Drop=n},"3.12.0",{requires:["dd-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js similarity index 84% rename from lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js rename to lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js index e821b5d573a..719e8229798 100644 --- a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop-plugin', function (Y, NAME) { @@ -42,4 +48,4 @@ YUI.add('dd-drop-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drop"]}); +}, '3.12.0', {"requires": ["dd-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js b/lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js index d5b9ac30071..1b96a62d85a 100644 --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop', function (Y, NAME) { @@ -553,4 +559,4 @@ YUI.add('dd-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-ddm-drop"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js b/lib/yuilib/3.12.0/dd-drop/dd-drop-min.js similarity index 95% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop-min.js index 68654bb170f..dd82baac422 100644 --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-drop",function(e,t){var n="node",r=e.DD.DDM,i="offsetHeight",s="offsetWidth",o="drop:over",u="drop:enter",a="drop:exit",f=function(){this._lazyAddAttrs=!1,f.superclass.constructor.apply(this,arguments),e.on("domready",e.bind(function(){e.later(100,this,this._createShim)},this)),r._regTarget(this)};f.NAME="drop",f.ATTRS={node:{setter:function(t){var n=e.one(t);return n||e.error("DD.Drop: Invalid Node Given: "+t),n}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},padding:{value:"0",setter:function(e){return r.cssSizestoObject(e)}},lock:{value:!1,setter:function(e){return e?this.get(n).addClass(r.CSS_PREFIX+"-drop-locked"):this.get(n).removeClass(r.CSS_PREFIX+"-drop-locked"),e}},bubbles:{setter:function(e){return this.addTarget(e),e}},useShim:{value:!0,setter:function(t){return e.DD.DDM._noShim=!t,t}}},e.extend(f,e.Base,{_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,this},removeFromGroup:function(e){return delete this._groups[e],this},_createEvents:function(){var t=[o,u,a,"drop:hit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,preventable:!1,bubbles:!0,queuable:!1,prefix:"drop"})},this)},_valid:null,_groups:null,shim:null,region:null,overTarget:null,inGroup:function(t){this._valid=!1;var n=!1;return e.Array.each(t,function(e){this._groups[e]&&(n=!0,this._valid=!0)},this),n},initializer:function(){e.later(100,this,this._createEvents);var t=this.get(n),i;t.get("id")||(i=e.stamp(t),t.set("id",i)),t.addClass(r.CSS_PREFIX+"-drop"),this.set("groups",this.get("groups"))},destructor:function(){r._unregTarget(this),this.shim&&this.shim!==this.get(n)&&(this.shim.detachAll(),this.shim.remove(),this.shim=null),this.get(n).removeClass(r.CSS_PREFIX+"-drop"),this.detachAll()},_deactivateShim:function(){if(!this.shim)return!1;this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-valid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-invalid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),this.get("useShim")&&this.shim.setStyles({top:"-999px",left:"-999px",zIndex:"1"}),this.overTarget=!1},_activateShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;var e=this.get(n);this.inGroup(r.activeDrag.get("groups"))?(e.removeClass(r.CSS_PREFIX+"-drop-active-invalid"),e.addClass(r.CSS_PREFIX+"-drop-active-valid"),r._addValid(this),this.overTarget=!1,this.get("useShim")||(this.shim=this.get(n)),this.sizeShim()):(r._removeValid(this),e.removeClass(r.CSS_PREFIX+"-drop-active-valid"),e.addClass(r.CSS_PREFIX+"-drop-active-invalid"))},sizeShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;if(!this.shim)return e.later(100,this,this.sizeShim),!1;var t=this.get(n),o=t.get(i),u=t.get(s),a=t.getXY(),f=this.get("padding"),l,c,h;u=u+f.left+f.right,o=o+f.top+f.bottom,a[0]=a[0]-f.left,a[1]=a[1]-f.top,r.activeDrag.get("dragMode")===r.INTERSECT&&(l=r.activeDrag,c=l.get(n).get(i),h=l.get(n).get(s),o+=c,u+=h,a[0]=a[0]-(h-l.deltaXY[0]),a[1]=a[1]-(c-l.deltaXY[1])),this.get("useShim")&&this.shim.setStyles({height:o+"px",width:u+"px",top:a[1]+"px",left:a[0]+"px"}),this.region={0:a[0],1:a[1],area:0,top:a[1],right:a[0]+u,bottom:a[1]+o,left:a[0]}},_createShim:function(){if(!r._pg){e.later(10,this,this._createShim);return}if(this.shim)return;var t=this.get("node");this.get("useShim")&&(t=e.Node.create('
'),t.setStyles({height:this.get(n).get(i)+"px",width:this.get(n).get(s)+"px",backgroundColor:"yellow",opacity:".5",zIndex:"1",overflow:"hidden",top:"-900px",left:"-900px",position:"absolute"}),r._pg.appendChild(t),t.on("mouseover",e.bind(this._handleOverEvent,this)),t.on("mouseout",e.bind(this._handleOutEvent,this))),this.shim=t},_handleTargetOver:function(){r.isOverTarget(this)?(this.get(n).addClass(r.CSS_PREFIX+"-drop-over"),r.activeDrop=this,r.otherDrops[this]=this,this.overTarget?(r.activeDrag.fire("drag:over",{drop:this,drag:r.activeDrag}),this.fire(o,{drop:this,drag:r.activeDrag})):r.activeDrag.get("dragging")&&(this.overTarget=!0,this.fire(u,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:enter",{drop:this,drag:r.activeDrag}),r.activeDrag.get(n).addClass(r.CSS_PREFIX+"-drag-over"))):this._handleOut()},_handleOverEvent:function(){this.shim.setStyle("zIndex","999"),r._addActiveShim(this)},_handleOutEvent:function(){this.shim.setStyle("zIndex","1"),r._removeActiveShim(this)},_handleOut:function(e){(!r.isOverTarget(this)||e)&&this.overTarget&&(this.overTarget=!1,e||r._removeActiveShim(this),r.activeDrag&&(this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),r.activeDrag.get(n).removeClass(r.CSS_PREFIX+"-drag-over"),this.fire(a,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:exit",{drop:this,drag:r.activeDrag}),delete r.otherDrops[this]))}}),e.DD.Drop=f},"3.9.1",{requires:["dd-drag","dd-ddm-drop"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drop",function(e,t){var n="node",r=e.DD.DDM,i="offsetHeight",s="offsetWidth",o="drop:over",u="drop:enter",a="drop:exit",f=function(){this._lazyAddAttrs=!1,f.superclass.constructor.apply(this,arguments),e.on("domready",e.bind(function(){e.later(100,this,this._createShim)},this)),r._regTarget(this)};f.NAME="drop",f.ATTRS={node:{setter:function(t){var n=e.one(t);return n||e.error("DD.Drop: Invalid Node Given: "+t),n}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},padding:{value:"0",setter:function(e){return r.cssSizestoObject(e)}},lock:{value:!1,setter:function(e){return e?this.get(n).addClass(r.CSS_PREFIX+"-drop-locked"):this.get(n).removeClass(r.CSS_PREFIX+"-drop-locked"),e}},bubbles:{setter:function(e){return this.addTarget(e),e}},useShim:{value:!0,setter:function(t){return e.DD.DDM._noShim=!t,t}}},e.extend(f,e.Base,{_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,this},removeFromGroup:function(e){return delete this._groups[e],this},_createEvents:function(){var t=[o,u,a,"drop:hit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,preventable:!1,bubbles:!0,queuable:!1,prefix:"drop"})},this)},_valid:null,_groups:null,shim:null,region:null,overTarget:null,inGroup:function(t){this._valid=!1;var n=!1;return e.Array.each(t,function(e){this._groups[e]&&(n=!0,this._valid=!0)},this),n},initializer:function(){e.later(100,this,this._createEvents);var t=this.get(n),i;t.get("id")||(i=e.stamp(t),t.set("id",i)),t.addClass(r.CSS_PREFIX+"-drop"),this.set("groups",this.get("groups"))},destructor:function(){r._unregTarget(this),this.shim&&this.shim!==this.get(n)&&(this.shim.detachAll(),this.shim.remove(),this.shim=null),this.get(n).removeClass(r.CSS_PREFIX+"-drop"),this.detachAll()},_deactivateShim:function(){if(!this.shim)return!1;this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-valid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-invalid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),this.get("useShim")&&this.shim.setStyles({top:"-999px",left:"-999px",zIndex:"1"}),this.overTarget=!1},_activateShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;var e=this.get(n);this.inGroup(r.activeDrag.get("groups"))?(e.removeClass(r.CSS_PREFIX+"-drop-active-invalid"),e.addClass(r.CSS_PREFIX+"-drop-active-valid"),r._addValid(this),this.overTarget=!1,this.get("useShim")||(this.shim=this.get(n)),this.sizeShim()):(r._removeValid(this),e.removeClass(r.CSS_PREFIX+"-drop-active-valid"),e.addClass(r.CSS_PREFIX+"-drop-active-invalid"))},sizeShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;if(!this.shim)return e.later(100,this,this.sizeShim),!1;var t=this.get(n),o=t.get(i),u=t.get(s),a=t.getXY(),f=this.get("padding"),l,c,h;u=u+f.left+f.right,o=o+f.top+f.bottom,a[0]=a[0]-f.left,a[1]=a[1]-f.top,r.activeDrag.get("dragMode")===r.INTERSECT&&(l=r.activeDrag,c=l.get(n).get(i),h=l.get(n).get(s),o+=c,u+=h,a[0]=a[0]-(h-l.deltaXY[0]),a[1]=a[1]-(c-l.deltaXY[1])),this.get("useShim")&&this.shim.setStyles({height:o+"px",width:u+"px",top:a[1]+"px",left:a[0]+"px"}),this.region={0:a[0],1:a[1],area:0,top:a[1],right:a[0]+u,bottom:a[1]+o,left:a[0]}},_createShim:function(){if(!r._pg){e.later(10,this,this._createShim);return}if(this.shim)return;var t=this.get("node");this.get("useShim")&&(t=e.Node.create('
'),t.setStyles({height:this.get(n).get(i)+"px",width:this.get(n).get(s)+"px",backgroundColor:"yellow",opacity:".5",zIndex:"1",overflow:"hidden",top:"-900px",left:"-900px",position:"absolute"}),r._pg.appendChild(t),t.on("mouseover",e.bind(this._handleOverEvent,this)),t.on("mouseout",e.bind(this._handleOutEvent,this))),this.shim=t},_handleTargetOver:function(){r.isOverTarget(this)?(this.get(n).addClass(r.CSS_PREFIX+"-drop-over"),r.activeDrop=this,r.otherDrops[this]=this,this.overTarget?(r.activeDrag.fire("drag:over",{drop:this,drag:r.activeDrag}),this.fire(o,{drop:this,drag:r.activeDrag})):r.activeDrag.get("dragging")&&(this.overTarget=!0,this.fire(u,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:enter",{drop:this,drag:r.activeDrag}),r.activeDrag.get(n).addClass(r.CSS_PREFIX+"-drag-over"))):this._handleOut()},_handleOverEvent:function(){this.shim.setStyle("zIndex","999"),r._addActiveShim(this)},_handleOutEvent:function(){this.shim.setStyle("zIndex","1"),r._removeActiveShim(this)},_handleOut:function(e){(!r.isOverTarget(this)||e)&&this.overTarget&&(this.overTarget=!1,e||r._removeActiveShim(this),r.activeDrag&&(this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),r.activeDrag.get(n).removeClass(r.CSS_PREFIX+"-drag-over"),this.fire(a,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:exit",{drop:this,drag:r.activeDrag}),delete r.otherDrops[this]))}}),e.DD.Drop=f},"3.12.0",{requires:["dd-drag","dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop.js b/lib/yuilib/3.12.0/dd-drop/dd-drop.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop.js index 94c731a1eda..794174cdb8f 100644 --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop', function (Y, NAME) { @@ -552,4 +558,4 @@ YUI.add('dd-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-ddm-drop"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js similarity index 89% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js index 58ea7f63bf8..7274c8bc968 100644 --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-gestures', function (Y, NAME) { @@ -52,4 +58,4 @@ YUI.add('dd-gestures', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); +}, '3.12.0', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js similarity index 74% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js index 7d9e7b0fbe7..35782838d40 100644 --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-gestures",function(e,t){e.DD.Drag.START_EVENT="gesturemovestart",e.DD.Drag.prototype._prep=function(){this._dragThreshMet=!1;var t=this.get("node"),n=e.DD.DDM;t.addClass(n.CSS_PREFIX+"-draggable"),t.on(e.DD.Drag.START_EVENT,e.bind(this._handleMouseDownEvent,this),{minDistance:this.get("clickPixelThresh"),minTime:this.get("clickTimeThresh")}),t.on("gesturemoveend",e.bind(this._handleMouseUp,this),{standAlone:!0}),t.on("dragstart",e.bind(this._fixDragStart,this))};var n=e.DD.Drag.prototype._unprep;e.DD.Drag.prototype._unprep=function(){var e=this.get("node");n.call(this),e.detachAll("gesturemoveend")},e.DD.DDM._setupListeners=function(){var t=e.DD.DDM;this._createPG(),this._active=!0,e.one(e.config.doc).on("gesturemove",e.throttle(e.bind(t._move,t),t.get("throttleTime")),{standAlone:!0})}},"3.9.1",{requires:["dd-drag","event-synthetic","event-gestures"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-gestures",function(e,t){e.DD.Drag.START_EVENT="gesturemovestart",e.DD.Drag.prototype._prep=function(){this._dragThreshMet=!1;var t=this.get("node"),n=e.DD.DDM;t.addClass(n.CSS_PREFIX+"-draggable"),t.on(e.DD.Drag.START_EVENT,e.bind(this._handleMouseDownEvent,this),{minDistance:this.get("clickPixelThresh"),minTime:this.get("clickTimeThresh")}),t.on("gesturemoveend",e.bind(this._handleMouseUp,this),{standAlone:!0}),t.on("dragstart",e.bind(this._fixDragStart,this))};var n=e.DD.Drag.prototype._unprep;e.DD.Drag.prototype._unprep=function(){var e=this.get("node");n.call(this),e.detachAll("gesturemoveend")},e.DD.DDM._setupListeners=function(){var t=e.DD.DDM;this._createPG(),this._active=!0,e.one(e.config.doc).on("gesturemove",e.throttle(e.bind(t._move,t),t.get("throttleTime")),{standAlone:!0})}},"3.12.0",{requires:["dd-drag","event-synthetic","event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures.js similarity index 88% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures.js index 161da77fba3..2e3ed5a7c3c 100644 --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-gestures', function (Y, NAME) { @@ -50,4 +56,4 @@ YUI.add('dd-gestures', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); +}, '3.12.0', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js index adfb6576c8b..70dc4cb2bda 100644 --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-plugin', function (Y, NAME) { @@ -203,4 +209,4 @@ YUI.add('dd-plugin', function (Y, NAME) { -}, '3.9.1', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); +}, '3.12.0', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js index 97e14496ba2..344fe1f6134 100644 --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-plugin",function(e,t){var n=function(t){e.Widget&&t.host instanceof e.Widget?(t.node=t.host.get("boundingBox"),t.widget=t.host):(t.node=t.host,t.widget=!1),n.superclass.constructor.call(this,t)},r="drag:start",i="drag:drag",s="drag:end";n.NAME="dd-plugin",n.NS="dd",e.extend(n,e.DD.Drag,{_widgetHandles:null,_widget:undefined,_stoppedPosition:undefined,_usesWidgetPosition:function(t){var n=!1;return t&&(n=t.hasImpl&&t.hasImpl(e.WidgetPosition)?!0:!1),n},_checkEvents:function(){this._widget&&(this.proxy?this._widgetHandles.length>0&&this._removeWidgetListeners():this._widgetHandles.length===0&&this._attachWidgetListeners())},_removeWidgetListeners:function(){e.Array.each(this._widgetHandles,function(e){e.detach()}),this._widgetHandles=[]},_attachWidgetListeners:function(){this._usesWidgetPosition(this._widget)&&(this._widgetHandles.push(this.on(i,this._setWidgetCoords)),this._widgetHandles.push(this.on(s,this._updateStopPosition)))},initializer:function(e){this._widgetHandles=[],this._widget=e.widget,this.on(r,this._checkEvents),this._attachWidgetListeners()},_setWidgetCoords:function(e){var t=this._stoppedPosition||e.target.nodeXY,n=e.target.realXY,r=[n[0]-t[0],n[1]-t[1]];r[0]!==0&&r[1]!==0?this._widget.set("xy",n):r[0]===0?this._widget.set("y",n[1]):r[1]===0&&this._widget.set("x",n[0])},_updateStopPosition:function(e){this._stoppedPosition=e.target.realXY}}),e.namespace("Plugin"),e.Plugin.Drag=n},"3.9.1",{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-plugin",function(e,t){var n=function(t){e.Widget&&t.host instanceof e.Widget?(t.node=t.host.get("boundingBox"),t.widget=t.host):(t.node=t.host,t.widget=!1),n.superclass.constructor.call(this,t)},r="drag:start",i="drag:drag",s="drag:end";n.NAME="dd-plugin",n.NS="dd",e.extend(n,e.DD.Drag,{_widgetHandles:null,_widget:undefined,_stoppedPosition:undefined,_usesWidgetPosition:function(t){var n=!1;return t&&(n=t.hasImpl&&t.hasImpl(e.WidgetPosition)?!0:!1),n},_checkEvents:function(){this._widget&&(this.proxy?this._widgetHandles.length>0&&this._removeWidgetListeners():this._widgetHandles.length===0&&this._attachWidgetListeners())},_removeWidgetListeners:function(){e.Array.each(this._widgetHandles,function(e){e.detach()}),this._widgetHandles=[]},_attachWidgetListeners:function(){this._usesWidgetPosition(this._widget)&&(this._widgetHandles.push(this.on(i,this._setWidgetCoords)),this._widgetHandles.push(this.on(s,this._updateStopPosition)))},initializer:function(e){this._widgetHandles=[],this._widget=e.widget,this.on(r,this._checkEvents),this._attachWidgetListeners()},_setWidgetCoords:function(e){var t=this._stoppedPosition||e.target.nodeXY,n=e.target.realXY,r=[n[0]-t[0],n[1]-t[1]];r[0]!==0&&r[1]!==0?this._widget.set("xy",n):r[0]===0?this._widget.set("y",n[1]):r[1]===0&&this._widget.set("x",n[0])},_updateStopPosition:function(e){this._stoppedPosition=e.target.realXY}}),e.namespace("Plugin"),e.Plugin.Drag=n},"3.12.0",{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin.js similarity index 96% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin.js index d461d859a17..15c3a3f389d 100644 --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-plugin', function (Y, NAME) { @@ -198,4 +204,4 @@ YUI.add('dd-plugin', function (Y, NAME) { -}, '3.9.1', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); +}, '3.12.0', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js index e27d0149da2..af0a6227733 100644 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-proxy', function (Y, NAME) { @@ -247,4 +253,4 @@ YUI.add('dd-proxy', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js index e47ca7ba2b0..b90d1c53a65 100644 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-proxy",function(e,t){var n=e.DD.DDM,r="node",i="dragNode",s="host",o=!0,u,a=function(){a.superclass.constructor.apply(this,arguments)};a.NAME="DDProxy",a.NS="proxy",a.ATTRS={host:{},moveOnEnd:{value:o},hideOnEnd:{value:o},resizeFrame:{value:o},positionProxy:{value:o},borderStyle:{value:"1px solid #808080"},cloneNode:{value:!1}},u={_hands:null,_init:function(){if(!n._proxy){n._createFrame(),e.on("domready",e.bind(this._init,this));return}this._hands||(this._hands=[]);var t,o,u=this.get(s),a=u.get(i);a.compareTo(u.get(r))&&n._proxy&&u.set(i,n._proxy),e.Array.each(this._hands,function(e){e.detach()}),t=n.on("ddm:start",e.bind(function(){n.activeDrag===u&&n._setFrame(u)},this)),o=n.on("ddm:end",e.bind(function(){u.get("dragging")&&(this.get("moveOnEnd")&&u.get(r).setXY(u.lastXY),this.get("hideOnEnd")&&u.get(i).setStyle("display","none"),this.get("cloneNode")&&(u.get(i).remove(),u.set(i,n._proxy)))},this)),this._hands=[t,o]},initializer:function(){this._init()},destructor:function(){var t=this.get(s);e.Array.each(this._hands,function(e){e.detach()}),t.set(i,t.get(r))},clone:function(){var t=this.get(s),n=t.get(r),o=n.cloneNode(!0);return delete o._yuid,o.setAttribute("id",e.guid()),o.setStyle("position","absolute"),n.get("parentNode").appendChild(o),t.set(i,o),o}},e.namespace("Plugin"),e.extend(a,e.Base,u),e.Plugin.DDProxy=a,e.mix(n,{_createFrame:function(){if(!n._proxy){n._proxy=o;var t=e.Node.create("
"),r=e.one("body");t.setStyles({position:"absolute",display:"none",zIndex:"999",top:"-999px",left:"-999px"}),r.prepend(t),t.set("id",e.guid()),t.addClass(n.CSS_PREFIX+"-proxy"),n._proxy=t}},_setFrame:function(e){var t=e.get(r),s=e.get(i),o,u="auto";o=n.activeDrag.get("activeHandle"),o&&(u=o.getStyle("cursor")),u==="auto"&&(u=n.get("dragCursor")),s.setStyles({visibility:"hidden",display:"block",cursor:u,border:e.proxy.get("borderStyle")}),e.proxy.get("cloneNode")&&(s=e.proxy.clone()),e.proxy.get("resizeFrame")&&s.setStyles({height:t.get("offsetHeight")+"px",width:t.get("offsetWidth")+"px"}),e.proxy.get("positionProxy")&&s.setXY(e.nodeXY),s.setStyle("visibility","visible")}})},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-proxy",function(e,t){var n=e.DD.DDM,r="node",i="dragNode",s="host",o=!0,u,a=function(){a.superclass.constructor.apply(this,arguments)};a.NAME="DDProxy",a.NS="proxy",a.ATTRS={host:{},moveOnEnd:{value:o},hideOnEnd:{value:o},resizeFrame:{value:o},positionProxy:{value:o},borderStyle:{value:"1px solid #808080"},cloneNode:{value:!1}},u={_hands:null,_init:function(){if(!n._proxy){n._createFrame(),e.on("domready",e.bind(this._init,this));return}this._hands||(this._hands=[]);var t,o,u=this.get(s),a=u.get(i);a.compareTo(u.get(r))&&n._proxy&&u.set(i,n._proxy),e.Array.each(this._hands,function(e){e.detach()}),t=n.on("ddm:start",e.bind(function(){n.activeDrag===u&&n._setFrame(u)},this)),o=n.on("ddm:end",e.bind(function(){u.get("dragging")&&(this.get("moveOnEnd")&&u.get(r).setXY(u.lastXY),this.get("hideOnEnd")&&u.get(i).setStyle("display","none"),this.get("cloneNode")&&(u.get(i).remove(),u.set(i,n._proxy)))},this)),this._hands=[t,o]},initializer:function(){this._init()},destructor:function(){var t=this.get(s);e.Array.each(this._hands,function(e){e.detach()}),t.set(i,t.get(r))},clone:function(){var t=this.get(s),n=t.get(r),o=n.cloneNode(!0);return delete o._yuid,o.setAttribute("id",e.guid()),o.setStyle("position","absolute"),n.get("parentNode").appendChild(o),t.set(i,o),o}},e.namespace("Plugin"),e.extend(a,e.Base,u),e.Plugin.DDProxy=a,e.mix(n,{_createFrame:function(){if(!n._proxy){n._proxy=o;var t=e.Node.create("
"),r=e.one("body");t.setStyles({position:"absolute",display:"none",zIndex:"999",top:"-999px",left:"-999px"}),r.prepend(t),t.set("id",e.guid()),t.addClass(n.CSS_PREFIX+"-proxy"),n._proxy=t}},_setFrame:function(e){var t=e.get(r),s=e.get(i),o,u="auto";o=n.activeDrag.get("activeHandle"),o&&(u=o.getStyle("cursor")),u==="auto"&&(u=n.get("dragCursor")),s.setStyles({visibility:"hidden",display:"block",cursor:u,border:e.proxy.get("borderStyle")}),e.proxy.get("cloneNode")&&(s=e.proxy.clone()),e.proxy.get("resizeFrame")&&s.setStyles({height:t.get("offsetHeight")+"px",width:t.get("offsetWidth")+"px"}),e.proxy.get("positionProxy")&&s.setXY(e.nodeXY),s.setStyle("visibility","visible")}})},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy.js similarity index 97% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy.js index e27d0149da2..af0a6227733 100644 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-proxy', function (Y, NAME) { @@ -247,4 +253,4 @@ YUI.add('dd-proxy', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js index 17de5425420..cb4424956fb 100644 --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-scroll', function (Y, NAME) { @@ -420,4 +426,4 @@ YUI.add('dd-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js similarity index 92% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js index 30c210f4d36..fae49be12b2 100644 --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r,i,s="host",o="buffer",u="parentScroll",a="windowScroll",f="scrollTop",l="scrollLeft",c="offsetWidth",h="offsetHeight";n.ATTRS={parentScroll:{value:!1,setter:function(e){return e?e:!1}},buffer:{value:30,validator:e.Lang.isNumber},scrollDelay:{value:235,validator:e.Lang.isNumber},host:{value:null},windowScroll:{value:!1,validator:e.Lang.isBoolean},vertical:{value:!0,validator:e.Lang.isBoolean},horizontal:{value:!0,validator:e.Lang.isBoolean}},e.extend(n,e.Base,{_scrolling:null,_vpRegionCache:null,_dimCache:null,_scrollTimer:null,_getVPRegion:function(){var e={},t=this.get(u),n=this.get(o),r=this.get(a),i=r?[]:t.getXY(),s=r?"winWidth":c,p=r?"winHeight":h,d=r?t.get(f):i[1],v=r?t.get(l):i[0];return e={top:d+n,right:t.get(s)+v-n,bottom:t.get(p)+d-n,left:v+n},this._vpRegionCache=e,e},initializer:function(){var t=this.get(s);t.after("drag:start",e.bind(this.start,this)),t.after("drag:end",e.bind(this.end,this)),t.on("drag:align",e.bind(this.align,this)),e.one("win").on("scroll",e.bind(function(){this._vpRegionCache=null},this))},_checkWinScroll:function(e){var t=this._getVPRegion(),n=this.get(s),r=this.get(a),i=n.lastXY,c=!1,h=this.get(o),p=this.get(u),d=p.get(f),v=p.get(l),m=this._dimCache.w,g=this._dimCache.h,y=i[1]+g,b=i[1],w=i[0]+m,E=i[0],S=b,x=E,T=d,N=v;this.get("horizontal")&&(E<=t.left&&(c=!0,x=i[0]-(r?h:0),N=v-h),w>=t.right&&(c=!0,x=i[0]+(r?h:0),N=v+h)),this.get("vertical")&&(y>=t.bottom&&(c=!0,S=i[1]+(r?h:0),T=d+h),b<=t.top&&(c=!0,S=i[1]-(r?h:0),T=d-h)),T<0&&(T=0,S=i[1]),N<0&&(N=0,x=i[0]),S<0&&(S=i[1]),x<0&&(x=i[0]),e?(n.actXY=[x,S],n._alignNode([x,S],!0),i=n.actXY,n.actXY=[x,S],n._moveNode({node:p,top:T,left:N}),!T&&!N&&this._cancelScroll()):c?this._initScroll():this._cancelScroll()},_initScroll:function(){this._cancelScroll(),this._scrollTimer=e.Lang.later(this.get("scrollDelay"),this,this._checkWinScroll,[!0],!0)},_cancelScroll:function(){this._scrolling=!1,this._scrollTimer&&(this._scrollTimer.cancel(),delete this._scrollTimer)},align:function(e){this._scrolling&&(this._cancelScroll(),e.preventDefault()),this._scrolling||this._checkWinScroll()},_setDimCache:function(){var e=this.get(s).get("dragNode");this._dimCache={h:e.get(h),w:e.get(c)}},start:function(){this._setDimCache()},end:function(){this._dimCache=null,this._cancelScroll()}}),e.namespace("Plugin"),r=function(){r.superclass.constructor.apply(this,arguments)},r.ATTRS=e.merge(n.ATTRS,{windowScroll:{value:!0,setter:function(t){return t&&this.set(u,e.one("win")),t}}}),e.extend(r,n,{initializer:function(){this.set("windowScroll",this.get("windowScroll"))}}),r.NAME=r.NS="winscroll",e.Plugin.DDWinScroll=r,i=function(){i.superclass.constructor.apply(this,arguments)},i.ATTRS=e.merge(n.ATTRS,{node:{value:!1,setter:function(t){var n=e.one(t);return n?this.set(u,n):t!==!1&&e.error("DDNodeScroll: Invalid Node Given: "+t),n}}}),e.extend(i,n,{initializer:function(){this.set("node",this.get("node"))}}),i.NAME=i.NS="nodescroll",e.Plugin.DDNodeScroll=i,e.DD.Scroll=n},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r,i,s="host",o="buffer",u="parentScroll",a="windowScroll",f="scrollTop",l="scrollLeft",c="offsetWidth",h="offsetHeight";n.ATTRS={parentScroll:{value:!1,setter:function(e){return e?e:!1}},buffer:{value:30,validator:e.Lang.isNumber},scrollDelay:{value:235,validator:e.Lang.isNumber},host:{value:null},windowScroll:{value:!1,validator:e.Lang.isBoolean},vertical:{value:!0,validator:e.Lang.isBoolean},horizontal:{value:!0,validator:e.Lang.isBoolean}},e.extend(n,e.Base,{_scrolling:null,_vpRegionCache:null,_dimCache:null,_scrollTimer:null,_getVPRegion:function(){var e={},t=this.get(u),n=this.get(o),r=this.get(a),i=r?[]:t.getXY(),s=r?"winWidth":c,p=r?"winHeight":h,d=r?t.get(f):i[1],v=r?t.get(l):i[0];return e={top:d+n,right:t.get(s)+v-n,bottom:t.get(p)+d-n,left:v+n},this._vpRegionCache=e,e},initializer:function(){var t=this.get(s);t.after("drag:start",e.bind(this.start,this)),t.after("drag:end",e.bind(this.end,this)),t.on("drag:align",e.bind(this.align,this)),e.one("win").on("scroll",e.bind(function(){this._vpRegionCache=null},this))},_checkWinScroll:function(e){var t=this._getVPRegion(),n=this.get(s),r=this.get(a),i=n.lastXY,c=!1,h=this.get(o),p=this.get(u),d=p.get(f),v=p.get(l),m=this._dimCache.w,g=this._dimCache.h,y=i[1]+g,b=i[1],w=i[0]+m,E=i[0],S=b,x=E,T=d,N=v;this.get("horizontal")&&(E<=t.left&&(c=!0,x=i[0]-(r?h:0),N=v-h),w>=t.right&&(c=!0,x=i[0]+(r?h:0),N=v+h)),this.get("vertical")&&(y>=t.bottom&&(c=!0,S=i[1]+(r?h:0),T=d+h),b<=t.top&&(c=!0,S=i[1]-(r?h:0),T=d-h)),T<0&&(T=0,S=i[1]),N<0&&(N=0,x=i[0]),S<0&&(S=i[1]),x<0&&(x=i[0]),e?(n.actXY=[x,S],n._alignNode([x,S],!0),i=n.actXY,n.actXY=[x,S],n._moveNode({node:p,top:T,left:N}),!T&&!N&&this._cancelScroll()):c?this._initScroll():this._cancelScroll()},_initScroll:function(){this._cancelScroll(),this._scrollTimer=e.Lang.later(this.get("scrollDelay"),this,this._checkWinScroll,[!0],!0)},_cancelScroll:function(){this._scrolling=!1,this._scrollTimer&&(this._scrollTimer.cancel(),delete this._scrollTimer)},align:function(e){this._scrolling&&(this._cancelScroll(),e.preventDefault()),this._scrolling||this._checkWinScroll()},_setDimCache:function(){var e=this.get(s).get("dragNode");this._dimCache={h:e.get(h),w:e.get(c)}},start:function(){this._setDimCache()},end:function(){this._dimCache=null,this._cancelScroll()}}),e.namespace("Plugin"),r=function(){r.superclass.constructor.apply(this,arguments)},r.ATTRS=e.merge(n.ATTRS,{windowScroll:{value:!0,setter:function(t){return t&&this.set(u,e.one("win")),t}}}),e.extend(r,n,{initializer:function(){this.set("windowScroll",this.get("windowScroll"))}}),r.NAME=r.NS="winscroll",e.Plugin.DDWinScroll=r,i=function(){i.superclass.constructor.apply(this,arguments)},i.ATTRS=e.merge(n.ATTRS,{node:{value:!1,setter:function(t){var n=e.one(t);return n?this.set(u,n):t!==!1&&e.error("DDNodeScroll: Invalid Node Given: "+t),n}}}),e.extend(i,n,{initializer:function(){this.set("node",this.get("node"))}}),i.NAME=i.NS="nodescroll",e.Plugin.DDNodeScroll=i,e.DD.Scroll=n},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll.js similarity index 98% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll.js index 17de5425420..cb4424956fb 100644 --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-scroll', function (Y, NAME) { @@ -420,4 +426,4 @@ YUI.add('dd-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dial/assets/dial-core.css b/lib/yuilib/3.12.0/dial/assets/dial-core.css similarity index 87% rename from lib/yuilib/3.9.1/build/dial/assets/dial-core.css rename to lib/yuilib/3.12.0/dial/assets/dial-core.css index c3e7971f675..583630b795b 100644 --- a/lib/yuilib/3.9.1/build/dial/assets/dial-core.css +++ b/lib/yuilib/3.12.0/dial/assets/dial-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval, v\:shadow, v\:fill { diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css b/lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css rename to lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css index b551f5e7708..8f51c903d0a 100644 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-dial { color:#fff; } diff --git a/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css b/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css new file mode 100644 index 00000000000..edbaa8b6f27 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-night .yui3-dial{color:#fff}.yui3-skin-night .yui3-dial-handle{background:#439ede;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-night .yui3-dial-ring{background:#595b5b;background:-moz-linear-gradient(0% 100% 315deg,#5e6060,#2d2e2f);background:-webkit-gradient(linear,50% 0,100% 100%,from(#636666),to(#424344));-moz-box-shadow:1px 1px 2px rgba(0,0,0,0.7) inset;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.7) inset;box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-night .yui3-dial-center-button{-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-webkit-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#999c9c 24%,#898989 41%,#535555 87%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#999c9c),to(#535555),color-stop(.2,#898989));cursor:pointer;opacity:.7}.yui3-skin-night .yui3-dial-reset-string{color:#fff;font-size:72%;text-decoration:none}.yui3-skin-night .yui3-dial-label{color:#cbcbcb;margin-bottom:.8em}.yui3-skin-night .yui3-dial-value-string{margin-left:.5em;color:#dcdcdc;font-size:130%}.yui3-skin-night .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-night .yui3-dial-north-mark{position:absolute;border-left:2px solid #434343;height:5px;left:50%;top:-7px;font-size:1px}.yui3-skin-night .yui3-dial-marker{background-color:#a0d8ff;opacity:.2;font-size:1px}.yui3-skin-night .yui3-dial-marker-max-min{background-color:#ff0404;opacity:.6}.yui3-skin-night .yui3-dial-ring-vml,.yui3-skin-night .yui3-dial-center-button-vml,.yui3-skin-night .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-night v\:oval.yui3-dial-marker-max-min,.yui3-skin-night .yui3-dial-marker-vml,.yui3-skin-night .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-night-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css rename to lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css index 09ba31d7ed5..a59cb2c1649 100644 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-dial-handle{ /*container. top left corner used for trig positioning*/ background:#6C3A3A; opacity:0.3; diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css rename to lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css index 055f89e143a..390f206c7a5 100644 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-sam .yui3-dial-handle{background:#6c3a3a;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-sam .yui3-dial-ring{background:#bebdb7;background:-moz-linear-gradient(100% 100% 135deg,#7b7a6d,#fff);background:-webkit-gradient(linear,left top,right bottom,from(#fff),to(#7b7a6d));box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-webkit-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-moz-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-sam .yui3-dial-center-button{box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#fbfbf9 24%,#f2f0ea 41%,#d3d0c3 83%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#fbfbf9),to(#d3d0c3),color-stop(.2,#f2f0ea));cursor:pointer;opacity:.7}.yui3-skin-sam .yui3-dial-reset-string{color:#676767;font-size:85%;text-decoration:underline}.yui3-skin-sam .yui3-dial-label{color:#808080;margin-bottom:.8em}.yui3-skin-sam .yui3-dial-value-string{margin-left:.5em;color:#000;font-size:130%}.yui3-skin-sam .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-sam .yui3-dial-north-mark{position:absolute;border-left:2px solid #ccc;height:5px;width:10px;left:50%;top:-7px;font-size:1px}.yui3-skin-sam .yui3-dial-marker{background-color:#000;opacity:.2;font-size:1px}.yui3-skin-sam .yui3-dial-marker-max-min{background-color:#ab3232;opacity:.6}.yui3-skin-sam .yui3-dial-ring-vml,.yui3-skin-sam .yui3-dial-center-button-vml,.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam .yui3-dial-marker-vml,.yui3-skin-sam .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-sam-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/dial/dial-debug.js b/lib/yuilib/3.12.0/dial/dial-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/dial/dial-debug.js rename to lib/yuilib/3.12.0/dial/dial-debug.js index 80b1075be37..342909509ad 100644 --- a/lib/yuilib/3.9.1/build/dial/dial-debug.js +++ b/lib/yuilib/3.12.0/dial/dial-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dial', function (Y, NAME) { /** @@ -729,9 +735,23 @@ YUI.add('dial', function (Y, NAME) { } } - // Now that _timesWrapped is set value ....................................................................... + // Now that _timesWrapped is set, set newValue ....................................................................... newValue = this._getValueFromAngle(ang); // This function needs the correct, current _timesWrapped value. - this._prevAng = ang; + + + /* updating _prevAng (previous angle) + * When past min or max, _prevAng is set to the angle of min or max + * Don't do this in a drag method, or it will affect wrapping, + * causing the marker to stick at min, when min is 0 degrees (north) + * #2532878 + */ + if (newValue > this._maxValue) { + this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag + } else if (newValue < this._minValue) { + this._prevAng = this._getAngleFromValue(this._minValue); + } else { + this._prevAng = ang; + } this._handleValuesBeyondMinMax(e, newValue); } @@ -739,6 +759,7 @@ YUI.add('dial', function (Y, NAME) { /** * handles the case where the value is less than min or greater than max + * This is used both when handle is dragged and when the ring is clicked * * @method _handleValuesBeyondMinMax * @param e {DOMEvent} the event object @@ -755,12 +776,10 @@ YUI.add('dial', function (Y, NAME) { // Delegate to DD's natural behavior this._dd1._handleMouseDownEvent(e); } - } else if(newValue > this._maxValue){ + } else if (newValue > this._maxValue) { this.set('value', this._maxValue); - this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag - } else if(newValue < this._minValue){ + } else if (newValue < this._minValue) { this.set('value', this._minValue); - this._prevAng = this._getAngleFromValue(this._minValue); } }, @@ -1296,7 +1315,7 @@ YUI.add('dial', function (Y, NAME) { Y.Dial = Dial; -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "dd-drag", @@ -1308,7 +1327,8 @@ YUI.add('dial', function (Y, NAME) { ], "lang": [ "en", - "es" + "es", + "hu" ], "skinnable": true }); diff --git a/lib/yuilib/3.9.1/build/dial/dial-min.js b/lib/yuilib/3.12.0/dial/dial-min.js similarity index 52% rename from lib/yuilib/3.9.1/build/dial/dial-min.js rename to lib/yuilib/3.12.0/dial/dial-min.js index 5f72beeba61..88ab802570b 100644 --- a/lib/yuilib/3.9.1/build/dial/dial-min.js +++ b/lib/yuilib/3.12.0/dial/dial-min.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("dial",function(e,t){function o(e){o.superclass.constructor.apply(this,arguments)}function u(t){return e.ClassNameManager.getClassName(o.NAME,t)}var n=!1;e.UA.ie&&e.UA.ie<9&&(n=!0);var r=e.Lang,i=e.Widget,s=e.Node;o.NAME="dial",o.ATTRS={min:{value:-220},max:{value:220},diameter:{value:100},handleDiameter:{value:.2},markerDiameter:{value:.1},centerButtonDiameter:{value:.5},value:{value:0,validator:function(e){return this._validateValue(e)}},minorStep:{value:1},majorStep:{value:10},stepsPerRevolution:{value:100},decimalPlaces:{value:0},strings:{valueFn:function(){return e.Intl.get("dial")}},handleDistance:{value:.75}},o.CSS_CLASSES={label:u("label"),labelString:u("label-string"),valueString:u("value-string"),northMark:u("north-mark"),ring:u("ring"),ringVml:u("ring-vml"),marker:u("marker"),markerVml:u("marker-vml"),markerMaxMin:u("marker-max-min"),centerButton:u("center-button"),centerButtonVml:u("center-button-vml"),resetString:u("reset-string"),handle:u("handle"),handleVml:u("handle-vml"),hidden:u("hidden"),dragging:e.ClassNameManager.getClassName("dd-dragging")},o.LABEL_TEMPLATE='
{label}
',n===!1?(o.RING_TEMPLATE='
',o.MARKER_TEMPLATE='
',o.CENTER_BUTTON_TEMPLATE='
{resetStr}
',o.HANDLE_TEMPLATE='
'):(o.RING_TEMPLATE='
'+'
'+''+"
"+"",o.MARKER_TEMPLATE='
'+''+''+""+"
"+"",o.CENTER_BUTTON_TEMPLATE='
'+''+''+''+""+'
{resetStr}
'+"
"+"",o.HANDLE_TEMPLATE='
'+''+''+""+"
"+""),e.extend(o,i,{renderUI:function(){this._renderLabel(),this._renderRing(),this._renderMarker(),this._renderCenterButton(),this._renderHandle(),this.contentBox=this.get("contentBox"),this._originalValue=this.get("value"),this._minValue=this.get("min"),this._maxValue=this.get("max"),this._stepsPerRevolution=this.get("stepsPerRevolution"),this._minTimesWrapped=Math.floor(this._minValue/this._stepsPerRevolution-1),this._maxTimesWrapped=Math.floor(this._maxValue/this._stepsPerRevolution+1),this._timesWrapped=0,this._angle=this._getAngleFromValue(this.get("value")),this._prevAng=this._angle,this._setTimesWrappedFromValue(this._originalValue),this._handleNode.set("aria-valuemin",this._minValue),this._handleNode.set("aria-valuemax",this._maxValue)},_setBorderRadius:function(){this._ringNode.setStyles({WebkitBorderRadius:this._ringNodeRadius+"px",MozBorderRadius:this._ringNodeRadius+"px",borderRadius:this._ringNodeRadius+"px"}),this._handleNode.setStyles({WebkitBorderRadius:this._handleNodeRadius+"px",MozBorderRadius:this._handleNodeRadius+"px",borderRadius:this._handleNodeRadius+"px"}),this._markerNode.setStyles({WebkitBorderRadius:this._markerNodeRadius+"px",MozBorderRadius:this._markerNodeRadius+"px",borderRadius:this._markerNodeRadius+"px"}),this._centerButtonNode.setStyles({WebkitBorderRadius:this._centerButtonNodeRadius+"px",MozBorderRadius:this._centerButtonNodeRadius+"px",borderRadius:this._centerButtonNodeRadius+"px"})},_handleCenterButtonEnter:function(){this._resetString.removeClass(o.CSS_CLASSES.hidden)},_handleCenterButtonLeave:function(){this._resetString.addClass(o.CSS_CLASSES.hidden)},bindUI:function(){this.after("valueChange",this._afterValueChange);var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta",o=e.DD.Drag;e.on("key",e.bind(this._onDirectionKey,this),t,r),e.on("key",e.bind(this._onLeftRightKey,this),t,i),t.on("key",this._onLeftRightKeyMeta,s,this),e.on("mouseenter",e.bind(this._handleCenterButtonEnter,this),this._centerButtonNode),e.on("mouseleave",e.bind(this._handleCenterButtonLeave,this),this._centerButtonNode),e.on("gesturemovestart",e.bind(this._resetDial,this),this._centerButtonNode),e.on("gesturemoveend",e.bind(this._handleCenterButtonMouseup,this),this._centerButtonNode),e.on(o.START_EVENT,e.bind(this._handleHandleMousedown,this),this._handleNode),e.on(o.START_EVENT,e.bind(this._handleMousedown,this),this._ringNode),e.on("gesturemoveend",e.bind(this._handleRingMouseup,this),this._ringNode),this._dd1=new o({node:this._handleNode,on:{"drag:drag":e.bind(this._handleDrag,this),"drag:start":e.bind(this._handleDragStart,this),"drag:end":e.bind(this._handleDragEnd,this)}}),e.bind(this._dd1.addHandle(this._ringNode),this)},_setTimesWrappedFromValue:function(e){e%this._stepsPerRevolution===0?this._timesWrapped=e/this._stepsPerRevolution:this._timesWrapped=Math.floor(e/this._stepsPerRevolution)},_getAngleFromHandleCenter:function(e,t){var n=Math.atan(( -this._dialCenterY-t)/(this._dialCenterX-e))*(180/Math.PI);return n=this._dialCenterX-e<0?n+90:n+90+180,n},_calculateDialCenter:function(){this._dialCenterX=this._ringNode.get("offsetWidth")/2,this._dialCenterY=this._ringNode.get("offsetHeight")/2},_handleRingMouseup:function(){this._handleNode.focus()},_handleCenterButtonMouseup:function(){this._handleNode.focus()},_handleHandleMousedown:function(){this._handleNode.focus()},_handleDrag:function(e){var t,n,r,i;t=parseInt(this._handleNode.getStyle("left"),10)+this._handleNodeRadius,n=parseInt(this._handleNode.getStyle("top"),10)+this._handleNodeRadius,r=this._getAngleFromHandleCenter(t,n),this._prevAng>270&&r<90?this._timesWrapped270&&this._timesWrapped>this._minTimesWrapped&&(this._timesWrapped=this._timesWrapped-1),i=this._getValueFromAngle(r),i>this._maxValue+this._stepsPerRevolution?this._timesWrapped--:ithis._stepsPerRevolution)Math.abs(this._prevAng-a)>180?this._timesWrapped>this._minTimesWrapped&&this._timesWrapped0?this._timesWrapped+1:this._timesWrapped-1):this._timesWrapped===this._minTimesWrapped&&a-this._prevAng<180&&this._timesWrapped++;else if(this._maxValue-this._minValue===this._stepsPerRevolution)ar)this._prevAng>=n&&a<=(n+r)/2?this._timesWrapped++:this._prevAng<=r&&a>(n+r)/2&&this._timesWrapped--;else if(ar){s=((n+r)/2+180)%360,s>180?i=ra&&a>s?this.get("min"):this.get("max"),this._prevAng=this._getAngleFromValue(i),this.set("value",i),this._setTimesWrappedFromValue(i);return}i=this._getValueFromAngle(a),this._prevAng=a,this._handleValuesBeyondMinMax(t,i)}},_handleValuesBeyondMinMax:function(e,t){t>=this._minValue&&t<=this._maxValue?(this.set("value",t),e.currentTarget===this._ringNode&&this._dd1._handleMouseDownEvent(e)):t>this._maxValue?(this.set("value",this._maxValue),this._prevAng=this._getAngleFromValue(this._maxValue)):tthis._minValue&&e=t&&e<=n}}),e.Dial=o},"3.9.1",{requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],lang:["en","es"],skinnable:!0}); +this._dialCenterY-t)/(this._dialCenterX-e))*(180/Math.PI);return n=this._dialCenterX-e<0?n+90:n+90+180,n},_calculateDialCenter:function(){this._dialCenterX=this._ringNode.get("offsetWidth")/2,this._dialCenterY=this._ringNode.get("offsetHeight")/2},_handleRingMouseup:function(){this._handleNode.focus()},_handleCenterButtonMouseup:function(){this._handleNode.focus()},_handleHandleMousedown:function(){this._handleNode.focus()},_handleDrag:function(e){var t,n,r,i;t=parseInt(this._handleNode.getStyle("left"),10)+this._handleNodeRadius,n=parseInt(this._handleNode.getStyle("top"),10)+this._handleNodeRadius,r=this._getAngleFromHandleCenter(t,n),this._prevAng>270&&r<90?this._timesWrapped270&&this._timesWrapped>this._minTimesWrapped&&(this._timesWrapped=this._timesWrapped-1),i=this._getValueFromAngle(r),i>this._maxValue+this._stepsPerRevolution?this._timesWrapped--:ithis._stepsPerRevolution)Math.abs(this._prevAng-a)>180?this._timesWrapped>this._minTimesWrapped&&this._timesWrapped0?this._timesWrapped+1:this._timesWrapped-1):this._timesWrapped===this._minTimesWrapped&&a-this._prevAng<180&&this._timesWrapped++;else if(this._maxValue-this._minValue===this._stepsPerRevolution)ar)this._prevAng>=n&&a<=(n+r)/2?this._timesWrapped++:this._prevAng<=r&&a>(n+r)/2&&this._timesWrapped--;else if(ar){s=((n+r)/2+180)%360,s>180?i=ra&&a>s?this.get("min"):this.get("max"),this._prevAng=this._getAngleFromValue(i),this.set("value",i),this._setTimesWrappedFromValue(i);return}i=this._getValueFromAngle(a),i>this._maxValue?this._prevAng=this._getAngleFromValue(this._maxValue):i=this._minValue&&t<=this._maxValue?(this.set("value",t),e.currentTarget===this._ringNode&&this._dd1._handleMouseDownEvent(e)):t>this._maxValue?this.set("value",this._maxValue):tthis._minValue&&e=t&&e<=n}}),e.Dial=o},"3.12.0",{requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],lang:["en","es","hu"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/dial/dial.js b/lib/yuilib/3.12.0/dial/dial.js similarity index 97% rename from lib/yuilib/3.9.1/build/dial/dial.js rename to lib/yuilib/3.12.0/dial/dial.js index 80b1075be37..342909509ad 100644 --- a/lib/yuilib/3.9.1/build/dial/dial.js +++ b/lib/yuilib/3.12.0/dial/dial.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dial', function (Y, NAME) { /** @@ -729,9 +735,23 @@ YUI.add('dial', function (Y, NAME) { } } - // Now that _timesWrapped is set value ....................................................................... + // Now that _timesWrapped is set, set newValue ....................................................................... newValue = this._getValueFromAngle(ang); // This function needs the correct, current _timesWrapped value. - this._prevAng = ang; + + + /* updating _prevAng (previous angle) + * When past min or max, _prevAng is set to the angle of min or max + * Don't do this in a drag method, or it will affect wrapping, + * causing the marker to stick at min, when min is 0 degrees (north) + * #2532878 + */ + if (newValue > this._maxValue) { + this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag + } else if (newValue < this._minValue) { + this._prevAng = this._getAngleFromValue(this._minValue); + } else { + this._prevAng = ang; + } this._handleValuesBeyondMinMax(e, newValue); } @@ -739,6 +759,7 @@ YUI.add('dial', function (Y, NAME) { /** * handles the case where the value is less than min or greater than max + * This is used both when handle is dragged and when the ring is clicked * * @method _handleValuesBeyondMinMax * @param e {DOMEvent} the event object @@ -755,12 +776,10 @@ YUI.add('dial', function (Y, NAME) { // Delegate to DD's natural behavior this._dd1._handleMouseDownEvent(e); } - } else if(newValue > this._maxValue){ + } else if (newValue > this._maxValue) { this.set('value', this._maxValue); - this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag - } else if(newValue < this._minValue){ + } else if (newValue < this._minValue) { this.set('value', this._minValue); - this._prevAng = this._getAngleFromValue(this._minValue); } }, @@ -1296,7 +1315,7 @@ YUI.add('dial', function (Y, NAME) { Y.Dial = Dial; -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "dd-drag", @@ -1308,7 +1327,8 @@ YUI.add('dial', function (Y, NAME) { ], "lang": [ "en", - "es" + "es", + "hu" ], "skinnable": true }); diff --git a/lib/yuilib/3.12.0/dial/lang/dial.js b/lib/yuilib/3.12.0/dial/lang/dial.js new file mode 100644 index 00000000000..9d2a7653271 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial",function(e){e.Intl.add("dial","",{label:"My label",resetStr:"Reset",tooltipHandle:"Drag to set value"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_en.js b/lib/yuilib/3.12.0/dial/lang/dial_en.js new file mode 100644 index 00000000000..b85723894f3 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_en",function(e){e.Intl.add("dial","en",{label:"My label",resetStr:"Reset",tooltipHandle:"Drag to set value"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_es.js b/lib/yuilib/3.12.0/dial/lang/dial_es.js new file mode 100644 index 00000000000..699ef8e79f1 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_es.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_es",function(e){e.Intl.add("dial","es",{label:"Mi etiqueta",resetStr:"Resetear",tooltipHandle:"Arrastre para ajustar el valor"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_hu.js b/lib/yuilib/3.12.0/dial/lang/dial_hu.js new file mode 100644 index 00000000000..cf86d981e2b --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_hu",function(e){e.Intl.add("dial","hu",{label:"Saj\u00e1t c\u00edmke",resetStr:"\u00dajrakezd",tooltipHandle:"H\u00e1zza az \u00e9rt\u00e9k be\u00e1ll\u00edt\u00e1s\u00e1hoz"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js b/lib/yuilib/3.12.0/dom-base/dom-base-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js rename to lib/yuilib/3.12.0/dom-base/dom-base-debug.js index dbd0b1ed789..24d81ed7e22 100644 --- a/lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-base', function (Y, NAME) { /** @@ -686,4 +692,4 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base-min.js b/lib/yuilib/3.12.0/dom-base/dom-base-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/dom-base/dom-base-min.js rename to lib/yuilib/3.12.0/dom-base/dom-base-min.js index 7ce57bcee85..c043f85bc2b 100644 --- a/lib/yuilib/3.9.1/build/dom-base/dom-base-min.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*
"}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix( -e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.9.1",{requires:["dom-core"]}); +e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.12.0",{requires:["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base.js b/lib/yuilib/3.12.0/dom-base/dom-base.js similarity index 99% rename from lib/yuilib/3.9.1/build/dom-base/dom-base.js rename to lib/yuilib/3.12.0/dom-base/dom-base.js index c0110345b05..f9030bcbfea 100644 --- a/lib/yuilib/3.9.1/build/dom-base/dom-base.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-base', function (Y, NAME) { /** @@ -682,4 +688,4 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js b/lib/yuilib/3.12.0/dom-core/dom-core-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js rename to lib/yuilib/3.12.0/dom-core/dom-core-debug.js index 51e49624b2a..fb74b665a9a 100644 --- a/lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -387,4 +393,4 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core-min.js b/lib/yuilib/3.12.0/dom-core/dom-core-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/dom-core/dom-core-min.js rename to lib/yuilib/3.12.0/dom-core/dom-core-min.js index 02201cc494d..539957bc024 100644 --- a/lib/yuilib/3.9.1/build/dom-core/dom-core-min.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.9.1",{requires:["oop","features"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.12.0",{requires:["oop","features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core.js b/lib/yuilib/3.12.0/dom-core/dom-core.js similarity index 98% rename from lib/yuilib/3.9.1/build/dom-core/dom-core.js rename to lib/yuilib/3.12.0/dom-core/dom-core.js index 51e49624b2a..fb74b665a9a 100644 --- a/lib/yuilib/3.9.1/build/dom-core/dom-core.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -387,4 +393,4 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js b/lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js index 39b381adbb0..49e118b2572 100644 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -609,4 +615,4 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js b/lib/yuilib/3.12.0/dom-screen/dom-screen-min.js similarity index 95% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen-min.js index a09dbf1971e..9f48f13ebe6 100644 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.9.1",{requires:["dom-base","dom-style"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.12.0",{requires:["dom-base","dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen.js b/lib/yuilib/3.12.0/dom-screen/dom-screen.js similarity index 99% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen.js index 6ad16ad7995..34bc9d99ac9 100644 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -603,4 +609,4 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js index 478e72dbe84..1bd5728b8af 100644 --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -304,4 +310,4 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js index 99efc0b7bc1..27537360a8f 100644 --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.9.1",{requires:["dom-style"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.12.0",{requires:["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js similarity index 98% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js index 06f14a6a9c8..f43345f1ff9 100644 --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -301,4 +307,4 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js b/lib/yuilib/3.12.0/dom-style/dom-style-debug.js similarity index 80% rename from lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js rename to lib/yuilib/3.12.0/dom-style/dom-style-debug.js index b5a62dcf548..25617033384 100644 --- a/lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js +++ b/lib/yuilib/3.12.0/dom-style/dom-style-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style', function (Y, NAME) { (function(Y) { @@ -262,80 +268,6 @@ Y_DOM.CUSTOM_STYLES.transformOrigin = { })(Y); -(function(Y) { -var PARSE_INT = parseInt, - RE = RegExp; - -Y.Color = { - KEYWORDS: { - black: '000', - silver: 'c0c0c0', - gray: '808080', - white: 'fff', - maroon: '800000', - red: 'f00', - purple: '800080', - fuchsia: 'f0f', - green: '008000', - lime: '0f0', - olive: '808000', - yellow: 'ff0', - navy: '000080', - blue: '00f', - teal: '008080', - aqua: '0ff' - }, - - re_RGB: /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i, - re_hex: /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i, - re_hex3: /([0-9A-F])/gi, - - toRGB: function(val) { - if (!Y.Color.re_RGB.test(val)) { - val = Y.Color.toHex(val); - } - - if(Y.Color.re_hex.exec(val)) { - val = 'rgb(' + [ - PARSE_INT(RE.$1, 16), - PARSE_INT(RE.$2, 16), - PARSE_INT(RE.$3, 16) - ].join(', ') + ')'; - } - return val; - }, - - toHex: function(val) { - val = Y.Color.KEYWORDS[val] || val; - if (Y.Color.re_RGB.exec(val)) { - val = [ - Number(RE.$1).toString(16), - Number(RE.$2).toString(16), - Number(RE.$3).toString(16) - ]; - - for (var i = 0; i < val.length; i++) { - if (val[i].length < 2) { - val[i] = '0' + val[i]; - } - } - - val = val.join(''); - } - - if (val.length < 6) { - val = val.replace(Y.Color.re_hex3, '$1$1'); - } - - if (val !== 'transparent' && val.indexOf('#') < 0) { - val = '#' + val; - } - - return val.toUpperCase(); - } -}; -})(Y); - -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base", "color-base"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style/dom-style-min.js b/lib/yuilib/3.12.0/dom-style/dom-style-min.js similarity index 67% rename from lib/yuilib/3.9.1/build/dom-style/dom-style-min.js rename to lib/yuilib/3.12.0/dom-style/dom-style-min.js index 332c7bdfdef..19f7398b93f 100644 --- a/lib/yuilib/3.9.1/build/dom-style/dom-style-min.js +++ b/lib/yuilib/3.12.0/dom-style/dom-style-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e),function(e){var t=parseInt,n=RegExp;e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},re_RGB:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,re_hex:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,re_hex3:/([0-9A-F])/gi,toRGB:function(r){return e.Color.re_RGB.test(r)||(r=e.Color.toHex(r)),e.Color.re_hex.exec(r)&&(r="rgb("+[t(n.$1,16),t(n.$2,16),t(n.$3,16)].join(", ")+")"),r},toHex:function(t){t=e.Color.KEYWORDS[t]||t;if(e.Color.re_RGB.exec(t)){t=[Number(n.$1).toString(16),Number(n.$2).toString(16),Number(n.$3).toString(16)];for(var r=0;r0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dump",function(e,t){var n=e.Lang,r="{...}",i="f(){...}",s=", ",o=" => ",u=function(e,t){var u,a,f=[],l=n.type(e);if(!n.isObject(e))return e+"";if(l=="date")return e;if(e.nodeType&&e.tagName)return e.tagName+"#"+e.id;if(e.document&&e.navigator)return"window";if(e.location&&e.body)return"document";if(l=="function")return i;t=n.isNumber(t)?t:3;if(l=="array"){f.push("[");for(u=0,a=e.length;u0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/dump/dump.js b/lib/yuilib/3.12.0/dump/dump.js similarity index 94% rename from lib/yuilib/3.9.1/build/dump/dump.js rename to lib/yuilib/3.12.0/dump/dump.js index 3f8ef4fa2a4..9b4dba4efa1 100644 --- a/lib/yuilib/3.9.1/build/dump/dump.js +++ b/lib/yuilib/3.12.0/dump/dump.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dump', function (Y, NAME) { /** @@ -103,4 +109,4 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js b/lib/yuilib/3.12.0/editor-base/editor-base-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js rename to lib/yuilib/3.12.0/editor-base/editor-base-debug.js index 6acbdeef326..81800776448 100644 --- a/lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-base', function (Y, NAME) { @@ -916,4 +922,4 @@ YUI.add('editor-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); +}, '3.12.0', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base-min.js b/lib/yuilib/3.12.0/editor-base/editor-base-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/editor-base/editor-base-min.js rename to lib/yuilib/3.12.0/editor-base/editor-base-min.js index b9ea50c3c32..c4da1251087 100644 --- a/lib/yuilib/3.9.1/build/editor-base/editor-base-min.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("editor-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r=":last-child",i="body";e.extend(n,e.Base,{frame:null,initializer:function(){var t=(new e.Frame({designMode:!0,title:n.STRINGS.title,use:n.USE,dir:this.get("dir"),extracss:this.get("extracss"),linkedcss:this.get("linkedcss"),defaultblock:this.get("defaultblock"),host:this})).plug(e.Plugin.ExecCommand);t.after("ready",e.bind(this._afterFrameReady,this)),t.addTarget(this),this.frame=t,this.publish("nodeChange",{emitFacade:!0,bubbles:!0,defaultFn:this._defNodeChangeFn})},destructor:function(){this.frame.destroy(),this.detachAll()},copyStyles:function(t,n){if(t.test("a"))return;var r=["color","fontSize","fontFamily","backgroundColor","fontStyle"],i={};e.each(r,function(e){i[e]=t.getStyle(e)}),t.ancestor("b,strong")&&(i.fontWeight="bold"),t.ancestor("u")&&(i.textDecoration||(i.textDecoration="underline")),n.setStyles(i)},_lastBookmark:null,_resolveChangedNode:function(e){var t=this.getInstance(),n,s,o,u;e&&e.test(i)&&(u=new t.EditorSelection,u&&u.anchorNode&&(e=u.anchorNode));if(t&&e&&e.test("html")){n=t.one(i).one(r);while(!o)n?(s=n.one(r),s?n=s:o=!0):o=!0;n&&(n.test("br")&&(n.previous()?n=n.previous():n=n.get("parentNode")),n&&(e=n))}return e||(e=t.one(i)),e},_defNodeChangeFn:function(t){var r=(new Date).getTime(),i=this.getInstance(),s,o,u,a={},f,l,c=[],h="",p="",d,v=!1;if(e.UA.ie)try{s=i.config.doc.selection.createRange(),s.getBookmark&&(this._lastBookmark=s.getBookmark())}catch(m){}t.changedNode=this._resolveChangedNode(t.changedNode);switch(t.changedType){case"tab":!t.changedNode.test("li, li *")&&!t.changedEvent.shiftKey&&(t.changedEvent.frameEvent.preventDefault(),e.UA.webkit?this.execCommand("inserttext"," "):e.UA.gecko?this.frame.exec._command("inserthtml",n.TABKEY):e.UA.ie&&this.execCommand("inserthtml",n.TABKEY));break;case"backspace-up":e.UA.webkit&&t.changedNode&&t.changedNode.set("innerHTML",t.changedNode.get("innerHTML"))}e.UA.webkit&&t.commands&&(t.commands.indent||t.commands.outdent)&&(d=i.all(".webkit-indent-blockquote, blockquote"),d.size()&&d.setStyle("margin","")),o=this.getDomPath(t.changedNode,!1),t.commands&&(a=t.commands),e.each(o,function(t){var r=t.tagName.toLowerCase(),s=n.TAG2CMD[r],o,u,d,m,g;s&&(a[s]=1),o=t.currentStyle||t.style,""+o.fontWeight=="normal"&&(v=!0),""+o.fontWeight=="bold"&&(a.bold=1),e.UA.ie&&o.fontWeight>400&&(a.bold=1),o.fontStyle==="italic"&&(a.italic=1),o.textDecoration.indexOf("underline")>-1&&(a.underline=1),o.textDecoration.indexOf("line-through")>-1&&(a.strikethrough=1),u=i.one(t),u.getStyle("fontFamily")&&(d=u.getStyle("fontFamily").split(",")[0].toLowerCase(),d&&(f=d),f&&(f=f.replace(/'/g,"").replace(/"/g,""))),l=n.NORMALIZE_FONTSIZE(u),m=t.className.split(" "),e.each(m,function(e){e!==""&&e.substr(0,4)!=="yui_"&&c.push(e)}),h=n.FILTER_RGB(u.getStyle("color")),g=n.FILTER_RGB(o.backgroundColor),g!=="transparent"&&g!==""&&(p=g)}),v&&(delete a.bold,delete a.italic),t.dompath=i.all(o),t.classNames=c,t.commands=a,t.fontFamily||(t.fontFamily=f),t.fontSize||(t.fontSize=l),t.fontColor||(t.fontColor=h),t.backgroundColor||(t.backgroundColor=p),u=(new Date).getTime()},getDomPath:function(e,t){var n=[],r,i=this.frame.getInstance();r=i.Node.getDOMNode(e);while(r!==null){if(r===i.config.doc.documentElement||r===i.config.doc||!r.tagName){r=null;break}if(!i.DOM.inDoc(r)){r=null;break}r.nodeName&&r.nodeType&&r.nodeType===1&&n.push(r);if(r===i.config.doc.body){r=null;break}r=r.parentNode}return n.length===0&&(n[0]=i.config.doc.body),t?i.all(n.reverse()):n.reverse()},_afterFrameReady:function(){var t=this.frame.getInstance();this.frame.on("dom:mouseup",e.bind(this._onFrameMouseUp,this)),this.frame.on("dom:mousedown",e.bind(this._onFrameMouseDown,this)),this.frame.on("dom:keydown",e.bind(this._onFrameKeyDown,this)),e.UA.ie&&(this.frame.on("dom:activate",e.bind(this._onFrameActivate,this)),this.frame.on("dom:beforedeactivate",e.bind(this._beforeFrameDeactivate,this))),this.frame.on("dom:keyup",e.bind(this._onFrameKeyUp,this)),this.frame.on("dom:keypress",e.bind(this._onFrameKeyPress,this)),this.frame.on("dom:paste",e.bind(this._onPaste,this)),t.EditorSelection.filter(),this.fire("ready")},_beforeFrameDeactivate:function(e){if(e.frameTarget.test("html"))return;var t=this.getInstance(),n=t.config.doc.selection.createRange();n.compareEndPoints&&!n.compareEndPoints("StartToEnd",n)&&n.pasteHTML('')},_onFrameActivate:function(e){if(e.frameTarget.test("html"))return;var t=this.getInstance(),n=new t.EditorSelection,r=n.createRange(),i=t.all("#yui-ie-cursor");i.size()&&i.each(function(e){e.set("id","");if(r.moveToElementText)try{r.moveToElementText(e._node);var t=r.move("character",-1);t===-1&&r.move("character",1),r.select(),r.text=""}catch(n){}e.remove()})},_onPaste:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"paste",changedEvent:e.frameEvent})},_onFrameMouseUp:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"mouseup",changedEvent:e.frameEvent})},_onFrameMouseDown:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"mousedown",changedEvent:e.frameEvent})},_currentSelection:null,_currentSelectionTimer:null,_currentSelectionClear:null,_onFrameKeyDown:function(t){var r,i;this._currentSelection?i=this._currentSelection:(this._currentSelectionTimer&&this._currentSelectionTimer.cancel(),this._currentSelectionTimer=e.later(850,this,function(){this._currentSelectionClear=!0}),r=this.frame.getInstance(),i=new r.EditorSelection(t),this._currentSelection=i),r=this.frame.getInstance(),i=new r.EditorSelection,this._currentSelection=i,i&&i.anchorNode&&(this.fire("nodeChange",{changedNode:i.anchorNode,changedType:"keydown",changedEvent:t.frameEvent}),n.NC_KEYS[t.keyCode]&&(this.fire("nodeChange",{changedNode:i.anchorNode,changedType:n.NC_KEYS[t.keyCode],changedEvent:t.frameEvent}),this.fire("nodeChange",{changedNode:i.anchorNode,changedType:n.NC_KEYS[t.keyCode]+"-down",changedEvent -:t.frameEvent})))},_onFrameKeyPress:function(e){var t=this._currentSelection;t&&t.anchorNode&&(this.fire("nodeChange",{changedNode:t.anchorNode,changedType:"keypress",changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:t.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-press",changedEvent:e.frameEvent}))},_onFrameKeyUp:function(e){var t=this.frame.getInstance(),r=new t.EditorSelection(e);r&&r.anchorNode&&(this.fire("nodeChange",{changedNode:r.anchorNode,changedType:"keyup",selection:r,changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:r.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-up",selection:r,changedEvent:e.frameEvent})),this._currentSelectionClear&&(this._currentSelectionClear=this._currentSelection=null)},execCommand:function(e,t){var n=this.frame.execCommand(e,t),r=this.frame.getInstance(),i=new r.EditorSelection,s={},o={changedNode:i.anchorNode,changedType:"execcommand",nodes:n};switch(e){case"forecolor":o.fontColor=t;break;case"backcolor":o.backgroundColor=t;break;case"fontsize":o.fontSize=t;break;case"fontname":o.fontFamily=t}return s[e]=1,o.commands=s,this.fire("nodeChange",o),n},getInstance:function(){return this.frame.getInstance()},render:function(e){return this.frame.set("content",this.get("content")),this.frame.render(e),this},focus:function(e){return this.frame.focus(e),this},show:function(){return this.frame.show(),this},hide:function(){return this.frame.hide(),this},getContent:function(){var e="",t=this.getInstance();return t&&t.EditorSelection&&(e=t.EditorSelection.unfilter()),e=e.replace(/ _yuid="([^>]*)"/g,""),e}},{NORMALIZE_FONTSIZE:function(e){var t=e.getStyle("fontSize"),n=t;switch(t){case"-webkit-xxx-large":t="48px";break;case"xx-large":t="32px";break;case"x-large":t="24px";break;case"large":t="18px";break;case"medium":t="16px";break;case"small":t="13px";break;case"x-small":t="10px"}return n!==t&&e.setStyle("fontSize",t),t},TABKEY:'    ',FILTER_RGB:function(e){if(e.toLowerCase().indexOf("rgb")!==-1){var t=new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)","gi"),n=e.replace(t,"$1,$2,$3,$4,$5").split(","),r,i,s;n.length===5&&(r=parseInt(n[1],10).toString(16),i=parseInt(n[2],10).toString(16),s=parseInt(n[3],10).toString(16),r=r.length===1?"0"+r:r,i=i.length===1?"0"+i:i,s=s.length===1?"0"+s:s,e="#"+r+i+s)}return e},TAG2CMD:{b:"bold",strong:"bold",i:"italic",em:"italic",u:"underline",sup:"superscript",sub:"subscript",img:"insertimage",a:"createlink",ul:"insertunorderedlist",ol:"insertorderedlist"},NC_KEYS:{8:"backspace",9:"tab",13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",46:"delete"},USE:["node","selector-css3","editor-selection","stylesheet"],NAME:"editorBase",STRINGS:{title:"Rich Text Editor"},ATTRS:{content:{value:'
',setter:function(t){return t.substr(0,1)==="\n"&&(t=t.substr(1)),t===""&&(t='
'),t===" "&&e.UA.gecko&&(t='
'),this.frame.set("content",t)},getter:function(){return this.frame.get("content")}},dir:{writeOnce:!0,value:"ltr"},linkedcss:{value:"",setter:function(e){return this.frame&&this.frame.set("linkedcss",e),e}},extracss:{value:!1,setter:function(e){return this.frame&&this.frame.set("extracss",e),e}},defaultblock:{value:"p"}}}),e.EditorBase=n},"3.9.1",{requires:["base","frame","node","exec-command","editor-selection"]}); +:t.frameEvent})))},_onFrameKeyPress:function(e){var t=this._currentSelection;t&&t.anchorNode&&(this.fire("nodeChange",{changedNode:t.anchorNode,changedType:"keypress",changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:t.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-press",changedEvent:e.frameEvent}))},_onFrameKeyUp:function(e){var t=this.frame.getInstance(),r=new t.EditorSelection(e);r&&r.anchorNode&&(this.fire("nodeChange",{changedNode:r.anchorNode,changedType:"keyup",selection:r,changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:r.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-up",selection:r,changedEvent:e.frameEvent})),this._currentSelectionClear&&(this._currentSelectionClear=this._currentSelection=null)},execCommand:function(e,t){var n=this.frame.execCommand(e,t),r=this.frame.getInstance(),i=new r.EditorSelection,s={},o={changedNode:i.anchorNode,changedType:"execcommand",nodes:n};switch(e){case"forecolor":o.fontColor=t;break;case"backcolor":o.backgroundColor=t;break;case"fontsize":o.fontSize=t;break;case"fontname":o.fontFamily=t}return s[e]=1,o.commands=s,this.fire("nodeChange",o),n},getInstance:function(){return this.frame.getInstance()},render:function(e){return this.frame.set("content",this.get("content")),this.frame.render(e),this},focus:function(e){return this.frame.focus(e),this},show:function(){return this.frame.show(),this},hide:function(){return this.frame.hide(),this},getContent:function(){var e="",t=this.getInstance();return t&&t.EditorSelection&&(e=t.EditorSelection.unfilter()),e=e.replace(/ _yuid="([^>]*)"/g,""),e}},{NORMALIZE_FONTSIZE:function(e){var t=e.getStyle("fontSize"),n=t;switch(t){case"-webkit-xxx-large":t="48px";break;case"xx-large":t="32px";break;case"x-large":t="24px";break;case"large":t="18px";break;case"medium":t="16px";break;case"small":t="13px";break;case"x-small":t="10px"}return n!==t&&e.setStyle("fontSize",t),t},TABKEY:'    ',FILTER_RGB:function(e){if(e.toLowerCase().indexOf("rgb")!==-1){var t=new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)","gi"),n=e.replace(t,"$1,$2,$3,$4,$5").split(","),r,i,s;n.length===5&&(r=parseInt(n[1],10).toString(16),i=parseInt(n[2],10).toString(16),s=parseInt(n[3],10).toString(16),r=r.length===1?"0"+r:r,i=i.length===1?"0"+i:i,s=s.length===1?"0"+s:s,e="#"+r+i+s)}return e},TAG2CMD:{b:"bold",strong:"bold",i:"italic",em:"italic",u:"underline",sup:"superscript",sub:"subscript",img:"insertimage",a:"createlink",ul:"insertunorderedlist",ol:"insertorderedlist"},NC_KEYS:{8:"backspace",9:"tab",13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",46:"delete"},USE:["node","selector-css3","editor-selection","stylesheet"],NAME:"editorBase",STRINGS:{title:"Rich Text Editor"},ATTRS:{content:{value:'
',setter:function(t){return t.substr(0,1)==="\n"&&(t=t.substr(1)),t===""&&(t='
'),t===" "&&e.UA.gecko&&(t='
'),this.frame.set("content",t)},getter:function(){return this.frame.get("content")}},dir:{writeOnce:!0,value:"ltr"},linkedcss:{value:"",setter:function(e){return this.frame&&this.frame.set("linkedcss",e),e}},extracss:{value:!1,setter:function(e){return this.frame&&this.frame.set("extracss",e),e}},defaultblock:{value:"p"}}}),e.EditorBase=n},"3.12.0",{requires:["base","frame","node","exec-command","editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base.js b/lib/yuilib/3.12.0/editor-base/editor-base.js similarity index 99% rename from lib/yuilib/3.9.1/build/editor-base/editor-base.js rename to lib/yuilib/3.12.0/editor-base/editor-base.js index bfc13fec5ec..af8c518051b 100644 --- a/lib/yuilib/3.9.1/build/editor-base/editor-base.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-base', function (Y, NAME) { @@ -913,4 +919,4 @@ YUI.add('editor-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); +}, '3.12.0', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js rename to lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js index 32320b704c1..8ce8e4b7f46 100644 --- a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js +++ b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-bidi', function (Y, NAME) { @@ -335,4 +341,4 @@ YUI.add('editor-bidi', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js similarity index 92% rename from lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js rename to lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js index 6787f5c9a22..4c989506840 100644 --- a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js +++ b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-bidi",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="dir",s="BODY",o="nodeChange",u="bidiContextChange",a="style";e.extend(n,e.Base,{lastDirection:null,firstEvent:null,_checkForChange:function(){var e=this.get(r),t=e.getInstance(),i=new t.EditorSelection,s,o;i.isCollapsed?(s=n.blockParent(i.focusNode),s&&(o=s.getStyle("direction"),o!==this.lastDirection&&(e.fire(u,{changedTo:o}),this.lastDirection=o))):(e.fire(u,{changedTo:"select"}),this.lastDirection=null)},_afterNodeChange:function(e){if(this.firstEvent||n.EVENTS[e.changedType])this._checkForChange(),this.firstEvent=!1},_afterMouseUp:function(){this._checkForChange(),this.firstEvent=!1},initializer:function(){var t=this.get(r);this.firstEvent=!0,t.after(o,e.bind(this._afterNodeChange,this)),t.after("dom:mouseup",e.bind(this._afterMouseUp,this))}},{EVENTS:{"backspace-up":!0,"pageup-up":!0,"pagedown-down":!0,"end-up":!0,"home-up":!0,"left-up":!0,"up-up":!0,"right-up":!0,"down-up":!0,"delete-up":!0},BLOCKS:e.EditorSelection.BLOCKS,DIV_WRAPPER:"
",blockParent:function(t,r){var i=t,o,u;return i||(i=e.one(s)),i.test(n.BLOCKS)||(i=i.ancestor(n.BLOCKS)),r&&i.test(s)&&(o=e.Node.create(n.DIV_WRAPPER),i.get("children").each(function(e,t){t===0?u=e:o.append(e)}),u.replace(o),o.prepend(u),i=o),i},_NODE_SELECTED:"bidiSelected",addParents:function(e){var t,r,i;tester=function(e){if(!e.getData(n._NODE_SELECTED))return i=!1,!0};for(t=0;t",blockParent:function(t,r){var i=t,o,u;return i||(i=e.one(s)),i.test(n.BLOCKS)||(i=i.ancestor(n.BLOCKS)),r&&i.test(s)&&(o=e.Node.create(n.DIV_WRAPPER),i.get("children").each(function(e,t){t===0?u=e:o.append(e)}),u.replace(o),o.prepend(u),i=o),i},_NODE_SELECTED:"bidiSelected",addParents:function(e){var t,r,i;tester=function(e){if(!e.getData(n._NODE_SELECTED))return i=!1,!0};for(t=0;t"),a.previous(r).append(f),f.append(a),h=!0)),h&&(a.test(r)||(a=a.ancestor(r)),a.all(n.REMOVE).remove(),e.UA.ie&&(a=a.append(n.NON).one(n.NON_SEL)),(new u.EditorSelection).selectNode(a,!0,d)))},initializer:function(){this.get(o).on("nodeChange",e.bind(this._onNodeChange,this))}},{NON:' ',NON_SEL:"span.yui-non",REMOVE:"br",NAME:"editorLists",NS:"lists",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorLists=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-lists",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="li",i="ol",s="ul",o="host";e.extend(n,e.Base,{_onNodeChange:function(t){var u=this.get(o).getInstance(),a,f,l,c,h=!1,p,d=!1;t.changedType==="tab"&&(t.changedNode.test(r+", "+r+" *")&&(t.changedEvent.halt(),t.preventDefault(),a=t.changedNode,l=t.changedEvent.shiftKey,c=a.ancestor(i+","+s),p=s,c.get("tagName").toLowerCase()===i&&(p=i),a.test(r)||(a=a.ancestor(r)),l?a.ancestor(r)&&(a.ancestor(r).insert(a,"after"),h=!0,d=!0):a.previous(r)&&(f=u.Node.create("<"+p+">"),a.previous(r).append(f),f.append(a),h=!0)),h&&(a.test(r)||(a=a.ancestor(r)),a.all(n.REMOVE).remove(),e.UA.ie&&(a=a.append(n.NON).one(n.NON_SEL)),(new u.EditorSelection).selectNode(a,!0,d)))},initializer:function(){this.get(o).on("nodeChange",e.bind(this._onNodeChange,this))}},{NON:' ',NON_SEL:"span.yui-non",REMOVE:"br",NAME:"editorLists",NS:"lists",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorLists=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-lists/editor-lists.js b/lib/yuilib/3.12.0/editor-lists/editor-lists.js similarity index 95% rename from lib/yuilib/3.9.1/build/editor-lists/editor-lists.js rename to lib/yuilib/3.12.0/editor-lists/editor-lists.js index c911226aceb..72e66224729 100644 --- a/lib/yuilib/3.9.1/build/editor-lists/editor-lists.js +++ b/lib/yuilib/3.12.0/editor-lists/editor-lists.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-lists', function (Y, NAME) { @@ -120,4 +126,4 @@ YUI.add('editor-lists', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js index 247ff64f5c6..b543948d9b7 100644 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-base', function (Y, NAME) { @@ -121,4 +127,4 @@ YUI.add('editor-para-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js similarity index 84% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js index 3bc69791f22..b71f33cca47 100644 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s=i+" > p",o="p",u="
";e.extend(n,e.Base,{_fixFirstPara:function(){var e=this.get(r),t=e.getInstance(),n,i,a=t.config.doc.body,f=a.innerHTML,l=f.length?!0:!1;f===u&&(f="",l=!1),a.innerHTML="<"+o+">"+f+t.EditorSelection.CURSOR+"",i=t.one(s),n=new t.EditorSelection,n.selectNode(i,!0,l)},_afterEditorReady:function(){var e=this.get(r),t=e.getInstance(),n;t&&(t.EditorSelection.filterBlocks(),n=t.EditorSelection.DEFAULT_BLOCK_TAG,s=i+" > "+n,o=n)},_afterContentChange:function(){var e=this.get(r),t=e.getInstance();t&&t.EditorSelection&&t.EditorSelection.filterBlocks()},_afterPaste:function(){var t=this.get(r),n=t.getInstance();e.later(50,t,function(){n.EditorSelection.filterBlocks()})},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.after("ready",e.bind(this._afterEditorReady,this)),t.after("contentChange",e.bind(this._afterContentChange,this)),e.Env.webkit&&t.after("dom:paste",e.bind(this._afterPaste,this))}},{NAME:"editorParaBase",NS:"editorParaBase",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorParaBase=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s=i+" > p",o="p",u="
";e.extend(n,e.Base,{_fixFirstPara:function(){var e=this.get(r),t=e.getInstance(),n,i,a=t.config.doc.body,f=a.innerHTML,l=f.length?!0:!1;f===u&&(f="",l=!1),a.innerHTML="<"+o+">"+f+t.EditorSelection.CURSOR+"",i=t.one(s),n=new t.EditorSelection,n.selectNode(i,!0,l)},_afterEditorReady:function(){var e=this.get(r),t=e.getInstance(),n;t&&(t.EditorSelection.filterBlocks(),n=t.EditorSelection.DEFAULT_BLOCK_TAG,s=i+" > "+n,o=n)},_afterContentChange:function(){var e=this.get(r),t=e.getInstance();t&&t.EditorSelection&&t.EditorSelection.filterBlocks()},_afterPaste:function(){var t=this.get(r),n=t.getInstance();e.later(50,t,function(){n.EditorSelection.filterBlocks()})},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.after("ready",e.bind(this._afterEditorReady,this)),t.after("contentChange",e.bind(this._afterContentChange,this)),e.Env.webkit&&t.after("dom:paste",e.bind(this._afterPaste,this))}},{NAME:"editorParaBase",NS:"editorParaBase",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorParaBase=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base.js similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base.js index 257b561b1ec..fed985cea26 100644 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-base', function (Y, NAME) { @@ -120,4 +126,4 @@ YUI.add('editor-para-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js similarity index 95% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js index 66879585e37..4b6c98c43e9 100644 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-ie', function (Y, NAME) { @@ -123,4 +129,4 @@ YUI.add('editor-para-ie', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js index 2aaab5df236..4943aa59bd6 100644 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para-ie",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="nodeChange",s="p";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(e){var t=this.get(r),n=t.getInstance(),i=n.EditorSelection.DEFAULT_BLOCK_TAG,o,u=":last-child",a,f,l,c,h,p=!1;switch(e.changedType){case"enter-up":a=this._lastPara?this._lastPara:e.changedNode,f=a.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,f&&(f.previous()||f.next())&&f.ancestor(s)&&f.remove(),a.test(i)||(l=a.ancestor(i),l&&(a=l,l=null));if(a.test(i)){o=a.previous();if(o){c=o.one(u);while(!p)c?(h=c.one(u),h?c=h:p=!0):p=!0;c&&t.copyStyles(c,a)}}break;case"enter":e.changedNode.test("br")?e.changedNode.remove():e.changedNode.test("p, span")&&(f=e.changedNode.one("br.yui-cursor"),f&&f.remove())}},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(i,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.9.1",{requires:["editor-para-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para-ie",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="nodeChange",s="p";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(e){var t=this.get(r),n=t.getInstance(),i=n.EditorSelection.DEFAULT_BLOCK_TAG,o,u=":last-child",a,f,l,c,h,p=!1;switch(e.changedType){case"enter-up":a=this._lastPara?this._lastPara:e.changedNode,f=a.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,f&&(f.previous()||f.next())&&f.ancestor(s)&&f.remove(),a.test(i)||(l=a.ancestor(i),l&&(a=l,l=null));if(a.test(i)){o=a.previous();if(o){c=o.one(u);while(!p)c?(h=c.one(u),h?c=h:p=!0):p=!0;c&&t.copyStyles(c,a)}}break;case"enter":e.changedNode.test("br")?e.changedNode.remove():e.changedNode.test("p, span")&&(f=e.changedNode.one("br.yui-cursor"),f&&f.remove())}},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(i,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.12.0",{requires:["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js similarity index 95% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js index 66879585e37..4b6c98c43e9 100644 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-ie', function (Y, NAME) { @@ -123,4 +129,4 @@ YUI.add('editor-para-ie', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js b/lib/yuilib/3.12.0/editor-para/editor-para-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js rename to lib/yuilib/3.12.0/editor-para/editor-para-debug.js index e2f6d971538..09ced3919d8 100644 --- a/lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para', function (Y, NAME) { @@ -300,4 +306,4 @@ YUI.add('editor-para', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para-min.js b/lib/yuilib/3.12.0/editor-para/editor-para-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para/editor-para-min.js rename to lib/yuilib/3.12.0/editor-para/editor-para-min.js index 01e4c46d14a..1a922f1d900 100644 --- a/lib/yuilib/3.9.1/build/editor-para/editor-para-min.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s="nodeChange",o="parentNode",u=i+" > p",a="p",f="
",l="firstChild",c="li";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(t){var n=this.get(r),s=n.getInstance(),h,p,d,v,m,g=s.EditorSelection.DEFAULT_BLOCK_TAG,y,b,w,E,S,x,T,N,C,k,L,A,O,M,_,D,H=":last-child",B,j,F,I,q,R=!1,U;switch(t.changedType){case"enter-up":B=this._lastPara?this._lastPara:t.changedNode,j=B.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,j&&(j.previous()||j.next())&&j.ancestor(a)&&j.remove(),B.test(g)||(C=B.ancestor(g),C&&(B=C,C=null));if(B.test(g)){k=B.previous();if(k){I=k.one(H);while(!R)I?(q=I.one(H),q?I=q:R=!0):R=!0;I&&n.copyStyles(I,B)}}break;case"enter":e.UA.webkit&&t.changedEvent.shiftKey&&(n.execCommand("insertbr"),t.changedEvent.preventDefault()),t.changedNode.test("li")&&!e.UA.ie&&(h=s.EditorSelection.getText(t.changedNode),h===""&&(d=t.changedNode.ancestor("ol,ul"),F=d.getAttribute("dir"),F!==""&&(F=' dir = "'+F+'"'),d=t.changedNode.ancestor(s.EditorSelection.BLOCKS),v=s.Node.create(""+s.EditorSelection.CURSOR+"

"),d.insert(v,"after"),t.changedNode.remove(),t.changedEvent.halt(),m=new s.EditorSelection,m.selectNode(v,!0,!1)));if(e.UA.gecko&&n.get("defaultblock")!=="p"){d=t.changedNode;if(!d.test(c)&&!d.ancestor(c)){d.test(g)||(d=d.ancestor(g)),v=s.Node.create("<"+g+">"),d.insert(v,"after"),m=new s.EditorSelection;if(m.anchorOffset){y=m.anchorNode.get("textContent"),p=s.one(s.config.doc.createTextNode(y.substr(0,m.anchorOffset))),b=s.one(s.config.doc.createTextNode(y.substr(m.anchorOffset))),E=m.anchorNode,E.setContent(""),S=E.cloneNode(),S.append(b),x=!1,N=E;while(!x)N=N.get(o),N&&!N.test(g)?(T=N.cloneNode(),T.set("innerHTML",""),T.append(S),w=N.get("childNodes"),U=!1,w.each(function(e){U&&T.append(e),e===E&&(U=!0)}),E=N,S=T):x=!0;b=S,m.anchorNode.append(p),b&&v.append(b)}v.get(l)&&(v=v.get(l)),v.prepend(s.EditorSelection.CURSOR),m.focusCursor(!0,!0),h=s.EditorSelection.getText(v),h!==""&&s.EditorSelection.cleanCursor(),t.changedEvent.preventDefault()}}break;case"keyup":e.UA.gecko&&s.config.doc&&s.config.doc.body&&s.config.doc.body.innerHTML.length<20&&(s.one(u)||this._fixFirstPara());break;case"backspace-up":case"backspace-down":case"delete-up":e.UA.ie||(L=s.all(u),O=s.one(i),L.item(0)&&(O=L.item(0)),A=O.one("br"),A&&(A.removeAttribute("id"),A.removeAttribute("class")),p=s.EditorSelection.getText(O),p=p.replace(/ /g,"").replace(/\n/g,""),_=O.all("img"),p.length===0&&!_.size()&&(O.test(a)||this._fixFirstPara(),M=null,t.changedNode&&t.changedNode.test(a)&&(M=t.changedNode),!M&&n._lastPara&&n._lastPara.inDoc()&&(M=n._lastPara),M&&!M.test(a)&&(M=M.ancestor(a)),M&&!M.previous()&&M.get(o)&&M.get(o).test(i)&&(t.changedEvent.frameEvent.halt(),t.preventDefault())),e.UA.webkit&&t.changedNode&&(t.preventDefault(),O=t.changedNode,O.test("li")&&!O.previous()&&!O.next()&&(h=O.get("innerHTML").replace(f,""),h===""&&O.get(o)&&(O.get(o).replace(s.Node.create(f)),t.changedEvent.frameEvent.halt(),s.EditorSelection.filterBlocks())))),e.UA.gecko&&(v=t.changedNode,D=s.config.doc.createTextNode(" "),v.appendChild(D),v.removeChild(D))}e.UA.gecko&&t.changedNode&&!t.changedNode.test(g)&&(M=t.changedNode.ancestor(g),M&&(this._lastPara=M))},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(s,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.9.1",{requires:["editor-para-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s="nodeChange",o="parentNode",u=i+" > p",a="p",f="
",l="firstChild",c="li";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(t){var n=this.get(r),s=n.getInstance(),h,p,d,v,m,g=s.EditorSelection.DEFAULT_BLOCK_TAG,y,b,w,E,S,x,T,N,C,k,L,A,O,M,_,D,H=":last-child",B,j,F,I,q,R=!1,U;switch(t.changedType){case"enter-up":B=this._lastPara?this._lastPara:t.changedNode,j=B.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,j&&(j.previous()||j.next())&&j.ancestor(a)&&j.remove(),B.test(g)||(C=B.ancestor(g),C&&(B=C,C=null));if(B.test(g)){k=B.previous();if(k){I=k.one(H);while(!R)I?(q=I.one(H),q?I=q:R=!0):R=!0;I&&n.copyStyles(I,B)}}break;case"enter":e.UA.webkit&&t.changedEvent.shiftKey&&(n.execCommand("insertbr"),t.changedEvent.preventDefault()),t.changedNode.test("li")&&!e.UA.ie&&(h=s.EditorSelection.getText(t.changedNode),h===""&&(d=t.changedNode.ancestor("ol,ul"),F=d.getAttribute("dir"),F!==""&&(F=' dir = "'+F+'"'),d=t.changedNode.ancestor(s.EditorSelection.BLOCKS),v=s.Node.create(""+s.EditorSelection.CURSOR+"

"),d.insert(v,"after"),t.changedNode.remove(),t.changedEvent.halt(),m=new s.EditorSelection,m.selectNode(v,!0,!1)));if(e.UA.gecko&&n.get("defaultblock")!=="p"){d=t.changedNode;if(!d.test(c)&&!d.ancestor(c)){d.test(g)||(d=d.ancestor(g)),v=s.Node.create("<"+g+">"),d.insert(v,"after"),m=new s.EditorSelection;if(m.anchorOffset){y=m.anchorNode.get("textContent"),p=s.one(s.config.doc.createTextNode(y.substr(0,m.anchorOffset))),b=s.one(s.config.doc.createTextNode(y.substr(m.anchorOffset))),E=m.anchorNode,E.setContent(""),S=E.cloneNode(),S.append(b),x=!1,N=E;while(!x)N=N.get(o),N&&!N.test(g)?(T=N.cloneNode(),T.set("innerHTML",""),T.append(S),w=N.get("childNodes"),U=!1,w.each(function(e){U&&T.append(e),e===E&&(U=!0)}),E=N,S=T):x=!0;b=S,m.anchorNode.append(p),b&&v.append(b)}v.get(l)&&(v=v.get(l)),v.prepend(s.EditorSelection.CURSOR),m.focusCursor(!0,!0),h=s.EditorSelection.getText(v),h!==""&&s.EditorSelection.cleanCursor(),t.changedEvent.preventDefault()}}break;case"keyup":e.UA.gecko&&s.config.doc&&s.config.doc.body&&s.config.doc.body.innerHTML.length<20&&(s.one(u)||this._fixFirstPara());break;case"backspace-up":case"backspace-down":case"delete-up":e.UA.ie||(L=s.all(u),O=s.one(i),L.item(0)&&(O=L.item(0)),A=O.one("br"),A&&(A.removeAttribute("id"),A.removeAttribute("class")),p=s.EditorSelection.getText(O),p=p.replace(/ /g,"").replace(/\n/g,""),_=O.all("img"),p.length===0&&!_.size()&&(O.test(a)||this._fixFirstPara(),M=null,t.changedNode&&t.changedNode.test(a)&&(M=t.changedNode),!M&&n._lastPara&&n._lastPara.inDoc()&&(M=n._lastPara),M&&!M.test(a)&&(M=M.ancestor(a)),M&&!M.previous()&&M.get(o)&&M.get(o).test(i)&&(t.changedEvent.frameEvent.halt(),t.preventDefault())),e.UA.webkit&&t.changedNode&&(t.preventDefault(),O=t.changedNode,O.test("li")&&!O.previous()&&!O.next()&&(h=O.get("innerHTML").replace(f,""),h===""&&O.get(o)&&(O.get(o).replace(s.Node.create(f)),t.changedEvent.frameEvent.halt(),s.EditorSelection.filterBlocks())))),e.UA.gecko&&(v=t.changedNode,D=s.config.doc.createTextNode(" "),v.appendChild(D),v.removeChild(D))}e.UA.gecko&&t.changedNode&&!t.changedNode.test(g)&&(M=t.changedNode.ancestor(g),M&&(this._lastPara=M))},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(s,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.12.0",{requires:["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para.js b/lib/yuilib/3.12.0/editor-para/editor-para.js similarity index 98% rename from lib/yuilib/3.9.1/build/editor-para/editor-para.js rename to lib/yuilib/3.12.0/editor-para/editor-para.js index b09f563a129..5fde6c7f03f 100644 --- a/lib/yuilib/3.9.1/build/editor-para/editor-para.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para', function (Y, NAME) { @@ -299,4 +305,4 @@ YUI.add('editor-para', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js b/lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js index 208dfc0223a..bf4784eb63a 100644 --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-selection', function (Y, NAME) { /** @@ -978,4 +984,4 @@ YUI.add('editor-selection', function (Y, NAME) { -}, '3.9.1', {"requires": ["node"]}); +}, '3.12.0', {"requires": ["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js b/lib/yuilib/3.12.0/editor-selection/editor-selection-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection-min.js index 6aabb1920df..e93fcbadb13 100644 --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("editor-selection",function(e,t){var n="textContent",r="innerHTML",i="fontFamily";e.UA.ie&&(n="nodeValue"),e.EditorSelection=function(t){var n,r,i,s,o,u,a,f=0,l,c;e.config.win.getSelection&&(!e.UA.ie||e.UA.ie<9)?n=e.config.win.getSelection():e.config.doc.selection&&(n=e.config.doc.selection.createRange()),this._selection=n;if(!n)return!1;if(n.pasteHTML){this.isCollapsed=n.compareEndPoints("StartToEnd",n)?!1:!0;if(this.isCollapsed){this.anchorNode=this.focusNode=e.one(n.parentElement()),t&&(i=e.config.doc.elementFromPoint(t.clientX,t.clientY)),o=n.duplicate();if(!i){r=n.parentElement(),s=r.childNodes;for(u=0;u\?]/gi,e.EditorSelection.REG_NON=/[\s|\n|\t]/gi,e.EditorSelection.REG_NOHTML=/<\S[^><]*>/g,e.EditorSelection._wrapBlock=function(t){if(t){var n=e.Node.create("<"+e.EditorSelection.DEFAULT_BLOCK_TAG+">"),r=e.one(t[0]),i;for(i=1;i
","").replace("
",""),n},e.EditorSelection.DEFAULT_BLOCK_TAG="p",e.EditorSelection.ALL="[style],font[face]",e.EditorSelection.BLOCKS="p,div,ul,ol,table,style",e.EditorSelection.TMP="yui-tmp",e.EditorSelection.DEFAULT_TAG="span",e.EditorSelection.CURID="yui-cursor",e.EditorSelection.CUR_WRAPID="yui-cursor-wrapper",e.EditorSelection.CURSOR='
',e.EditorSelection.hasCursor=function(){var t=e.all("#"+e.EditorSelection.CUR_WRAPID);return t.size()},e.EditorSelection.cleanCursor=function(){var t,n="br.yui-cursor";t=e.all(n),t.size()&&t.each(function(t){var n=t.get("parentNode.parentNode.childNodes"),r;n.size()?t.remove -():(r=e.EditorSelection.getText(n.item(0)),r!==""&&t.remove())})},e.EditorSelection.prototype={text:null,isCollapsed:null,anchorNode:null,anchorOffset:null,anchorTextNode:null,focusNode:null,focusOffset:null,focusTextNode:null,_selection:null,_wrap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.set(r,""),t.append(i),e.Node.getDOMNode(i)},_swap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.replace(i,t),e.Node.getDOMNode(i)},getSelected:function(){e.EditorSelection.filter(),e.config.doc.execCommand("fontname",null,e.EditorSelection.TMP);var t=e.all(e.EditorSelection.ALL),n=[];return t.each(function(r,s){r.getStyle(i)===e.EditorSelection.TMP&&(r.setStyle(i,""),e.EditorSelection.removeFontFamily(r),r.test("body")||n.push(e.Node.getDOMNode(t.item(s))))}),e.all(n)},insertContent:function(e){return this.insertAtCursor(e,this.anchorTextNode,this.anchorOffset,!0)},insertAtCursor:function(t,r,i,s){var o=e.Node.create("<"+e.EditorSelection.DEFAULT_TAG+' class="yui-non">"),u,a,f,l,c=this.createRange(),h;r&&r.test("body")&&(h=e.Node.create(""),r.append(h),r=h);if(c.pasteHTML){if(i===0&&r&&!r.previous()&&r.get("nodeType")===3)return r.insert(t,"before"),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(r.previous())),c.collapse(!1),c.select(),r.previous();l=e.Node.create(t);try{c.pasteHTML('')}catch(p){}u=e.one("#rte-insert");if(u)return u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select(),l;e.on("available",function(){u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select()},"#rte-insert")}else i>0?(u=r.get(n),a=e.one(e.config.doc.createTextNode(u.substr(0,i))),f=e.one(e.config.doc.createTextNode(u.substr(i))),r.replace(a,r),l=e.Node.create(t),l.get("nodeType")===11&&(h=e.Node.create(""),h.append(l),l=h),a.insert(l,"after"),f&&(l.insert(o,"after"),o.insert(f,"after"),this.selectNode(o,s))):(r.get("nodeType")===3&&(r=r.get("parentNode")),l=e.Node.create(t),t=r.get("innerHTML").replace(/\n/gi,""),t===""||t==="
"?r.append(l):l.get("parentNode")?r.insert(l,"before"):e.one("body").prepend(l),r.get("firstChild").test("br")&&r.get("firstChild").remove());return l},wrapContent:function(t){t=t?t:e.EditorSelection.DEFAULT_TAG;if(!this.isCollapsed){var n=this.getSelected(),r=[],i,s,o,u;return n.each(function(e,i){var s=e.get("tagName").toLowerCase();s==="font"?r.push(this._swap(n.item(i),t)):r.push(this._wrap(n.item(i),t))},this),i=this.createRange(),o=r[0],s=r[r.length-1],this._selection.removeAllRanges?(i.setStart(r[0],0),i.setEnd(s,s.childNodes.length),this._selection.removeAllRanges(),this._selection.addRange(i)):(i.moveToElementText&&(i.moveToElementText(e.Node.getDOMNode(o)),u=this.createRange(),u.moveToElementText(e.Node.getDOMNode(s)),i.setEndPoint("EndToEnd",u)),i.select()),r=e.all(r),r}return e.all([])},replace:function(t,r){var i=this.createRange(),s,o,u,a;return i.getBookmark?(u=i.getBookmark(),o=this.anchorNode.get("innerHTML").replace(t,r),this.anchorNode.set("innerHTML",o),i.moveToBookmark(u),a=e.one(i.parentElement())):(s=this.anchorTextNode,o=s.get(n),u=o.indexOf(t),o=o.replace(t,""),s.set(n,o),a=this.insertAtCursor(r,s,u,!0)),a},remove:function(){return this._selection&&this._selection.removeAllRanges&&this._selection.removeAllRanges(),this},createRange:function(){return e.config.doc.selection?e.config.doc.selection.createRange():e.config.doc.createRange()},selectNode:function(t,n,r){if(!t)return;r=r||0,t=e.Node.getDOMNode(t);var i=this.createRange();if(i.selectNode){i.selectNode(t),this._selection.removeAllRanges(),this._selection.addRange(i);if(n)try{this._selection.collapse(t,r)}catch(s){this._selection.collapse(t,0)}}else{t.nodeType===3&&(t=t.parentNode);try{i.moveToElementText(t)}catch(o){}n&&i.collapse(r?!1:!0),i.select()}return this},setCursor:function(){return this.removeCursor(!1),this.insertContent(e.EditorSelection.CURSOR)},getCursor:function(){return e.all("#"+e.EditorSelection.CURID)},removeCursor:function(e){var t=this.getCursor();return t&&(e?(t.removeAttribute("id"),t.set("innerHTML",'
')):t.remove()),t},focusCursor:function(e,t){e!==!1&&(e=!0),t!==!1&&(t=!0);var n=this.removeCursor(!0);n&&n.each(function(n){this.selectNode(n,e,t)},this)},toString:function(){return"EditorSelection Object"}},e.Selection=e.EditorSelection},"3.9.1",{requires:["node"]}); +():(r=e.EditorSelection.getText(n.item(0)),r!==""&&t.remove())})},e.EditorSelection.prototype={text:null,isCollapsed:null,anchorNode:null,anchorOffset:null,anchorTextNode:null,focusNode:null,focusOffset:null,focusTextNode:null,_selection:null,_wrap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.set(r,""),t.append(i),e.Node.getDOMNode(i)},_swap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.replace(i,t),e.Node.getDOMNode(i)},getSelected:function(){e.EditorSelection.filter(),e.config.doc.execCommand("fontname",null,e.EditorSelection.TMP);var t=e.all(e.EditorSelection.ALL),n=[];return t.each(function(r,s){r.getStyle(i)===e.EditorSelection.TMP&&(r.setStyle(i,""),e.EditorSelection.removeFontFamily(r),r.test("body")||n.push(e.Node.getDOMNode(t.item(s))))}),e.all(n)},insertContent:function(e){return this.insertAtCursor(e,this.anchorTextNode,this.anchorOffset,!0)},insertAtCursor:function(t,r,i,s){var o=e.Node.create("<"+e.EditorSelection.DEFAULT_TAG+' class="yui-non">"),u,a,f,l,c=this.createRange(),h;r&&r.test("body")&&(h=e.Node.create(""),r.append(h),r=h);if(c.pasteHTML){if(i===0&&r&&!r.previous()&&r.get("nodeType")===3)return r.insert(t,"before"),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(r.previous())),c.collapse(!1),c.select(),r.previous();l=e.Node.create(t);try{c.pasteHTML('')}catch(p){}u=e.one("#rte-insert");if(u)return u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select(),l;e.on("available",function(){u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select()},"#rte-insert")}else i>0?(u=r.get(n),a=e.one(e.config.doc.createTextNode(u.substr(0,i))),f=e.one(e.config.doc.createTextNode(u.substr(i))),r.replace(a,r),l=e.Node.create(t),l.get("nodeType")===11&&(h=e.Node.create(""),h.append(l),l=h),a.insert(l,"after"),f&&(l.insert(o,"after"),o.insert(f,"after"),this.selectNode(o,s))):(r.get("nodeType")===3&&(r=r.get("parentNode")),l=e.Node.create(t),t=r.get("innerHTML").replace(/\n/gi,""),t===""||t==="
"?r.append(l):l.get("parentNode")?r.insert(l,"before"):e.one("body").prepend(l),r.get("firstChild").test("br")&&r.get("firstChild").remove());return l},wrapContent:function(t){t=t?t:e.EditorSelection.DEFAULT_TAG;if(!this.isCollapsed){var n=this.getSelected(),r=[],i,s,o,u;return n.each(function(e,i){var s=e.get("tagName").toLowerCase();s==="font"?r.push(this._swap(n.item(i),t)):r.push(this._wrap(n.item(i),t))},this),i=this.createRange(),o=r[0],s=r[r.length-1],this._selection.removeAllRanges?(i.setStart(r[0],0),i.setEnd(s,s.childNodes.length),this._selection.removeAllRanges(),this._selection.addRange(i)):(i.moveToElementText&&(i.moveToElementText(e.Node.getDOMNode(o)),u=this.createRange(),u.moveToElementText(e.Node.getDOMNode(s)),i.setEndPoint("EndToEnd",u)),i.select()),r=e.all(r),r}return e.all([])},replace:function(t,r){var i=this.createRange(),s,o,u,a;return i.getBookmark?(u=i.getBookmark(),o=this.anchorNode.get("innerHTML").replace(t,r),this.anchorNode.set("innerHTML",o),i.moveToBookmark(u),a=e.one(i.parentElement())):(s=this.anchorTextNode,o=s.get(n),u=o.indexOf(t),o=o.replace(t,""),s.set(n,o),a=this.insertAtCursor(r,s,u,!0)),a},remove:function(){return this._selection&&this._selection.removeAllRanges&&this._selection.removeAllRanges(),this},createRange:function(){return e.config.doc.selection?e.config.doc.selection.createRange():e.config.doc.createRange()},selectNode:function(t,n,r){if(!t)return;r=r||0,t=e.Node.getDOMNode(t);var i=this.createRange();if(i.selectNode){i.selectNode(t),this._selection.removeAllRanges(),this._selection.addRange(i);if(n)try{this._selection.collapse(t,r)}catch(s){this._selection.collapse(t,0)}}else{t.nodeType===3&&(t=t.parentNode);try{i.moveToElementText(t)}catch(o){}n&&i.collapse(r?!1:!0),i.select()}return this},setCursor:function(){return this.removeCursor(!1),this.insertContent(e.EditorSelection.CURSOR)},getCursor:function(){return e.all("#"+e.EditorSelection.CURID)},removeCursor:function(e){var t=this.getCursor();return t&&(e?(t.removeAttribute("id"),t.set("innerHTML",'
')):t.remove()),t},focusCursor:function(e,t){e!==!1&&(e=!0),t!==!1&&(t=!0);var n=this.removeCursor(!0);n&&n.each(function(n){this.selectNode(n,e,t)},this)},toString:function(){return"EditorSelection Object"}},e.Selection=e.EditorSelection},"3.12.0",{requires:["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection.js b/lib/yuilib/3.12.0/editor-selection/editor-selection.js similarity index 99% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection.js index 894df22063e..7f127620a67 100644 --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-selection', function (Y, NAME) { /** @@ -962,4 +968,4 @@ YUI.add('editor-selection', function (Y, NAME) { -}, '3.9.1', {"requires": ["node"]}); +}, '3.12.0', {"requires": ["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js b/lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js similarity index 89% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js index 1550065142b..b934780678d 100644 --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-tab', function (Y, NAME) { @@ -67,4 +73,4 @@ YUI.add('editor-tab', function (Y, NAME) { Y.Plugin.EditorTab = EditorTab; -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js b/lib/yuilib/3.12.0/editor-tab/editor-tab-min.js similarity index 72% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab-min.js index 572ec174217..0addd97d7d7 100644 --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-tab",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host";e.extend(n,e.Base,{_onNodeChange:function(e){var t="indent";e.changedType==="tab"&&(e.changedNode.test("li, li *")||(e.changedEvent.halt(),e.preventDefault(),e.changedEvent.shiftKey&&(t="outdent"),this.get(r).execCommand(t,"")))},initializer:function(){this.get(r).on("nodeChange",e.bind(this._onNodeChange,this))}},{NAME:"editorTab",NS:"tab",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorTab=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-tab",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host";e.extend(n,e.Base,{_onNodeChange:function(e){var t="indent";e.changedType==="tab"&&(e.changedNode.test("li, li *")||(e.changedEvent.halt(),e.preventDefault(),e.changedEvent.shiftKey&&(t="outdent"),this.get(r).execCommand(t,"")))},initializer:function(){this.get(r).on("nodeChange",e.bind(this._onNodeChange,this))}},{NAME:"editorTab",NS:"tab",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorTab=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab.js b/lib/yuilib/3.12.0/editor-tab/editor-tab.js similarity index 89% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab.js index 9adc094a533..2c05aa8bef6 100644 --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-tab', function (Y, NAME) { @@ -66,4 +72,4 @@ YUI.add('editor-tab', function (Y, NAME) { Y.Plugin.EditorTab = EditorTab; -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape-debug.js b/lib/yuilib/3.12.0/escape/escape-debug.js similarity index 93% rename from lib/yuilib/3.9.1/build/escape/escape-debug.js rename to lib/yuilib/3.12.0/escape/escape-debug.js index b25c6b82e7a..1b307f63d29 100644 --- a/lib/yuilib/3.9.1/build/escape/escape-debug.js +++ b/lib/yuilib/3.12.0/escape/escape-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('escape', function (Y, NAME) { /** @@ -90,4 +96,4 @@ Escape.regexp = Escape.regex; Y.Escape = Escape; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape-min.js b/lib/yuilib/3.12.0/escape/escape-min.js similarity index 61% rename from lib/yuilib/3.9.1/build/escape/escape-min.js rename to lib/yuilib/3.12.0/escape/escape-min.js index 8240889f151..c41a4bc53ee 100644 --- a/lib/yuilib/3.9.1/build/escape/escape-min.js +++ b/lib/yuilib/3.12.0/escape/escape-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("escape",function(e,t){var n={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`"},r={html:function(e){return(e+"").replace(/[&<>"'\/`]/g,r._htmlReplacer)},regex:function(e){return(e+"").replace(/[\-$\^*()+\[\]{}|\\,.?\s]/g,"\\$&")},_htmlReplacer:function(e){return n[e]}};r.regexp=r.regex,e.Escape=r},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("escape",function(e,t){var n={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`"},r={html:function(e){return(e+"").replace(/[&<>"'\/`]/g,r._htmlReplacer)},regex:function(e){return(e+"").replace(/[\-$\^*()+\[\]{}|\\,.?\s]/g,"\\$&")},_htmlReplacer:function(e){return n[e]}};r.regexp=r.regex,e.Escape=r},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape.js b/lib/yuilib/3.12.0/escape/escape.js similarity index 93% rename from lib/yuilib/3.9.1/build/escape/escape.js rename to lib/yuilib/3.12.0/escape/escape.js index b25c6b82e7a..1b307f63d29 100644 --- a/lib/yuilib/3.9.1/build/escape/escape.js +++ b/lib/yuilib/3.12.0/escape/escape.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('escape', function (Y, NAME) { /** @@ -90,4 +96,4 @@ Escape.regexp = Escape.regex; Y.Escape = Escape; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js index 3d6758a6426..724c23dadba 100644 --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function() { var stateChangeListener, @@ -220,7 +226,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -235,7 +241,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -296,9 +302,9 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js index 523de258924..6fd8174a5a7 100644 --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, /*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ -self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))})(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.9.1",{requires:["node-base"]}); +self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))})(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.12.0",{requires:["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie.js index 3d6758a6426..724c23dadba 100644 --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function() { var stateChangeListener, @@ -220,7 +226,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -235,7 +241,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -296,9 +302,9 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base/event-base-debug.js b/lib/yuilib/3.12.0/event-base/event-base-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-base/event-base-debug.js rename to lib/yuilib/3.12.0/event-base/event-base-debug.js index e7865ea1ef4..f1fe77cc91d 100644 --- a/lib/yuilib/3.9.1/build/event-base/event-base-debug.js +++ b/lib/yuilib/3.12.0/event-base/event-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function () { var GLOBAL_ENV = YUI.Env; @@ -158,7 +164,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -377,6 +383,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -398,8 +405,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -422,7 +428,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { Y.log("collection check failure", "warn", "event"); return false; @@ -707,6 +713,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -792,7 +799,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -909,7 +916,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -983,7 +990,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -1093,7 +1100,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // Y.log('avail: ' + el); @@ -1112,7 +1119,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -1307,12 +1314,18 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { - Y.log("Registering unload listener failed. This is known to happen in Chrome Packaged Apps and Extensions, which don't support unload, and don't provide a way to test for support", "warn", "event-base"); + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + Y.log("Registering unload listener failed.", "warn", "event-base"); + } + } } Event.Custom = Y.CustomEvent; @@ -1378,4 +1391,4 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-base/event-base-min.js b/lib/yuilib/3.12.0/event-base/event-base-min.js new file mode 100644 index 00000000000..0c0800fc724 --- /dev/null +++ b/lib/yuilib/3.12.0/event-base/event-base-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +(function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))})(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.12.0",{requires:["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base/event-base.js b/lib/yuilib/3.12.0/event-base/event-base.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-base/event-base.js rename to lib/yuilib/3.12.0/event-base/event-base.js index 28717010a1a..890ca2b02dd 100644 --- a/lib/yuilib/3.9.1/build/event-base/event-base.js +++ b/lib/yuilib/3.12.0/event-base/event-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function () { var GLOBAL_ENV = YUI.Env; @@ -158,7 +164,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -377,6 +383,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -398,8 +405,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -422,7 +428,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { return false; } @@ -705,6 +711,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -789,7 +796,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -903,7 +910,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -977,7 +984,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -1084,7 +1091,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { executeItem(el, item); @@ -1101,7 +1108,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -1296,11 +1303,17 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + } + } } Event.Custom = Y.CustomEvent; @@ -1366,4 +1379,4 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js similarity index 87% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js index beea562d7e8..ca3784eb8f4 100644 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js @@ -1,14 +1,27 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-contextmenu', function (Y, NAME) { /** * Provides extended keyboard support for the "contextmenu" event such that: *
    *
  • The browser's default context menu is suppressed regardless of how the event is triggered.
  • - *
  • On Windows the "contextmenu" event is fired consistently regardless of whether the user pressed the Menu key or Shift + F10.
  • - *
  • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY properties reference the center of the event target. This makes it easy for "contextmenu" event listeners to position an overlay in response to the event by not having to worry about special handling of the x and y coordinates based on the device that fired the event.
  • - *
  • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver (the screen reader on the Mac) is enabled.
  • - *
  • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses Shift + Command + M (Opera's context menu keyboard shortcut).
  • + *
  • On Windows the "contextmenu" event is fired consistently regardless of whether the user + * pressed the Menu key or Shift + F10.
  • + *
  • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY + * properties reference the center of the event target. This makes it easy for "contextmenu" event listeners + * to position an overlay in response to the event by not having to worry about special handling of the x + * and y coordinates based on the device that fired the event.
  • + *
  • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard + * shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver + * (the screen reader on the Mac) is enabled.
  • + *
  • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses + * Shift + Command + M (Opera's context menu keyboard shortcut).
  • *
* @module event-contextmenu * @requires event @@ -38,7 +51,7 @@ var Event = Y.Event, handles.push(Event._attach(["contextmenu", function (e) { // Any developer listening for the "contextmenu" event is likely - // going to call preventDefault() to prevent the display of + // going to call preventDefault() to prevent the display of // the browser's context menu. So, you know, save them a step. e.preventDefault(); @@ -125,7 +138,7 @@ var Event = Y.Event, // the x & x coords to the center of the event target. if (menuKey || (isWin && webkit && shiftF10)) { - eventData[Y.stamp(node)] = { + eventData[Y.stamp(node)] = { clientX: clientX, clientY: clientY, pageX: pageX, @@ -183,4 +196,4 @@ conf.detachDelegate = conf.detach; Event.define("contextmenu", conf, true); -}, '3.9.1', {"requires": ["event-synthetic", "dom-screen"]}); +}, '3.12.0', {"requires": ["event-synthetic", "dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js similarity index 83% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js index a0e7065fce0..5d404324e54 100644 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-contextmenu",function(e,t){var n=e.Event,r=e.DOM,i=e.UA,s=e.UA.os,o=i.ie,u=i.gecko,a=i.webkit,f=i.opera,l=s==="windows",c=s==="macintosh",h={},p={on:function(t,i,s,p){var d=[];d.push(n._attach(["contextmenu",function(n){n.preventDefault();var r=e.stamp(t),i=h[r];i&&(n.clientX=i.clientX,n.clientY=i.clientY,n.pageX=i.pageX,n.pageY=i.pageY,delete h[r]),s.fire(n)},t])),d.push(t[p?"delegate":"on"]("keydown",function(n){var i=this.getDOMNode(),p=n.shiftKey,d=n.keyCode,v=p&&d==121,m=l&&d==93,g=n.ctrlKey,y=d===77,b=c&&(a||u)&&g&&p&&n.altKey&&y,w=c&&f&&g&&p&&y,E=0,S=0,x,T,N,C,k,L,A;if(l&&(v||m)||b||w){((o||l&&(u||f))&&v||w)&&n.preventDefault(),k=r.getXY(i),L=k[0],A=k[1],x=r.docScrollX(),T=r.docScrollY(),e.Lang.isUndefined(L)||(E=L+i.offsetWidth/2-x,S=A+i.offsetHeight/2-T),N=E+x,C=S+T;if(m||l&&a&&v)h[e.stamp(t)]={clientX:E,clientY:S,pageX:N,pageY:C};if((o||l&&(u||f))&&v||c)n.clientX=E,n.clientY=S,n.pageX=N,n.pageY=C,s.fire(n)}},p)),i._handles=d},detach:function(t,n,r){e.each(n._handles,function(e){e.detach()})}};p.delegate=p.on,p.detachDelegate=p.detach,n.define("contextmenu",p,!0)},"3.9.1",{requires:["event-synthetic","dom-screen"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-contextmenu",function(e,t){var n=e.Event,r=e.DOM,i=e.UA,s=e.UA.os,o=i.ie,u=i.gecko,a=i.webkit,f=i.opera,l=s==="windows",c=s==="macintosh",h={},p={on:function(t,i,s,p){var d=[];d.push(n._attach(["contextmenu",function(n){n.preventDefault();var r=e.stamp(t),i=h[r];i&&(n.clientX=i.clientX,n.clientY=i.clientY,n.pageX=i.pageX,n.pageY=i.pageY,delete h[r]),s.fire(n)},t])),d.push(t[p?"delegate":"on"]("keydown",function(n){var i=this.getDOMNode(),p=n.shiftKey,d=n.keyCode,v=p&&d==121,m=l&&d==93,g=n.ctrlKey,y=d===77,b=c&&(a||u)&&g&&p&&n.altKey&&y,w=c&&f&&g&&p&&y,E=0,S=0,x,T,N,C,k,L,A;if(l&&(v||m)||b||w){((o||l&&(u||f))&&v||w)&&n.preventDefault(),k=r.getXY(i),L=k[0],A=k[1],x=r.docScrollX(),T=r.docScrollY(),e.Lang.isUndefined(L)||(E=L+i.offsetWidth/2-x,S=A+i.offsetHeight/2-T),N=E+x,C=S+T;if(m||l&&a&&v)h[e.stamp(t)]={clientX:E,clientY:S,pageX:N,pageY:C};if((o||l&&(u||f))&&v||c)n.clientX=E,n.clientY=S,n.pageX=N,n.pageY=C,s.fire(n)}},p)),i._handles=d},detach:function(t,n,r){e.each(n._handles,function(e){e.detach()})}};p.delegate=p.on,p.detachDelegate=p.detach,n.define("contextmenu",p,!0)},"3.12.0",{requires:["event-synthetic","dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js similarity index 87% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js index beea562d7e8..ca3784eb8f4 100644 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js @@ -1,14 +1,27 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-contextmenu', function (Y, NAME) { /** * Provides extended keyboard support for the "contextmenu" event such that: *
    *
  • The browser's default context menu is suppressed regardless of how the event is triggered.
  • - *
  • On Windows the "contextmenu" event is fired consistently regardless of whether the user pressed the Menu key or Shift + F10.
  • - *
  • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY properties reference the center of the event target. This makes it easy for "contextmenu" event listeners to position an overlay in response to the event by not having to worry about special handling of the x and y coordinates based on the device that fired the event.
  • - *
  • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver (the screen reader on the Mac) is enabled.
  • - *
  • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses Shift + Command + M (Opera's context menu keyboard shortcut).
  • + *
  • On Windows the "contextmenu" event is fired consistently regardless of whether the user + * pressed the Menu key or Shift + F10.
  • + *
  • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY + * properties reference the center of the event target. This makes it easy for "contextmenu" event listeners + * to position an overlay in response to the event by not having to worry about special handling of the x + * and y coordinates based on the device that fired the event.
  • + *
  • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard + * shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver + * (the screen reader on the Mac) is enabled.
  • + *
  • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses + * Shift + Command + M (Opera's context menu keyboard shortcut).
  • *
* @module event-contextmenu * @requires event @@ -38,7 +51,7 @@ var Event = Y.Event, handles.push(Event._attach(["contextmenu", function (e) { // Any developer listening for the "contextmenu" event is likely - // going to call preventDefault() to prevent the display of + // going to call preventDefault() to prevent the display of // the browser's context menu. So, you know, save them a step. e.preventDefault(); @@ -125,7 +138,7 @@ var Event = Y.Event, // the x & x coords to the center of the event target. if (menuKey || (isWin && webkit && shiftF10)) { - eventData[Y.stamp(node)] = { + eventData[Y.stamp(node)] = { clientX: clientX, clientY: clientY, pageX: pageX, @@ -183,4 +196,4 @@ conf.detachDelegate = conf.detach; Event.define("contextmenu", conf, true); -}, '3.9.1', {"requires": ["event-synthetic", "dom-screen"]}); +}, '3.12.0', {"requires": ["event-synthetic", "dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js similarity index 84% rename from lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js rename to lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js index 482db8265ba..4c1e7615054 100644 --- a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-custom-base', function (Y, NAME) { /** @@ -36,12 +42,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -176,9 +182,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -305,10 +308,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -393,9 +396,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -433,7 +433,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -442,7 +442,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -456,258 +456,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - // this.log("Creating " + this.type); - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -726,6 +537,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -734,15 +708,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -770,12 +764,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -791,7 +820,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -806,24 +835,41 @@ Y.CustomEvent.prototype = { if (!fn) { this.log('Invalid callback for CE: ' + this.type); } - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -845,7 +891,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -895,25 +941,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -984,13 +1034,34 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { this.log('fireOnce event: ' + this.type + ' already fired'); return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -1024,7 +1095,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -1056,7 +1129,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -1083,7 +1156,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -1122,12 +1195,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -1181,7 +1257,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -1285,12 +1361,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -1409,14 +1485,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -1438,7 +1514,6 @@ var L = Y.Lang, if (i > -1) { after = true; t = t.substr(AFTER_PREFIX.length); - // Y.log(t); } i = t.indexOf(CATEGORY_DELIMITER); @@ -1446,7 +1521,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -1457,40 +1532,38 @@ var L = Y.Lang, ET = function(opts) { - // Y.log('EventTarget constructor executed: ' + this._yuid); + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -1688,6 +1761,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -1727,8 +1805,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -1921,53 +2002,102 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -2007,23 +2137,23 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -2032,30 +2162,63 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -2066,8 +2229,12 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -2075,17 +2242,15 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -2102,6 +2267,7 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -2200,7 +2366,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -2226,7 +2394,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -2311,4 +2479,4 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js new file mode 100644 index 00000000000..42f83ee5814 --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js @@ -0,0 +1,10 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-custom-base",function(e,t){e.Env.evt={handles:{},plugins:{}};var n=0,r=1,i={objs:null,before:function(t,r,i,s){var o=t,u;return s&&(u=[t,s].concat(e.Array(arguments,4,!0)),o=e.rbind.apply(e,u)),this._inject(n,o,r,i)},after:function(t,n,i,s){var o=t,u;return s&&(u=[t,s].concat(e.Array(arguments,4,!0)),o=e.rbind.apply(e,u)),this._inject(r,o,n,i)},_inject:function(t,n,r,i){var s=e.stamp(r),o,u;return r._yuiaop||(r._yuiaop={}),o=r._yuiaop,o[i]||(o[i]=new e.Do.Method(r,i),r[i]=function(){return o[i].exec.apply(o[i],arguments)}),u=s+e.stamp(n)+i,o[i].register(u,n,t),new e.EventHandle(o[i],u)},detach:function(e){e.detach&&e.detach()}};e.Do=i,i.Method=function(e,t){this.obj=e,this.methodName=t,this.method=e[t],this.before={},this.after={}},i.Method.prototype.register=function(e,t,n){n?this.after[e]=t:this.before[e]=t},i.Method.prototype._delete=function(e){delete this.before[e],delete this.after[e]},i.Method.prototype.exec=function(){var t=e.Array(arguments,0,!0),n,r,s,o=this.before,u=this.after,a=!1;for(n in o)if(o.hasOwnProperty(n)){r=o[n].apply(this.obj,t);if(r)switch(r.constructor){case i.Halt:return r.retVal;case i.AlterArgs:t=r.newArgs;break;case i.Prevent:a=!0;break;default:}}a||(r=this.method.apply(this.obj,t)),i.originalRetVal=r,i.currentRetVal=r;for(n in u)if(u.hasOwnProperty(n)){s=u[n].apply(this.obj,t);if(s&&s.constructor===i.Halt)return s.retVal;s&&s.constructor===i.AlterReturn&&(r=s.newRetVal,i.currentRetVal=r)}return r},i.AlterArgs=function(e,t){this.msg=e,this.newArgs=t},i.AlterReturn=function(e,t){this.msg=e,this.newRetVal=t},i.Halt=function(e,t){this.msg=e,this.retVal=t},i.Prevent=function(e){this.msg=e},i.Error=i.Halt;var s=e.Array,o="after",u=["broadcast","monitored","bubbles","context","contextFn","currentTarget","defaultFn","defaultTargetOnly","details","emitFacade","fireOnce","async","host","preventable","preventedFn","queuable","silent","stoppedFn","target","type"],a=s.hash(u),f=Array.prototype.slice,l=9,c="yui:log",h=function(e,t,n){var r;for(r in t)a[r]&&(n||!(r in e))&&(e[r]=t[r]);return e};e.CustomEvent=function(t,n){this._kds=e.CustomEvent.keepDeprecatedSubs,this.id=e.guid(),this.type=t,this.silent=this.logSystem=t===c,this._kds&&(this.subscribers={},this.afters={}),n&&h(this,n,!0)},e.CustomEvent.keepDeprecatedSubs=!1,e.CustomEvent.mixConfigs=h,e.CustomEvent.prototype={constructor:e.CustomEvent,signature:l,context:e,preventable:!0,bubbles:!0,hasSubs:function(e){var t=0,n=0,r=this._subscribers,i=this._afters,s=this.sibling;return r&&(t=r.length),i&&(n=i.length),s&&(r=s._subscribers,i=s._afters,r&&(t+=r.length),i&&(n+=i.length)),e?e==="after"?n:t:t+n},monitor:function(e){this.monitored=!0;var t=this.id+"|"+this.type+"_"+e,n=f.call(arguments,0);return n[0]=t,this.host.on.apply(this.host,n)},getSubs:function(){var e=this.sibling,t=this._subscribers,n=this._afters,r,i;return e&&(r=e._subscribers,i=e._afters),r?t?t=t.concat(r):t=r.concat():t?t=t.concat():t=[],i?n?n=n.concat(i):n=i.concat():n?n=n.concat():n=[],[t,n]},applyConfig:function(e,t){h(this,e,t)},_on:function(t,n,r,i){var s=new e.Subscriber(t,n,r,i),u;return this.fireOnce&&this.fired&&(u=this.firedWith,this.emitFacade&&this._addFacadeToArgs&&this._addFacadeToArgs(u),this.async?setTimeout(e.bind(this._notify,this,s,u),0):this._notify(s,u)),i===o?(this._afters||(this._afters=[]),this._afters.push(s)):(this._subscribers||(this._subscribers=[]),this._subscribers.push(s)),this._kds&&(i===o?this.afters[s.id]=s:this.subscribers[s.id]=s),new e.EventHandle(this,s)},subscribe:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;if(s)for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);if(o)for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){var r;return r=e.notify(t,this),!1===r||this.stopped>1?!1:!0},log:function(e,t){},fire:function(){var e=[];return e.push.apply(e,arguments),this._fire(e)},_fire:function(e){return this.fireOnce&&this.fired?!0:(this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e))},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this.broadcast&&this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e},w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n==="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=this._yuievt,r;n||(n=this._yuievt={events:{},targets:null,config:{host:this,context:this},chain:e.config.chain}),r=n.config,t&&(h(r,t,!0),t.chain!==undefined&&(n.chain=t.chain),t.prefix&&(r.prefix=t.prefix))};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o),u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply +(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.12.0",{requires:["oop"]}); diff --git a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base.js similarity index 84% rename from lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js rename to lib/yuilib/3.12.0/event-custom-base/event-custom-base.js index cebb1484487..3f5b9b63b0c 100644 --- a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-custom-base', function (Y, NAME) { /** @@ -36,12 +42,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -175,9 +181,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -303,10 +306,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -391,9 +394,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -431,7 +431,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -440,7 +440,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -454,257 +454,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -723,6 +535,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -731,15 +706,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -767,12 +762,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -788,7 +818,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -802,24 +832,41 @@ Y.CustomEvent.prototype = { _on: function(fn, context, args, when) { - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -840,7 +887,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -890,25 +937,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -976,12 +1027,33 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -1015,7 +1087,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -1046,7 +1120,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -1073,7 +1147,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -1112,12 +1186,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -1171,7 +1248,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -1275,12 +1352,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -1398,14 +1475,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -1434,7 +1511,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -1445,39 +1522,38 @@ var L = Y.Lang, ET = function(opts) { + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -1673,6 +1749,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -1711,8 +1792,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -1903,53 +1987,102 @@ ET.prototype = { * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -1989,23 +2122,23 @@ ET.prototype = { } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -2014,30 +2147,63 @@ ET.prototype = { * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -2048,8 +2214,12 @@ ET.prototype = { // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -2057,17 +2227,15 @@ ET.prototype = { getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -2084,6 +2252,7 @@ ET.prototype = { */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -2182,7 +2351,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -2208,7 +2379,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -2293,4 +2464,4 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js new file mode 100644 index 00000000000..bf2cefd4e8b --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js @@ -0,0 +1,674 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('event-custom-complex', function (Y, NAME) { + + +/** + * Adds event facades, preventable default behavior, and bubbling. + * events. + * @module event-custom + * @submodule event-custom-complex + */ + +var FACADE, + FACADE_KEYS, + YObject = Y.Object, + key, + EMPTY = {}, + CEProto = Y.CustomEvent.prototype, + ETProto = Y.EventTarget.prototype, + + mixFacadeProps = function(facade, payload) { + var p; + + for (p in payload) { + if (!(FACADE_KEYS.hasOwnProperty(p))) { + facade[p] = payload[p]; + } + } + }; + +/** + * Wraps and protects a custom event for use when emitFacade is set to true. + * Requires the event-custom-complex module + * @class EventFacade + * @param e {Event} the custom event + * @param currentTarget {HTMLElement} the element the listener was attached to + */ + +Y.EventFacade = function(e, currentTarget) { + + if (!e) { + e = EMPTY; + } + + this._event = e; + + /** + * The arguments passed to fire + * @property details + * @type Array + */ + this.details = e.details; + + /** + * The event type, this can be overridden by the fire() payload + * @property type + * @type string + */ + this.type = e.type; + + /** + * The real event type + * @property _type + * @type string + * @private + */ + this._type = e.type; + + ////////////////////////////////////////////////////// + + /** + * Node reference for the targeted eventtarget + * @property target + * @type Node + */ + this.target = e.target; + + /** + * Node reference for the element that the listener was attached to. + * @property currentTarget + * @type Node + */ + this.currentTarget = currentTarget; + + /** + * Node reference to the relatedTarget + * @property relatedTarget + * @type Node + */ + this.relatedTarget = e.relatedTarget; + +}; + +Y.mix(Y.EventFacade.prototype, { + + /** + * Stops the propagation to the next bubble target + * @method stopPropagation + */ + stopPropagation: function() { + this._event.stopPropagation(); + this.stopped = 1; + }, + + /** + * Stops the propagation to the next bubble target and + * prevents any additional listeners from being exectued + * on the current target. + * @method stopImmediatePropagation + */ + stopImmediatePropagation: function() { + this._event.stopImmediatePropagation(); + this.stopped = 2; + }, + + /** + * Prevents the event's default behavior + * @method preventDefault + */ + preventDefault: function() { + this._event.preventDefault(); + this.prevented = 1; + }, + + /** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ + halt: function(immediate) { + this._event.halt(immediate); + this.prevented = 1; + this.stopped = (immediate) ? 2 : 1; + } + +}); + +CEProto.fireComplex = function(args) { + + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { + + // queue this event if the current item in the queue bubbles + if (self.queuable && self.type !== stack.next.type) { + self.log('queue ' + self.type); + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + + return true; + } + } + + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; + + self.target = self.target || host; + self.currentTarget = host; + + self.details = args.concat(); + + if (hasPotentialSubscribers) { + + es = stack || { + + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly + + }; + + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; + + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; + + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); + } + + // self.log("Firing " + self + ", " + "args: " + args); + self.log("Firing " + self.type); + + self._facade = null; // kill facade to eliminate stale properties + + ef = self._createFacade(args); + + if (ons) { + self._procSubs(ons, args, ef); + } + + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; + + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); + } + } else { + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); + }); + } + + } + + self.target = null; + + if (es.id === self.id) { + + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } + } + + // Kill the cached facade to free up memory. + // Otherwise we have the facade from the last fire, sitting around forever. + self._facade = null; + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; + +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; + + if (!ef) { + ef = new Y.EventFacade(this, this.currentTarget); + } + + if (firstArgIsObj) { + // protect the event facade properties + mixFacadeProps(ef, firstArg); + + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } + } + + // update the details field with the arguments + ef.details = this.details; + + // use the original target when the event bubbled to this target + ef.target = this.originalTarget || this.target; + + ef.currentTarget = this.currentTarget; + ef.stopped = 0; + ef.prevented = 0; + + this._facade = ef; + + return this._facade; +}; + +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + +/** + * Stop propagation to bubble targets + * @for CustomEvent + * @method stopPropagation + */ +CEProto.stopPropagation = function() { + this.stopped = 1; + if (this.stack) { + this.stack.stopped = 1; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Stops propagation to bubble targets, and prevents any remaining + * subscribers on the current target from executing. + * @method stopImmediatePropagation + */ +CEProto.stopImmediatePropagation = function() { + this.stopped = 2; + if (this.stack) { + this.stack.stopped = 2; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Prevents the execution of this event's defaultFn + * @method preventDefault + */ +CEProto.preventDefault = function() { + if (this.preventable) { + this.prevented = 1; + if (this.stack) { + this.stack.prevented = 1; + } + } +}; + +/** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ +CEProto.halt = function(immediate) { + if (immediate) { + this.stopImmediatePropagation(); + } else { + this.stopPropagation(); + } + this.preventDefault(); +}; + +/** + * Registers another EventTarget as a bubble target. Bubble order + * is determined by the order registered. Multiple targets can + * be specified. + * + * Events can only bubble if emitFacade is true. + * + * Included in the event-custom-complex submodule. + * + * @method addTarget + * @param o {EventTarget} the target to add + * @for EventTarget + */ +ETProto.addTarget = function(o) { + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; +}; + +/** + * Returns an array of bubble targets for this object. + * @method getTargets + * @return EventTarget[] + */ +ETProto.getTargets = function() { + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; +}; + +/** + * Removes a bubble target + * @method removeTarget + * @param o {EventTarget} the target to remove + * @for EventTarget + */ +ETProto.removeTarget = function(o) { + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } +}; + +/** + * Propagate an event. Requires the event-custom-complex module. + * @method bubble + * @param evt {CustomEvent} the custom event to propagate + * @return {boolean} the aggregated return value from Event.Custom.fire + * @for EventTarget + */ +ETProto.bubble = function(evt, args, target, es) { + + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, + originalTarget = target || (evt && evt.target) || this, + oldbubble; + + if (!evt || ((!evt.stopped) && targs)) { + + for (i in targs) { + if (targs.hasOwnProperty(i)) { + + t = targs[i]; + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } + + if (ce2 && !ce) { + ce = t.publish(type); + } + + oldbubble = t._yuievt.bubbling; + t._yuievt.bubbling = type; + + // if this event was not published on the bubble target, + // continue propagating the event. + if (!ce) { + if (t._yuievt.hasTargets) { + t.bubble(evt, args, originalTarget, es); + } + } else { + + if (ce2) { + ce.sibling = ce2; + } + + // set the original target to that the target payload on the facade is correct. + ce.target = originalTarget; + ce.originalTarget = originalTarget; + ce.currentTarget = t; + bc = ce.broadcast; + ce.broadcast = false; + + // default publish may not have emitFacade true -- that + // shouldn't be what the implementer meant to do + ce.emitFacade = true; + + ce.stack = es; + + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? + ret = ret && ce.fire.apply(ce, args || evt.details || []); + + ce.broadcast = bc; + ce.originalTarget = null; + + // stopPropagation() was called + if (ce.stopped) { + break; + } + } + + t._yuievt.bubbling = oldbubble; + } + } + } + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + +FACADE = new Y.EventFacade(); +FACADE_KEYS = {}; + +// Flatten whitelist +for (key in FACADE) { + FACADE_KEYS[key] = true; +} + + +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js new file mode 100644 index 00000000000..8e5d6ad166c --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"3.12.0",{requires:["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js new file mode 100644 index 00000000000..783c3b1db6e --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js @@ -0,0 +1,671 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('event-custom-complex', function (Y, NAME) { + + +/** + * Adds event facades, preventable default behavior, and bubbling. + * events. + * @module event-custom + * @submodule event-custom-complex + */ + +var FACADE, + FACADE_KEYS, + YObject = Y.Object, + key, + EMPTY = {}, + CEProto = Y.CustomEvent.prototype, + ETProto = Y.EventTarget.prototype, + + mixFacadeProps = function(facade, payload) { + var p; + + for (p in payload) { + if (!(FACADE_KEYS.hasOwnProperty(p))) { + facade[p] = payload[p]; + } + } + }; + +/** + * Wraps and protects a custom event for use when emitFacade is set to true. + * Requires the event-custom-complex module + * @class EventFacade + * @param e {Event} the custom event + * @param currentTarget {HTMLElement} the element the listener was attached to + */ + +Y.EventFacade = function(e, currentTarget) { + + if (!e) { + e = EMPTY; + } + + this._event = e; + + /** + * The arguments passed to fire + * @property details + * @type Array + */ + this.details = e.details; + + /** + * The event type, this can be overridden by the fire() payload + * @property type + * @type string + */ + this.type = e.type; + + /** + * The real event type + * @property _type + * @type string + * @private + */ + this._type = e.type; + + ////////////////////////////////////////////////////// + + /** + * Node reference for the targeted eventtarget + * @property target + * @type Node + */ + this.target = e.target; + + /** + * Node reference for the element that the listener was attached to. + * @property currentTarget + * @type Node + */ + this.currentTarget = currentTarget; + + /** + * Node reference to the relatedTarget + * @property relatedTarget + * @type Node + */ + this.relatedTarget = e.relatedTarget; + +}; + +Y.mix(Y.EventFacade.prototype, { + + /** + * Stops the propagation to the next bubble target + * @method stopPropagation + */ + stopPropagation: function() { + this._event.stopPropagation(); + this.stopped = 1; + }, + + /** + * Stops the propagation to the next bubble target and + * prevents any additional listeners from being exectued + * on the current target. + * @method stopImmediatePropagation + */ + stopImmediatePropagation: function() { + this._event.stopImmediatePropagation(); + this.stopped = 2; + }, + + /** + * Prevents the event's default behavior + * @method preventDefault + */ + preventDefault: function() { + this._event.preventDefault(); + this.prevented = 1; + }, + + /** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ + halt: function(immediate) { + this._event.halt(immediate); + this.prevented = 1; + this.stopped = (immediate) ? 2 : 1; + } + +}); + +CEProto.fireComplex = function(args) { + + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { + + // queue this event if the current item in the queue bubbles + if (self.queuable && self.type !== stack.next.type) { + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + + return true; + } + } + + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; + + self.target = self.target || host; + self.currentTarget = host; + + self.details = args.concat(); + + if (hasPotentialSubscribers) { + + es = stack || { + + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly + + }; + + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; + + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; + + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); + } + + + self._facade = null; // kill facade to eliminate stale properties + + ef = self._createFacade(args); + + if (ons) { + self._procSubs(ons, args, ef); + } + + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; + + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); + } + } else { + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); + }); + } + + } + + self.target = null; + + if (es.id === self.id) { + + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } + } + + // Kill the cached facade to free up memory. + // Otherwise we have the facade from the last fire, sitting around forever. + self._facade = null; + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; + +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; + + if (!ef) { + ef = new Y.EventFacade(this, this.currentTarget); + } + + if (firstArgIsObj) { + // protect the event facade properties + mixFacadeProps(ef, firstArg); + + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } + } + + // update the details field with the arguments + ef.details = this.details; + + // use the original target when the event bubbled to this target + ef.target = this.originalTarget || this.target; + + ef.currentTarget = this.currentTarget; + ef.stopped = 0; + ef.prevented = 0; + + this._facade = ef; + + return this._facade; +}; + +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + +/** + * Stop propagation to bubble targets + * @for CustomEvent + * @method stopPropagation + */ +CEProto.stopPropagation = function() { + this.stopped = 1; + if (this.stack) { + this.stack.stopped = 1; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Stops propagation to bubble targets, and prevents any remaining + * subscribers on the current target from executing. + * @method stopImmediatePropagation + */ +CEProto.stopImmediatePropagation = function() { + this.stopped = 2; + if (this.stack) { + this.stack.stopped = 2; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Prevents the execution of this event's defaultFn + * @method preventDefault + */ +CEProto.preventDefault = function() { + if (this.preventable) { + this.prevented = 1; + if (this.stack) { + this.stack.prevented = 1; + } + } +}; + +/** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ +CEProto.halt = function(immediate) { + if (immediate) { + this.stopImmediatePropagation(); + } else { + this.stopPropagation(); + } + this.preventDefault(); +}; + +/** + * Registers another EventTarget as a bubble target. Bubble order + * is determined by the order registered. Multiple targets can + * be specified. + * + * Events can only bubble if emitFacade is true. + * + * Included in the event-custom-complex submodule. + * + * @method addTarget + * @param o {EventTarget} the target to add + * @for EventTarget + */ +ETProto.addTarget = function(o) { + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; +}; + +/** + * Returns an array of bubble targets for this object. + * @method getTargets + * @return EventTarget[] + */ +ETProto.getTargets = function() { + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; +}; + +/** + * Removes a bubble target + * @method removeTarget + * @param o {EventTarget} the target to remove + * @for EventTarget + */ +ETProto.removeTarget = function(o) { + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } +}; + +/** + * Propagate an event. Requires the event-custom-complex module. + * @method bubble + * @param evt {CustomEvent} the custom event to propagate + * @return {boolean} the aggregated return value from Event.Custom.fire + * @for EventTarget + */ +ETProto.bubble = function(evt, args, target, es) { + + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, + originalTarget = target || (evt && evt.target) || this, + oldbubble; + + if (!evt || ((!evt.stopped) && targs)) { + + for (i in targs) { + if (targs.hasOwnProperty(i)) { + + t = targs[i]; + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } + + if (ce2 && !ce) { + ce = t.publish(type); + } + + oldbubble = t._yuievt.bubbling; + t._yuievt.bubbling = type; + + // if this event was not published on the bubble target, + // continue propagating the event. + if (!ce) { + if (t._yuievt.hasTargets) { + t.bubble(evt, args, originalTarget, es); + } + } else { + + if (ce2) { + ce.sibling = ce2; + } + + // set the original target to that the target payload on the facade is correct. + ce.target = originalTarget; + ce.originalTarget = originalTarget; + ce.currentTarget = t; + bc = ce.broadcast; + ce.broadcast = false; + + // default publish may not have emitFacade true -- that + // shouldn't be what the implementer meant to do + ce.emitFacade = true; + + ce.stack = es; + + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? + ret = ret && ce.fire.apply(ce, args || evt.details || []); + + ce.broadcast = bc; + ce.originalTarget = null; + + // stopPropagation() was called + if (ce.stopped) { + break; + } + } + + t._yuievt.bubbling = oldbubble; + } + } + } + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + +FACADE = new Y.EventFacade(); +FACADE_KEYS = {}; + +// Flatten whitelist +for (key in FACADE) { + FACADE_KEYS[key] = true; +} + + +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js b/lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js rename to lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js index edd9485b612..08215a75c8d 100644 --- a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js +++ b/lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-delegate', function (Y, NAME) { /** @@ -346,4 +352,4 @@ delegate._applyFilter = function (filter, args, ce) { Y.delegate = Y.Event.delegate = delegate; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js b/lib/yuilib/3.12.0/event-delegate/event-delegate-min.js similarity index 89% rename from lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js rename to lib/yuilib/3.12.0/event-delegate/event-delegate-min.js index 06b0d2a23c2..c0d112a2dcb 100644 --- a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js +++ b/lib/yuilib/3.12.0/event-delegate/event-delegate-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-delegate",function(e,t){function f(t,r,u,l){var c=n(arguments,0,!0),h=i(u)?u:null,p,d,v,m,g,y,b,w,E;if(s(t)){w=[];if(o(t))for(y=0,b=t.length;y1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u3?e.merge(t.splice(3,1)[0]):{};return a in n||(n[a]=this.MIN_VELOCITY),f in n||(n[f]=this.MIN_DISTANCE),l in n||(n[l]=this.PREVENT_DEFAULT),n},_onStart:function(t,n,i,a){var f=!0,l,h,m,g=i._extra.preventDefault,y=t;t.touches&&(f=t.touches.length===1,t=t.touches[0]),f&&(g&&(!g.call||g(t))&&y.preventDefault(),t.flick={time:(new Date).getTime()},i[c]=t,l=i[p],m=n.get(v)===9?n:n.get(u),l||(l=m.on(r[s],e.bind(this._onEnd,this),null,n,i,a),i[p]=l),i[d]=m.once(r[o],e.bind(this._onMove,this),null,n,i,a))},_onMove:function(e,t,n,r){var i=n[c];i&&i.flick&&(i.flick.time=(new Date).getTime())},_onEnd:function(e,t,n,r){var i=(new Date).getTime(),s=n[c],o=!!s,u=e,h,p,v,m,g,y,b,w,E=n[d];E&&(E.detach(),delete n[d]),o&&(e.changedTouches&&(e.changedTouches.length===1&&e.touches.length===0?u=e.changedTouches[0]:o=!1),o&&(m=n._extra,v=m[l],v&&(!v.call||v(e))&&e.preventDefault(),h=s.flick.time,i=(new Date).getTime(),p=i-h,g=[u.pageX-s.pageX,u.pageY-s.pageY],m.axis?w=m.axis:w=Math.abs(g[0])>=Math.abs(g[1])?"x":"y",y=g[w==="x"?0:1],b=p!==0?y/p:0,isFinite(b)&&Math.abs(y)>=m[f]&&Math.abs(b)>=m[a]&&(e.type="flick",e.flick={time:p,distance:y,velocity:b,axis:w,start:s},r.fire(e)),n[c]=null))},MIN_VELOCITY:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1})},"3.9.1",{requires:["node-base","event-touch","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-flick",function(e,t){var n=e.Event._GESTURE_MAP,r={start:n.start,end:n.end,move:n.move},i="start",s="end",o="move",u="ownerDocument",a="minVelocity",f="minDistance",l="preventDefault",c="_fs",h="_fsh",p="_feh",d="_fmh",v="nodeType";e.Event.define("flick",{on:function(e,t,n){var s=e.on(r[i],this._onStart,this,e,t,n);t[h]=s},detach:function(e,t,n){var r=t[h],i=t[p];r&&(r.detach(),t[h]=null),i&&(i.detach(),t[p]=null)},processArgs:function(t){var n=t.length>3?e.merge(t.splice(3,1)[0]):{};return a in n||(n[a]=this.MIN_VELOCITY),f in n||(n[f]=this.MIN_DISTANCE),l in n||(n[l]=this.PREVENT_DEFAULT),n},_onStart:function(t,n,i,a){var f=!0,l,h,m,g=i._extra.preventDefault,y=t;t.touches&&(f=t.touches.length===1,t=t.touches[0]),f&&(g&&(!g.call||g(t))&&y.preventDefault(),t.flick={time:(new Date).getTime()},i[c]=t,l=i[p],m=n.get(v)===9?n:n.get(u),l||(l=m.on(r[s],e.bind(this._onEnd,this),null,n,i,a),i[p]=l),i[d]=m.once(r[o],e.bind(this._onMove,this),null,n,i,a))},_onMove:function(e,t,n,r){var i=n[c];i&&i.flick&&(i.flick.time=(new Date).getTime())},_onEnd:function(e,t,n,r){var i=(new Date).getTime(),s=n[c],o=!!s,u=e,h,p,v,m,g,y,b,w,E=n[d];E&&(E.detach(),delete n[d]),o&&(e.changedTouches&&(e.changedTouches.length===1&&e.touches.length===0?u=e.changedTouches[0]:o=!1),o&&(m=n._extra,v=m[l],v&&(!v.call||v(e))&&e.preventDefault(),h=s.flick.time,i=(new Date).getTime(),p=i-h,g=[u.pageX-s.pageX,u.pageY-s.pageY],m.axis?w=m.axis:w=Math.abs(g[0])>=Math.abs(g[1])?"x":"y",y=g[w==="x"?0:1],b=p!==0?y/p:0,isFinite(b)&&Math.abs(y)>=m[f]&&Math.abs(b)>=m[a]&&(e.type="flick",e.flick={time:p,distance:y,velocity:b,axis:w,start:s},r.fire(e)),n[c]=null))},MIN_VELOCITY:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1})},"3.12.0",{requires:["node-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-flick/event-flick.js b/lib/yuilib/3.12.0/event-flick/event-flick.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-flick/event-flick.js rename to lib/yuilib/3.12.0/event-flick/event-flick.js index b871f0c27c6..8e3be79a274 100644 --- a/lib/yuilib/3.9.1/build/event-flick/event-flick.js +++ b/lib/yuilib/3.12.0/event-flick/event-flick.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-flick', function (Y, NAME) { /** @@ -269,4 +275,4 @@ Y.Event.define('flick', { }); -}, '3.9.1', {"requires": ["node-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js b/lib/yuilib/3.12.0/event-focus/event-focus-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js rename to lib/yuilib/3.12.0/event-focus/event-focus-debug.js index 645119db843..580db4706e6 100644 --- a/lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js +++ b/lib/yuilib/3.12.0/event-focus/event-focus-debug.js @@ -1,9 +1,15 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-focus', function (Y, NAME) { /** * Adds bubbling and delegation support to DOM events focus and blur. - * + * * @module event * @submodule event-focus */ @@ -69,7 +75,7 @@ function define(type, proxy, directEvent) { yuid = Y.stamp(currentTarget._node), defer = (useActivate || target !== currentTarget), directSub; - + notifier.currentTarget = (delegate) ? target : currentTarget; notifier.container = (delegate) ? currentTarget : null; @@ -196,7 +202,7 @@ function define(type, proxy, directEvent) { break; } } - + delete notifiers[yuid]; count--; } @@ -271,4 +277,4 @@ if (useActivate) { } -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-focus/event-focus-min.js b/lib/yuilib/3.12.0/event-focus/event-focus-min.js similarity index 89% rename from lib/yuilib/3.9.1/build/event-focus/event-focus-min.js rename to lib/yuilib/3.12.0/event-focus/event-focus-min.js index 7c303126748..f6a218e7c74 100644 --- a/lib/yuilib/3.9.1/build/event-focus/event-focus-min.js +++ b/lib/yuilib/3.12.0/event-focus/event-focus-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-focus",function(e,t){function u(t,r,u){var a="_"+t+"Notifiers";e.Event.define(t,{_useActivate:o,_attach:function(i,s,o){return e.DOM.isWindow(i)?n._attach([t,function(e){s.fire(e)},i]):n._attach([r,this._proxy,i,this,s,o],{capture:!0})},_proxy:function(t,r,i){var s=t.target,f=t.currentTarget,l=s.getData(a),c=e.stamp(f._node),h=o||s!==f,p;r.currentTarget=i?s:f,r.container=i?f:null,l?h=!0:(l={},s.setData(a,l),h&&(p=n._attach([u,this._notify,s._node]).sub,p.once=!0)),l[c]||(l[c]=[]),l[c].push(r),h||this._notify(t)},_notify:function(t,n){var r=t.currentTarget,i=r.getData(a),o=r.ancestors(),u=r.get("ownerDocument"),f=[],l=i?e.Object.keys(i).length:0,c,h,p,d,v,m,g,y,b,w;r.clearData(a),o.push(r),u&&o.unshift(u),o._nodes.reverse(),l&&(m=l,o.some(function(t){var n=e.stamp(t),r=i[n],s,o;if(r){l--;for(s=0,o=r.length;sAdd a key listener. The listener will only be notified if the * keystroke detected meets the supplied specification. The * specification is a string that is defined as:

- * + * *
*
spec
*
[{type}:]{code}[,{code}]*
@@ -155,7 +161,7 @@ eventDef.detachDelegate = eventDef.detach; *
  • Y.delegate("key", preventSubmit, "#forms", "enter", "input[type=text]");
  • *
  • Y.one("doc").on("key", viNav, "j,k,l,;");
  • * - * + * * @event key * @for YUI * @param type {string} 'key' @@ -169,4 +175,4 @@ eventDef.detachDelegate = eventDef.detach; Y.Event.define('key', eventDef, true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-key/event-key-min.js b/lib/yuilib/3.12.0/event-key/event-key-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/event-key/event-key-min.js rename to lib/yuilib/3.12.0/event-key/event-key-min.js index e5429a98dc8..46392840688 100644 --- a/lib/yuilib/3.9.1/build/event-key/event-key-min.js +++ b/lib/yuilib/3.12.0/event-key/event-key-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-key",function(e,t){var n="+alt",r="+ctrl",i="+meta",s="+shift",o=e.Lang.trim,u={KEY_MAP:{enter:13,esc:27,backspace:8,tab:9,pageup:33,pagedown:34},_typeRE:/^(up|down|press):/,_keysRE:/^(?:up|down|press):|\+(alt|ctrl|meta|shift)/g,processArgs:function(t){var n=t.splice(3,1)[0],r=e.Array.hash(n.match(/\+(?:alt|ctrl|meta|shift)\b/g)||[]),i={type:this._typeRE.test(n)?RegExp.$1:null,mods:r,keys:null},s=n.replace(this._keysRE,""),u,a,f,l;if(s){s=s.split(","),i.keys={};for(l=s.length-1;l>=0;--l){u=o(s[l]);if(!u)continue;+u==u?i.keys[u]=r:(f=u.toLowerCase(),this.KEY_MAP[f]?(i.keys[this.KEY_MAP[f]]=r,i.type||(i.type="down")):(u=u.charAt(0),a=u.toUpperCase(),r["+shift"]&&(u=a),i.keys[u.charCodeAt(0)]=u===a?e.merge(r,{"+shift":!0}):r))}}return i.type||(i.type="press"),i},on:function(e,t,o,u){var a=t._extra,f="key"+a.type,l=a.keys,c=u?"delegate":"on";t._detach=e[c](f,function(e){var t=l?l[e.which]:a.mods;t&&(!t[n]||t[n]&&e.altKey)&&(!t[r]||t[r]&&e.ctrlKey)&&(!t[i]||t[i]&&e.metaKey)&&(!t[s]||t[s]&&e.shiftKey)&&o.fire(e)},u)},detach:function(e,t,n){t._detach.detach()}};u.delegate=u.on,u.detachDelegate=u.detach,e.Event.define("key",u,!0)},"3.9.1",{requires:["event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-key",function(e,t){var n="+alt",r="+ctrl",i="+meta",s="+shift",o=e.Lang.trim,u={KEY_MAP:{enter:13,esc:27,backspace:8,tab:9,pageup:33,pagedown:34},_typeRE:/^(up|down|press):/,_keysRE:/^(?:up|down|press):|\+(alt|ctrl|meta|shift)/g,processArgs:function(t){var n=t.splice(3,1)[0],r=e.Array.hash(n.match(/\+(?:alt|ctrl|meta|shift)\b/g)||[]),i={type:this._typeRE.test(n)?RegExp.$1:null,mods:r,keys:null},s=n.replace(this._keysRE,""),u,a,f,l;if(s){s=s.split(","),i.keys={};for(l=s.length-1;l>=0;--l){u=o(s[l]);if(!u)continue;+u==u?i.keys[u]=r:(f=u.toLowerCase(),this.KEY_MAP[f]?(i.keys[this.KEY_MAP[f]]=r,i.type||(i.type="down")):(u=u.charAt(0),a=u.toUpperCase(),r["+shift"]&&(u=a),i.keys[u.charCodeAt(0)]=u===a?e.merge(r,{"+shift":!0}):r))}}return i.type||(i.type="press"),i},on:function(e,t,o,u){var a=t._extra,f="key"+a.type,l=a.keys,c=u?"delegate":"on";t._detach=e[c](f,function(e){var t=l?l[e.which]:a.mods;t&&(!t[n]||t[n]&&e.altKey)&&(!t[r]||t[r]&&e.ctrlKey)&&(!t[i]||t[i]&&e.metaKey)&&(!t[s]||t[s]&&e.shiftKey)&&o.fire(e)},u)},detach:function(e,t,n){t._detach.detach()}};u.delegate=u.on,u.detachDelegate=u.detach,e.Event.define("key",u,!0)},"3.12.0",{requires:["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-key/event-key.js b/lib/yuilib/3.12.0/event-key/event-key.js similarity index 96% rename from lib/yuilib/3.9.1/build/event-key/event-key.js rename to lib/yuilib/3.12.0/event-key/event-key.js index 7a888977d1c..bf372298768 100644 --- a/lib/yuilib/3.9.1/build/event-key/event-key.js +++ b/lib/yuilib/3.12.0/event-key/event-key.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-key', function (Y, NAME) { /** @@ -135,7 +141,7 @@ eventDef.detachDelegate = eventDef.detach; *

    Add a key listener. The listener will only be notified if the * keystroke detected meets the supplied specification. The * specification is a string that is defined as:

    - * + * *
    *
    spec
    *
    [{type}:]{code}[,{code}]*
    @@ -155,7 +161,7 @@ eventDef.detachDelegate = eventDef.detach; *
  • Y.delegate("key", preventSubmit, "#forms", "enter", "input[type=text]");
  • *
  • Y.one("doc").on("key", viNav, "j,k,l,;");
  • * - * + * * @event key * @for YUI * @param type {string} 'key' @@ -169,4 +175,4 @@ eventDef.detachDelegate = eventDef.detach; Y.Event.define('key', eventDef, true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js similarity index 95% rename from lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js rename to lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js index 1550ba03bcb..42f37856f72 100644 --- a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js +++ b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-mouseenter', function (Y, NAME) { /** @@ -92,7 +98,7 @@ var domEventProxies = Y.Env.evt.dom_wrappers, if (currentTarget) { currentTarget = toArray(currentTarget); - + for (i = 0, len = currentTarget.length && (!e || !e.stopped); i < len; ++i) { ct = currentTarget[0]; if (!contains(ct, related)) { @@ -127,4 +133,4 @@ Y.Event.define("mouseleave", Y.merge(config, { }), true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js similarity index 86% rename from lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js rename to lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js index 8a91d6ba7f3..d41842978be 100644 --- a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js +++ b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-mouseenter",function(e,t){var n=e.Env.evt.dom_wrappers,r=e.DOM.contains,i=e.Array,s=function(){},o={proxyType:"mouseover",relProperty:"fromElement",_notify:function(t,i,s){var o=this._node,u=t.relatedTarget||t[i];o!==u&&!r(o,u)&&s.fire(new e.DOMEventFacade(t,o,n["event:"+e.stamp(o)+t.type]))},on:function(t,n,r){var i=e.Node.getDOMNode(t),s=[this.proxyType,this._notify,i,null,this.relProperty,r];n.handle=e.Event._attach(s,{facade:!1})},detach:function(e,t){t.handle.detach()},delegate:function(t,n,r,i){var o=e.Node.getDOMNode(t),u=[this.proxyType,s,o,null,r];n.handle=e.Event._attach(u,{facade:!1}),n.handle.sub.filter=i,n.handle.sub.relProperty=this.relProperty,n.handle.sub._notify=this._filterNotify},_filterNotify:function(t,n,s){n=n.slice(),this.args&&n.push.apply(n,this.args);var o=e.delegate._applyFilter(this.filter,n,s),u=n[0].relatedTarget||n[0][this.relProperty],a,f,l,c,h;if(o){o=i(o);for(f=0,l=o.length&&(!a||!a.stopped);fi?e.merge(n.splice(i,1)[0]):{};return w in s||(s[w]=t.PREVENT_DEFAULT),s},O=function(e,t){return t._extra.root||e.get(N)===9?e:e.get(S)},M=function(t){var n=t.getDOMNode();return t.compareTo(e.config.doc)&&n.documentElement?n.documentElement:!1},_=function(e,t,n){e.pageX=t.pageX,e.pageY=t.pageY,e.screenX=t.screenX,e.screenY=t.screenY,e.clientX=t.clientX,e.clientY=t.clientY,e[T]=e[T]||t[T],e[x]=e[x]||t[x],e[E]=n&&n[E]||1},D=function(t){var n=M(t)||t.getDOMNode(),r=t.getData(k);C&&(r||(r=0,t.setData(L,n.style.msTouchAction)),n.style.msTouchAction=e.Event._DEFAULT_TOUCH_ACTION,r++,t.setData(k,r))},P=function(e){var t=M(e)||e.getDOMNode(),n=e.getData(k),r=e.getData(L);C&&(n--,e.setData(k,n),n===0&&t.style.msTouchAction!==r&&(t.style.msTouchAction=r))},H=function(e,t){t&&(!t.call||t(e))&&e.preventDefault()},B=e.Event.define;e.Event._DEFAULT_TOUCH_ACTION="none",B(f,{on:function(e,t,n){D(e),t[l]=e.on(r[i],this._onStart,this,e,t,n)},delegate:function(e,t,n,s){var o=this;t[p]=e.delegate(r[i],function(r){o._onStart(r,e,t,n,!0)},s)},detachDelegate:function(e,t,n,r){var i=t[p];i&&(i.detach(),t[p]=null),P(e)},detach:function(e,t,n){var r=t[l];r&&(r.detach(),t[l]=null),P(e)},processArgs:function(e,t){var n=A(this,e,t);return y in n||(n[y]=this.MIN_TIME),b in n||(n[b]=this.MIN_DISTANCE),n},_onStart:function(t,n,i,u,a){a&&(n=t[x]);var f=i._extra,l=!0,c=f[y],h=f[b],p=f.button,d=f[w],v=O(n,i),m;t.touches?t.touches.length===1?_(t,t.touches[0],f):l=!1:l=p===undefined||p===t.button,l&&(H(t,d),c===0||h===0?this._start(t,n,u,f):(m=[t.pageX,t.pageY],c>0&&(f._ht=e.later(c,this,this._start,[t,n,u,f]),f._hme=v.on(r[o],e.bind(function(){this._cancel(f)},this))),h>0&&(f._hm=v.on(r[s],e.bind(function(e){(Math.abs(e.pageX-m[0])>h||Math.abs(e.pageY-m[1])>h)&&this._start(t,n,u,f)},this)))))},_cancel:function(e){e._ht&&(e._ht.cancel(),e._ht=null),e._hme&&(e._hme.detach(),e._hme=null),e._hm&&(e._hm.detach(),e._hm=null)},_start:function(e,t,n,r){r&&this._cancel(r),e.type=f,t.setData(m,e),n.fire(e)},MIN_TIME:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1}),B(u,{on:function(e,t,n){D(e);var i=O(e,t,r[s]),o=i.on(r[s],this._onMove,this,e,t,n);t[c]=o},delegate:function(e,t,n,i){var o=this;t[d]=e.delegate(r[s],function(r){o._onMove(r,e,t,n,!0)},i)},detach:function(e,t,n){var r=t[c];r&&(r.detach(),t[c]=null),P(e)},detachDelegate:function(e,t,n,r){var i=t[d];i&&(i.detach(),t[d]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onMove:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(m),o=n._extra.preventDefault;s&&(e.touches&&(e.touches.length===1?_(e,e.touches[0]):s=!1),s&&(H(e,o),e.type=u,r.fire(e)))},PREVENT_DEFAULT:!1}),B(a,{on:function(e,t,n){D(e);var i=O(e,t),s=i.on(r[o],this._onEnd,this,e,t,n);t[h]=s},delegate:function(e,t,n,i){var s=this;t[v]=e.delegate(r[o],function(r){s._onEnd(r,e,t,n,!0)},i)},detachDelegate:function(e,t,n,r){var i=t[v];i&&(i.detach(),t[v]=null),P(e)},detach:function(e,t,n){var r=t[h];r&&(r.detach(),t[h]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onEnd:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(g)||t.getData(m),o=n._extra.preventDefault;s&&(e.changedTouches&&(e.changedTouches.length===1?_(e,e.changedTouches[0]):s=!1),s&&(H(e,o),e.type=a,r.fire(e),t.clearData(m),t.clearData(g)))},PREVENT_DEFAULT:!1})},"3.9.1",{requires:["node-base","event-touch","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-move",function(e,t){var n=e.Event._GESTURE_MAP,r={start:n.start,end:n.end,move:n.move},i="start",s="move",o="end",u="gesture"+s,a=u+o,f=u+i,l="_msh",c="_mh",h="_meh",p="_dmsh",d="_dmh",v="_dmeh",m="_ms",g="_m",y="minTime",b="minDistance",w="preventDefault",E="button",S="ownerDocument",x="currentTarget",T="target",N="nodeType",C=e.config.win&&"msPointerEnabled"in e.config.win.navigator,k="msTouchActionCount",L="msInitTouchAction",A=function(t,n,r){var i=r?4:3,s=n.length>i?e.merge(n.splice(i,1)[0]):{};return w in s||(s[w]=t.PREVENT_DEFAULT),s},O=function(e,t){return t._extra.root||e.get(N)===9?e:e.get(S)},M=function(t){var n=t.getDOMNode();return t.compareTo(e.config.doc)&&n.documentElement?n.documentElement:!1},_=function(e,t,n){e.pageX=t.pageX,e.pageY=t.pageY,e.screenX=t.screenX,e.screenY=t.screenY,e.clientX=t.clientX,e.clientY=t.clientY,e[T]=e[T]||t[T],e[x]=e[x]||t[x],e[E]=n&&n[E]||1},D=function(t){var n=M(t)||t.getDOMNode(),r=t.getData(k);C&&(r||(r=0,t.setData(L,n.style.msTouchAction)),n.style.msTouchAction=e.Event._DEFAULT_TOUCH_ACTION,r++,t.setData(k,r))},P=function(e){var t=M(e)||e.getDOMNode(),n=e.getData(k),r=e.getData(L);C&&(n--,e.setData(k,n),n===0&&t.style.msTouchAction!==r&&(t.style.msTouchAction=r))},H=function(e,t){t&&(!t.call||t(e))&&e.preventDefault()},B=e.Event.define;e.Event._DEFAULT_TOUCH_ACTION="none",B(f,{on:function(e,t,n){D(e),t[l]=e.on(r[i],this._onStart,this,e,t,n)},delegate:function(e,t,n,s){var o=this;t[p]=e.delegate(r[i],function(r){o._onStart(r,e,t,n,!0)},s)},detachDelegate:function(e,t,n,r){var i=t[p];i&&(i.detach(),t[p]=null),P(e)},detach:function(e,t,n){var r=t[l];r&&(r.detach(),t[l]=null),P(e)},processArgs:function(e,t){var n=A(this,e,t);return y in n||(n[y]=this.MIN_TIME),b in n||(n[b]=this.MIN_DISTANCE),n},_onStart:function(t,n,i,u,a){a&&(n=t[x]);var f=i._extra,l=!0,c=f[y],h=f[b],p=f.button,d=f[w],v=O(n,i),m;t.touches?t.touches.length===1?_(t,t.touches[0],f):l=!1:l=p===undefined||p===t.button,l&&(H(t,d),c===0||h===0?this._start(t,n,u,f):(m=[t.pageX,t.pageY],c>0&&(f._ht=e.later(c,this,this._start,[t,n,u,f]),f._hme=v.on(r[o],e.bind(function(){this._cancel(f)},this))),h>0&&(f._hm=v.on(r[s],e.bind(function(e){(Math.abs(e.pageX-m[0])>h||Math.abs(e.pageY-m[1])>h)&&this._start(t,n,u,f)},this)))))},_cancel:function(e){e._ht&&(e._ht.cancel(),e._ht=null),e._hme&&(e._hme.detach(),e._hme=null),e._hm&&(e._hm.detach(),e._hm=null)},_start:function(e,t,n,r){r&&this._cancel(r),e.type=f,t.setData(m,e),n.fire(e)},MIN_TIME:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1}),B(u,{on:function(e,t,n){D(e);var i=O(e,t,r[s]),o=i.on(r[s],this._onMove,this,e,t,n);t[c]=o},delegate:function(e,t,n,i){var o=this;t[d]=e.delegate(r[s],function(r){o._onMove(r,e,t,n,!0)},i)},detach:function(e,t,n){var r=t[c];r&&(r.detach(),t[c]=null),P(e)},detachDelegate:function(e,t,n,r){var i=t[d];i&&(i.detach(),t[d]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onMove:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(m),o=n._extra.preventDefault;s&&(e.touches&&(e.touches.length===1?_(e,e.touches[0]):s=!1),s&&(H(e,o),e.type=u,r.fire(e)))},PREVENT_DEFAULT:!1}),B(a,{on:function(e,t,n){D(e);var i=O(e,t),s=i.on(r[o],this._onEnd,this,e,t,n);t[h]=s},delegate:function(e,t,n,i){var s=this;t[v]=e.delegate(r[o],function(r){s._onEnd(r,e,t,n,!0)},i)},detachDelegate:function(e,t,n,r){var i=t[v];i&&(i.detach(),t[v]=null),P(e)},detach:function(e,t,n){var r=t[h];r&&(r.detach(),t[h]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onEnd:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(g)||t.getData(m),o=n._extra.preventDefault;s&&(e.changedTouches&&(e.changedTouches.length===1?_(e,e.changedTouches[0]):s=!1),s&&(H(e,o),e.type=a,r.fire(e),t.clearData(m),t.clearData(g)))},PREVENT_DEFAULT:!1})},"3.12.0",{requires:["node-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-move/event-move.js b/lib/yuilib/3.12.0/event-move/event-move.js similarity index 98% rename from lib/yuilib/3.9.1/build/event-move/event-move.js rename to lib/yuilib/3.12.0/event-move/event-move.js index baa8795a37e..cc2483fba52 100644 --- a/lib/yuilib/3.9.1/build/event-move/event-move.js +++ b/lib/yuilib/3.12.0/event-move/event-move.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-move', function (Y, NAME) { /** @@ -586,4 +592,4 @@ define(GESTURE_MOVE_END, { }); -}, '3.9.1', {"requires": ["node-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js b/lib/yuilib/3.12.0/event-outside/event-outside-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js rename to lib/yuilib/3.12.0/event-outside/event-outside-debug.js index 79fec83563c..3da504a7885 100644 --- a/lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-outside', function (Y, NAME) { /** @@ -66,7 +72,7 @@ Y.Event.defineOutside = function (event, name) { name = name || (event + 'outside'); var config = { - + on: function (node, sub, notifier) { sub.handle = Y.one('doc').on(event, function(e) { if (this.isOutside(node, e.target)) { @@ -75,11 +81,11 @@ Y.Event.defineOutside = function (event, name) { } }, this); }, - + detach: function (node, sub, notifier) { sub.handle.detach(); }, - + delegate: function (node, sub, notifier, filter) { sub.handle = Y.one('doc').delegate(event, function (e) { if (this.isOutside(node, e.target)) { @@ -87,7 +93,7 @@ Y.Event.defineOutside = function (event, name) { } }, filter, this); }, - + isOutside: function (node, target) { return target !== node && !target.ancestor(function (p) { return p === node; @@ -105,4 +111,4 @@ Y.Array.each(nativeEvents, function (event) { }); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside-min.js b/lib/yuilib/3.12.0/event-outside/event-outside-min.js similarity index 77% rename from lib/yuilib/3.9.1/build/event-outside/event-outside-min.js rename to lib/yuilib/3.12.0/event-outside/event-outside-min.js index f7c64d7249f..25e58fb50ef 100644 --- a/lib/yuilib/3.9.1/build/event-outside/event-outside-min.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-outside",function(e,t){var n=["blur","change","click","dblclick","focus","keydown","keypress","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","select","submit"];e.Event.defineOutside=function(t,n){n=n||t+"outside";var r={on:function(n,r,i){r.handle=e.one("doc").on(t,function(e){this.isOutside(n,e.target)&&(e.currentTarget=n,i.fire(e))},this)},detach:function(e,t,n){t.handle.detach()},delegate:function(n,r,i,s){r.handle=e.one("doc").delegate(t,function(e){this.isOutside(n,e.target)&&i.fire(e)},s,this)},isOutside:function(e,t){return t!==e&&!t.ancestor(function(t){return t===e})}};r.detachDelegate=r.detach,e.Event.define(n,r)},e.Array.each(n,function(t){e.Event.defineOutside(t)})},"3.9.1",{requires:["event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-outside",function(e,t){var n=["blur","change","click","dblclick","focus","keydown","keypress","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","select","submit"];e.Event.defineOutside=function(t,n){n=n||t+"outside";var r={on:function(n,r,i){r.handle=e.one("doc").on(t,function(e){this.isOutside(n,e.target)&&(e.currentTarget=n,i.fire(e))},this)},detach:function(e,t,n){t.handle.detach()},delegate:function(n,r,i,s){r.handle=e.one("doc").delegate(t,function(e){this.isOutside(n,e.target)&&i.fire(e)},s,this)},isOutside:function(e,t){return t!==e&&!t.ancestor(function(t){return t===e})}};r.detachDelegate=r.detach,e.Event.define(n,r)},e.Array.each(n,function(t){e.Event.defineOutside(t)})},"3.12.0",{requires:["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside.js b/lib/yuilib/3.12.0/event-outside/event-outside.js similarity index 94% rename from lib/yuilib/3.9.1/build/event-outside/event-outside.js rename to lib/yuilib/3.12.0/event-outside/event-outside.js index 79fec83563c..3da504a7885 100644 --- a/lib/yuilib/3.9.1/build/event-outside/event-outside.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-outside', function (Y, NAME) { /** @@ -66,7 +72,7 @@ Y.Event.defineOutside = function (event, name) { name = name || (event + 'outside'); var config = { - + on: function (node, sub, notifier) { sub.handle = Y.one('doc').on(event, function(e) { if (this.isOutside(node, e.target)) { @@ -75,11 +81,11 @@ Y.Event.defineOutside = function (event, name) { } }, this); }, - + detach: function (node, sub, notifier) { sub.handle.detach(); }, - + delegate: function (node, sub, notifier, filter) { sub.handle = Y.one('doc').delegate(event, function (e) { if (this.isOutside(node, e.target)) { @@ -87,7 +93,7 @@ Y.Event.defineOutside = function (event, name) { } }, filter, this); }, - + isOutside: function (node, target) { return target !== node && !target.ancestor(function (p) { return p === node; @@ -105,4 +111,4 @@ Y.Array.each(nativeEvents, function (event) { }); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js b/lib/yuilib/3.12.0/event-resize/event-resize-debug.js similarity index 87% rename from lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js rename to lib/yuilib/3.12.0/event-resize/event-resize-debug.js index 05f3ec844e3..208d8c8ab31 100644 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-resize', function (Y, NAME) { /** @@ -12,7 +18,7 @@ YUI.add('event-resize', function (Y, NAME) { /** * Old firefox fires the window resize event once when the resize action * finishes, other browsers fire the event periodically during the - * resize. This code uses timeout logic to simulate the Firefox + * resize. This code uses timeout logic to simulate the Firefox * behavior in other browsers. * @event windowresize * @for YUI @@ -51,4 +57,4 @@ Y.Event.define('windowresize', { }); -}, '3.9.1', {"requires": ["node-base", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize-min.js b/lib/yuilib/3.12.0/event-resize/event-resize-min.js similarity index 61% rename from lib/yuilib/3.9.1/build/event-resize/event-resize-min.js rename to lib/yuilib/3.12.0/event-resize/event-resize-min.js index c4644515814..167df8f1a70 100644 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize-min.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-resize",function(e,t){e.Event.define("windowresize",{on:e.UA.gecko&&e.UA.gecko<1.91?function(t,n,r){n._handle=e.Event.attach("resize",function(e){r.fire(e)})}:function(t,n,r){var i=e.config.windowResizeDelay||100;n._handle=e.Event.attach("resize",function(t){n._timer&&n._timer.cancel(),n._timer=e.later(i,e,function(){r.fire(t)})})},detach:function(e,t){t._timer&&t._timer.cancel(),t._handle.detach()}})},"3.9.1",{requires:["node-base","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-resize",function(e,t){e.Event.define("windowresize",{on:e.UA.gecko&&e.UA.gecko<1.91?function(t,n,r){n._handle=e.Event.attach("resize",function(e){r.fire(e)})}:function(t,n,r){var i=e.config.windowResizeDelay||100;n._handle=e.Event.attach("resize",function(t){n._timer&&n._timer.cancel(),n._timer=e.later(i,e,function(){r.fire(t)})})},detach:function(e,t){t._timer&&t._timer.cancel(),t._handle.detach()}})},"3.12.0",{requires:["node-base","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize.js b/lib/yuilib/3.12.0/event-resize/event-resize.js similarity index 87% rename from lib/yuilib/3.9.1/build/event-resize/event-resize.js rename to lib/yuilib/3.12.0/event-resize/event-resize.js index 05f3ec844e3..208d8c8ab31 100644 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-resize', function (Y, NAME) { /** @@ -12,7 +18,7 @@ YUI.add('event-resize', function (Y, NAME) { /** * Old firefox fires the window resize event once when the resize action * finishes, other browsers fire the event periodically during the - * resize. This code uses timeout logic to simulate the Firefox + * resize. This code uses timeout logic to simulate the Firefox * behavior in other browsers. * @event windowresize * @for YUI @@ -51,4 +57,4 @@ Y.Event.define('windowresize', { }); -}, '3.9.1', {"requires": ["node-base", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js b/lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js index 09e6ed87446..2d639261121 100644 --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-simulate', function (Y, NAME) { (function() { @@ -951,4 +957,4 @@ Y.Event.simulate = function(target, type, options){ -}, '3.9.1', {"requires": ["event-base"]}); +}, '3.12.0', {"requires": ["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js b/lib/yuilib/3.12.0/event-simulate/event-simulate-min.js similarity index 96% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate-min.js index 76bff615b4a..0e4e5f3543b 100644 --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("event-simulate",function(e,t){(function(){function d(t,u,a,f,l,c,h,p,d,v,m){t||e.error("simulateKeyEvent(): Invalid target.");if(r(u)){u=u.toLowerCase();switch(u){case"textevent":u="keypress";break;case"keyup":case"keydown":case"keypress":break;default:e.error("simulateKeyEvent(): Event type '"+u+"' not supported.")}}else e.error("simulateKeyEvent(): Event type must be a string.");i(a)||(a=!0),i(f)||(f=!0),s(l)||(l=e.config.win),i(c)||(c=!1),i(h)||(h=!1),i(p)||(p=!1),i(d)||(d=!1),o(v)||(v=0),o(m)||(m=0);var g=null;if(n(e.config.doc.createEvent)){try{g=e.config.doc.createEvent("KeyEvents"),g.initKeyEvent(u,a,f,l,c,h,p,d,v,m)}catch(y){try{g=e.config.doc.createEvent("Events")}catch(b){g=e.config.doc.createEvent("UIEvents")}finally{g.initEvent(u,a,f),g.view=l,g.altKey=h,g.ctrlKey=c,g.shiftKey=p,g.metaKey=d,g.keyCode=v,g.charCode=m}}t.dispatchEvent(g)}else s(e.config.doc.createEventObject)?(g=e.config.doc.createEventObject(),g.bubbles=a,g.cancelable=f,g.view=l,g.ctrlKey=c,g.altKey=h,g.shiftKey=p,g.metaKey=d,g.keyCode=m>0?m:v,t.fireEvent("on"+u,g)):e.error("simulateKeyEvent(): No event simulation framework present.")}function v(t,f,l,c,h,p,d,v,m,g,y,b,w,E,S,x){t||e.error("simulateMouseEvent(): Invalid target."),r(f)?!u[f.toLowerCase()]&&!a[f]&&e.error("simulateMouseEvent(): Event type '"+f+"' not supported."):e.error("simulateMouseEvent(): Event type must be a string."),i(l)||(l=!0),i(c)||(c=f!=="mousemove"),s(h)||(h=e.config.win),o(p)||(p=1),o(d)||(d=0),o(v)||(v=0),o(m)||(m=0),o(g)||(g=0),i(y)||(y=!1),i(b)||(b=!1),i(w)||(w=!1),i(E)||(E=!1),o(S)||(S=0),x=x||null;var T=null;if(n(e.config.doc.createEvent))T=e.config.doc.createEvent("MouseEvents"),T.initMouseEvent?T.initMouseEvent(f,l,c,h,p,d,v,m,g,y,b,w,E,S,x):(T=e.config.doc.createEvent("UIEvents"),T.initEvent(f,l,c),T.view=h,T.detail=p,T.screenX=d,T.screenY=v,T.clientX=m,T.clientY=g,T.ctrlKey=y,T.altKey=b,T.metaKey=E,T.shiftKey=w,T.button=S,T.relatedTarget=x),x&&!T.relatedTarget&&(f==="mouseout"?T.toElement=x:f==="mouseover"&&(T.fromElement=x)),t.dispatchEvent(T);else if(s(e.config.doc.createEventObject)){T=e.config.doc.createEventObject(),T.bubbles=l,T.cancelable=c,T.view=h,T.detail=p,T.screenX=d,T.screenY=v,T.clientX=m,T.clientY=g,T.ctrlKey=y,T.altKey=b,T.metaKey=E,T.shiftKey=w;switch(S){case 0:T.button=1;break;case 1:T.button=4;break;case 2:break;default:T.button=0}T.relatedTarget=x,t.fireEvent("on"+f,T)}else e.error("simulateMouseEvent(): No event simulation framework present.")}function m(t,u,a,f,h,p){t||e.error("simulateUIEvent(): Invalid target."),r(u)?(u=u.toLowerCase(),l[u]||e.error("simulateUIEvent(): Event type '"+u+"' not supported.")):e.error("simulateUIEvent(): Event type must be a string.");var d=null;i(a)||(a=u in c),i(f)||(f=u==="submit"),s(h)||(h=e.config.win),o(p)||(p=1),n(e.config.doc.createEvent)?(d=e.config.doc.createEvent("UIEvents"),d.initUIEvent(u,a,f,h,p),t.dispatchEvent(d)):s(e.config.doc.createEventObject)?(d=e.config.doc.createEventObject(),d.bubbles=a,d.cancelable=f,d.view=h,d.detail=p,t.fireEvent("on"+u,d)):e.error("simulateUIEvent(): No event simulation framework present.")}function g(t,n,r,i,s,o,u,a,f,l,c,h,d,v,m,g){var y;(!e.UA.ios||e.UA.ios<2)&&e.error("simulateGestureEvent(): Native gesture DOM eventframe is not available in this platform."),t||e.error("simulateGestureEvent(): Invalid target."),e.Lang.isString(n)?(n=n.toLowerCase(),p[n]||e.error("simulateTouchEvent(): Event type '"+n+"' not supported.")):e.error("simulateGestureEvent(): Event type must be a string."),e.Lang.isBoolean(r)||(r=!0),e.Lang.isBoolean(i)||(i=!0),e.Lang.isObject(s)||(s=e.config.win),e.Lang.isNumber(o)||(o=2),e.Lang.isNumber(u)||(u=0),e.Lang.isNumber(a)||(a=0),e.Lang.isNumber(f)||(f=0),e.Lang.isNumber(l)||(l=0),e.Lang.isBoolean(c)||(c=!1),e.Lang.isBoolean(h)||(h=!1),e.Lang.isBoolean(d)||(d=!1),e.Lang.isBoolean(v)||(v=!1),e.Lang.isNumber(m)||(m=1),e.Lang.isNumber(g)||(g=0),y=e.config.doc.createEvent("GestureEvent"),y.initGestureEvent(n,r,i,s,o,u,a,f,l,c,h,d,v,t,m,g),t.dispatchEvent(y)}function y(t,n,r,i,s,o,u,a,f,l,c,p,d,v,m,g,y,b,w){var E;t||e.error("simulateTouchEvent(): Invalid target."),e.Lang.isString(n)?(n=n.toLowerCase(),h[n]||e.error("simulateTouchEvent(): Event type '"+n+"' not supported.")):e.error("simulateTouchEvent(): Event type must be a string."),n==="touchstart"||n==="touchmove"?m.length===0&&e.error("simulateTouchEvent(): No touch object in touches"):n==="touchend"&&y.length===0&&e.error("simulateTouchEvent(): No touch object in changedTouches"),e.Lang.isBoolean(r)||(r=!0),e.Lang.isBoolean(i)||(i=n!=="touchcancel"),e.Lang.isObject(s)||(s=e.config.win),e.Lang.isNumber(o)||(o=1),e.Lang.isNumber(u)||(u=0),e.Lang.isNumber(a)||(a=0),e.Lang.isNumber(f)||(f=0),e.Lang.isNumber(l)||(l=0),e.Lang.isBoolean(c)||(c=!1),e.Lang.isBoolean(p)||(p=!1),e.Lang.isBoolean(d)||(d=!1),e.Lang.isBoolean(v)||(v=!1),e.Lang.isNumber(b)||(b=1),e.Lang.isNumber(w)||(w=0),e.Lang.isFunction(e.config.doc.createEvent)?(e.UA.android?e.UA.android<4?(E=e.config.doc.createEvent("MouseEvents"),E.initMouseEvent(n,r,i,s,o,u,a,f,l,c,p,d,v,0,t),E.touches=m,E.targetTouches=g,E.changedTouches=y):(E=e.config.doc.createEvent("TouchEvent"),E.initTouchEvent(m,g,y,n,s,u,a,f,l,c,p,d,v)):e.UA.ios?e.UA.ios>=2?(E=e.config.doc.createEvent("TouchEvent"),E.initTouchEvent(n,r,i,s,o,u,a,f,l,c,p,d,v,m,g,y,b,w)):e.error("simulateTouchEvent(): No touch event simulation framework present for iOS, "+e.UA.ios+"."):e.error("simulateTouchEvent(): Not supported agent yet, "+e.UA.userAgent),t.dispatchEvent(E)):e.error("simulateTouchEvent(): No event simulation framework present.")}var t=e.Lang,n=t.isFunction,r=t.isString,i=t.isBoolean,s=t.isObject,o=t.isNumber,u={click:1,dblclick:1,mouseover:1,mouseout:1,mousedown:1,mouseup:1,mousemove:1,contextmenu:1},a={MSPointerOver:1,MSPointerOut:1,MSPointerDown:1,MSPointerUp:1,MSPointerMove:1},f={keydown:1,keyup:1,keypress:1},l={submit:1,blur:1,change:1,focus:1,resize:1,scroll:1,select:1},c={scroll:1,resize:1,reset:1,submit:1,change:1,select -:1,error:1,abort:1},h={touchstart:1,touchmove:1,touchend:1,touchcancel:1},p={gesturestart:1,gesturechange:1,gestureend:1};e.mix(c,u),e.mix(c,f),e.mix(c,h),e.Event.simulate=function(t,n,r){r=r||{},u[n]||a[n]?v(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.button,r.relatedTarget):f[n]?d(t,n,r.bubbles,r.cancelable,r.view,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.keyCode,r.charCode):l[n]?m(t,n,r.bubbles,r.cancelable,r.view,r.detail):h[n]?e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6)?y(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.touches,r.targetTouches,r.changedTouches,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated. Use gesture-simulate module instead."):e.UA.ios&&e.UA.ios>=2&&p[n]?g(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated.")}})()},"3.9.1",{requires:["event-base"]}); +:1,error:1,abort:1},h={touchstart:1,touchmove:1,touchend:1,touchcancel:1},p={gesturestart:1,gesturechange:1,gestureend:1};e.mix(c,u),e.mix(c,f),e.mix(c,h),e.Event.simulate=function(t,n,r){r=r||{},u[n]||a[n]?v(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.button,r.relatedTarget):f[n]?d(t,n,r.bubbles,r.cancelable,r.view,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.keyCode,r.charCode):l[n]?m(t,n,r.bubbles,r.cancelable,r.view,r.detail):h[n]?e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6)?y(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.touches,r.targetTouches,r.changedTouches,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated. Use gesture-simulate module instead."):e.UA.ios&&e.UA.ios>=2&&p[n]?g(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated.")}})()},"3.12.0",{requires:["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate.js b/lib/yuilib/3.12.0/event-simulate/event-simulate.js similarity index 99% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate.js index 09e6ed87446..2d639261121 100644 --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-simulate', function (Y, NAME) { (function() { @@ -951,4 +957,4 @@ Y.Event.simulate = function(target, type, options){ -}, '3.9.1', {"requires": ["event-base"]}); +}, '3.12.0', {"requires": ["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js rename to lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js index 1e4beafdeba..def388dbb1e 100644 --- a/lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js +++ b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-synthetic', function (Y, NAME) { /** @@ -98,6 +104,17 @@ Notifier.prototype.fire = function (e) { sub.context = thisObj || event.currentTarget || ce.host; ret = ce.fire.apply(ce, args); + + // have to handle preventedFn and stoppedFn manually because + // Notifier CustomEvents are forced to emitFacade=false + if (e.prevented && ce.preventedFn) { + ce.preventedFn.apply(ce, args); + } + + if (e.stopped && ce.stoppedFn) { + ce.stoppedFn.apply(ce, args); + } + sub.context = thisObj; // reset for future firing // to capture callbacks that return false to stopPropagation. @@ -106,7 +123,9 @@ Notifier.prototype.fire = function (e) { }; /** - * Manager object for synthetic event subscriptions to aggregate multiple synths on the same node without colliding with actual DOM subscription entries in the global map of DOM subscriptions. Also facilitates proper cleanup on page unload. + * Manager object for synthetic event subscriptions to aggregate multiple synths on the + * same node without colliding with actual DOM subscription entries in the global map of + * DOM subscriptions. Also facilitates proper cleanup on page unload. * * @class SynthRegistry * @constructor @@ -236,7 +255,7 @@ Y.mix(SyntheticEvent, { yuid = Y.stamp(el), key = 'event:' + yuid + type + '_synth', events = DOMMap[yuid]; - + if (create) { if (!events) { events = DOMMap[yuid] = {}; @@ -830,4 +849,4 @@ Y.Event.define = function (type, config, force) { }; -}, '3.9.1', {"requires": ["node-base", "event-custom-complex"]}); +}, '3.12.0', {"requires": ["node-base", "event-custom-complex"]}); diff --git a/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js new file mode 100644 index 00000000000..1b23ede4dda --- /dev/null +++ b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-synthetic",function(e,t){function c(e,t){this.handle=e,this.emitFacade=t}function h(e,t,n){this.handles=[],this.el=e,this.key=n,this.domkey=t}function p(){this._init.apply(this,arguments)}var n=e.CustomEvent,r=e.Env.evt.dom_map,i=e.Array,s=e.Lang,o=s.isObject,u=s.isString,a=s.isArray,f=e.Selector.query,l=function(){};c.prototype.fire=function(t){var n=i(arguments,0,!0),r=this.handle,s=r.evt,u=r.sub,a=u.context,f=u.filter,l=t||{},c;if(this.emitFacade){if(!t||!t.preventDefault)l=s._getFacade(),o(t)&&!t.preventDefault?(e.mix(l,t,!0),n[0]=l):n.unshift(l);l.type=s.type,l.details=n.slice(),f&&(l.container=s.host)}else f&&o(t)&&t.currentTarget&&n.shift();return u.context=a||l.currentTarget||s.host,c=s.fire.apply(s,n),t.prevented&&s.preventedFn&&s.preventedFn.apply(s,n),t.stopped&&s.stoppedFn&&s.stoppedFn.apply(s,n),u.context=a,c},h.prototype={constructor:h,type:"_synth",fn:l,capture:!1,register:function(e){e.evt.registry=this,this.handles.push(e)},unregister:function(t){var n=this.handles,i=r[this.domkey],s;for(s=n.length-1;s>=0;--s)if(n[s].sub===t){n.splice(s,1);break}n.length||(delete i[this.key],e.Object.size(i)||delete r[this.domkey])},detachAll:function(){var e=this.handles,t=e.length;while(--t>=0)e[t].detach()}},e.mix(p,{Notifier:c,SynthRegistry:h,getRegistry:function(t,n,i){var s=t._node,o=e.stamp(s),u="event:"+o+n+"_synth",a=r[o];return i&&(a||(a=r[o]={}),a[u]||(a[u]=new h(s,o,u))),a&&a[u]||null},_deleteSub:function(e){if(e&&e.fn){var t=this.eventDef,r=e.filter?"detachDelegate":"detach";this._subscribers=[],n.keepDeprecatedSubs&&(this.subscribers={}),t[r](e.node,e,this.notifier,e.filter),this.registry.unregister(e),delete e.fn,delete e.node,delete e.context}},prototype:{constructor:p,_init:function(){var e=this.publishConfig||(this.publishConfig={});this.emitFacade="emitFacade"in e?e.emitFacade:!0,e.emitFacade=!1},processArgs:l,on:l,detach:l,delegate:l,detachDelegate:l,_on:function(t,n){var r=[],s=t.slice(),o=this.processArgs(t,n),a=t[2],l=n?"delegate":"on",c,h;return c=u(a)?f(a):i(a||e.one(e.config.win)),!c.length&&u(a)?(h=e.on("available",function(){e.mix(h,e[l].apply(e,s),!0)},a),h):(e.Array.each(c,function(i){var s=t.slice(),u;i=e.one(i),i&&(n&&(u=s.splice(3,1)[0]),s.splice(0,4,s[1],s[3]),(!this.preventDups||!this.getSubs(i,t,null,!0))&&r.push(this._subscribe(i,l,s,o,u)))},this),r.length===1?r[0]:new e.EventHandle(r))},_subscribe:function(t,n,r,i,s){var o=new e.CustomEvent(this.type,this.publishConfig),u=o.on.apply(o,r),a=new c(u,this.emitFacade),f=p.getRegistry(t,this.type,!0),l=u.sub;return l.node=t,l.filter=s,i&&this.applyArgExtras(i,l),e.mix(o,{eventDef:this,notifier:a,host:t,currentTarget:t,target:t,el:t._node,_delete:p._deleteSub},!0),u.notifier=a,f.register(u),this[n](t,l,a,s),u},applyArgExtras:function(e,t){t._extra=e},_detach:function(t){var n=t[2],r=u(n)?f(n):i(n),s,o,a,l,c;t.splice(2,1);for(o=0,a=r.length;o=0;--c)l[c].detach()}}},getSubs:function(e,t,n,r){var i=p.getRegistry(e,this.type),s=[],o,u,a,f;if(i){o=i.handles,n||(n=this.subMatch);for(u=0,a=o.length;u= 0) { + sensitivity = subscription._extra.sensitivity; + } //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.changedTouches) { + if (event.changedTouches) { endXY = [ event.changedTouches[0].pageX, event.changedTouches[0].pageY ]; clientXY = [event.changedTouches[0].clientX, event.changedTouches[0].clientY]; } @@ -239,10 +284,8 @@ Y.Event.define(EVT_TAP, { clientXY = [event.clientX, event.clientY]; } - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - // make sure mouse didn't move - if (Math.abs(endXY[0] - startXY[0]) === 0 && Math.abs(endXY[1] - startXY[1]) === 0) { + if (Math.abs(endXY[0] - startXY[0]) <= sensitivity && Math.abs(endXY[1] - startXY[1]) <= sensitivity) { event.type = EVT_TAP; event.pageX = endXY[0]; @@ -253,8 +296,10 @@ Y.Event.define(EVT_TAP, { notifier.fire(event); } + + detachHandles(subscription, [HANDLES.END, HANDLES.CANCEL]); } }); -}, '3.9.1', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.12.0/event-tap/event-tap-min.js b/lib/yuilib/3.12.0/event-tap/event-tap-min.js new file mode 100644 index 00000000000..81bc0c6ed9e --- /dev/null +++ b/lib/yuilib/3.12.0/event-tap/event-tap-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-tap",function(e,t){function u(t,n){n=n||e.Object.values(o),e.Array.each(n,function(e){var n=t[e];n&&(n.detach(),t[e]=null)})}var n=e.config.doc,r=e.Event._GESTURE_MAP,i=r.start,s="tap",o={START:"Y_TAP_ON_START_HANDLE",END:"Y_TAP_ON_END_HANDLE",CANCEL:"Y_TAP_ON_CANCEL_HANDLE"};e.Event.define(s,{publishConfig:{preventedFn:function(e){var t=e.target.once("click",function(e){e.preventDefault()});setTimeout(function(){t.detach()},100)}},processArgs:function(e,t){if(!t){var n=e[3];return e.splice(3,1),n}},on:function(e,t,n){t[o.START]=e.on(i,this._start,this,e,t,n)},detach:function(e,t,n){u(t)},delegate:function(e,t,n,r){t[o.START]=e.delegate(i,function(r){this._start(r,e,t,n,!0)},r,this)},detachDelegate:function(e,t,n){u(t)},_start:function(e,t,n,r,i){var s={canceled:!1,eventType:e.type},u=n.preventMouse||!1;if(e.button&&e.button===3)return;if(e.touches&&e.touches.length!==1)return;s.node=i?e.currentTarget:t,e.touches?s.startXY=[e.touches[0].pageX,e.touches[0].pageY]:s.startXY=[e.pageX,e.pageY],e.touches?(n[o.END]=t.once("touchend",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("touchcancel",this.detach,this,t,n,r,i,s),n.preventMouse=!0):s.eventType.indexOf("mouse")!==-1&&!u?(n[o.END]=t.once("mouseup",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("mousecancel",this.detach,this,t,n,r,i,s)):s.eventType.indexOf("mouse")!==-1&&u?n.preventMouse=!1:s.eventType.indexOf("MSPointer")!==-1&&(n[o.END]=t.once("MSPointerUp",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("MSPointerCancel",this.detach,this,t,n,r,i,s))},_end:function(e,t,n,r,i,a){var f=a.startXY,l,c,h=15;n._extra&&n._extra.sensitivity>=0&&(h=n._extra.sensitivity),e.changedTouches?(l=[e.changedTouches[0].pageX,e.changedTouches[0].pageY],c=[e.changedTouches[0].clientX,e.changedTouches[0].clientY]):(l=[e.pageX,e.pageY],c=[e.clientX,e.clientY]),Math.abs(l[0]-f[0])<=h&&Math.abs(l[1]-f[1])<=h&&(e.type=s,e.pageX=l[0],e.pageY=l[1],e.clientX=c[0],e.clientY=c[1],e.currentTarget=a.node,r.fire(e)),u(n,[o.END,o.CANCEL])}})},"3.12.0",{requires:["node-base","event-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-tap/event-tap.js b/lib/yuilib/3.12.0/event-tap/event-tap.js similarity index 54% rename from lib/yuilib/3.9.1/build/event-tap/event-tap.js rename to lib/yuilib/3.12.0/event-tap/event-tap.js index 1069d8927f7..a12485a2c89 100644 --- a/lib/yuilib/3.9.1/build/event-tap/event-tap.js +++ b/lib/yuilib/3.12.0/event-tap/event-tap.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-tap', function (Y, NAME) { /** @@ -8,7 +14,7 @@ to build input device agnostic components which behave the same in response to e interaction. 'tap' is like a touchscreen 'click', only it requires much less finger-down time since it listens to touch events, -but reverts to mouse events if touch is not supported. +but reverts to mouse events if touch is not supported. @example @@ -20,30 +26,24 @@ but reverts to mouse events if touch is not supported. @module event @submodule event-tap @author Andres Garza, matuzak and tilo mitra -@since 3.7.0 +@since 3.7.0 */ var doc = Y.config.doc, GESTURE_MAP = Y.Event._GESTURE_MAP, - SUPPORTS_TOUCHES = !!(doc && doc.createTouch), EVT_START = GESTURE_MAP.start, - EVT_MOVE = GESTURE_MAP.move, - EVT_END = GESTURE_MAP.end, - EVT_CANCEL = GESTURE_MAP.cancel, EVT_TAP = 'tap', HANDLES = { START: 'Y_TAP_ON_START_HANDLE', - MOVE: 'Y_TAP_ON_MOVE_HANDLE', END: 'Y_TAP_ON_END_HANDLE', CANCEL: 'Y_TAP_ON_CANCEL_HANDLE' }; -function detachHelper(subscription, handles, subset, context) { +function detachHandles(subscription, handles) { + handles = handles || Y.Object.values(HANDLES); - handles = subset ? handles : [ handles.START, handles.MOVE, handles.END, handles.CANCEL ]; - - Y.Array.each(handles, function (item, index, array) { + Y.Array.each(handles, function (item) { var handle = subscription[item]; if (handle) { handle.detach(); @@ -66,11 +66,40 @@ This event can also be listened for using node.delegate(). @return {EventHandle} the detach handle */ Y.Event.define(EVT_TAP, { + publishConfig: { + preventedFn: function (e) { + var sub = e.target.once('click', function (click) { + click.preventDefault(); + }); + // Make sure to detach the subscription during the next event loop + // so this doesn't `preventDefault()` on the wrong click event. + setTimeout(function () { + sub.detach(); + //Setting this to `0` causes the detachment to occur before the click + //comes in on Android 4.0.3-4.0.4. 100ms seems to be a reliable number here + //that works across the board. + }, 100); + } + }, + + processArgs: function (args, isDelegate) { + + //if we return for the delegate use case, then the `filter` argument + //returns undefined, and we have to get the filter from sub._extra[0] (ugly) + + if (!isDelegate) { + var extra = args[3]; + // remove the extra arguments from the array as specified by + // http://yuilibrary.com/yui/docs/event/synths.html + args.splice(3,1); + return extra; + } + }, /** This function should set up the node that will eventually fire the event. - Usage: + Usage: node.on('tap', function (e) { }); @@ -83,7 +112,7 @@ Y.Event.define(EVT_TAP, { @static **/ on: function (node, subscription, notifier) { - subscription[HANDLES.START] = node.on(EVT_START, this.touchStart, this, node, subscription, notifier); + subscription[HANDLES.START] = node.on(EVT_START, this._start, this, node, subscription, notifier); }, /** @@ -97,15 +126,15 @@ Y.Event.define(EVT_TAP, { @static **/ detach: function (node, subscription, notifier) { - detachHelper(subscription, HANDLES); + detachHandles(subscription); }, /** - Event delegation for the 'tap' event. The delegated event will use a - supplied selector or filtering function to test if the event references at least one + Event delegation for the 'tap' event. The delegated event will use a + supplied selector or filtering function to test if the event references at least one node that should trigger the subscription callback. - Usage: + Usage: node.delegate('tap', function (e) { }, 'li a'); @@ -120,7 +149,7 @@ Y.Event.define(EVT_TAP, { **/ delegate: function (node, subscription, notifier, filter) { subscription[HANDLES.START] = node.delegate(EVT_START, function (e) { - this.touchStart(e, node, subscription, notifier, true); + this._start(e, node, subscription, notifier, true); }, filter, this); }, @@ -136,14 +165,13 @@ Y.Event.define(EVT_TAP, { @static **/ detachDelegate: function (node, subscription, notifier) { - detachHelper(subscription, HANDLES); + detachHandles(subscription); }, - /** Called when the monitor(s) are tapped on, either through touchstart or mousedown. - @method touchStart + @method _start @param {DOMEventFacade} event @param {Y.Node} node @param {Array} subscription @@ -152,13 +180,15 @@ Y.Event.define(EVT_TAP, { @protected @static **/ - touchStart: function (event, node, subscription, notifier, delegate) { + _start: function (event, node, subscription, notifier, delegate) { var context = { - canceled: false - }; - //move ways to quit early to the top. + canceled: false, + eventType: event.type + }, + preventMouse = subscription.preventMouse || false; + //move ways to quit early to the top. // no right clicks if (event.button && event.button === 3) { return; @@ -173,44 +203,54 @@ Y.Event.define(EVT_TAP, { //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.touches) { + if (event.touches) { context.startXY = [ event.touches[0].pageX, event.touches[0].pageY ]; } else { context.startXY = [ event.pageX, event.pageY ]; } - //Possibly outdated issue: something is off with the move that it attaches it but never triggers the handler - subscription[HANDLES.MOVE] = node.once(EVT_MOVE, this.touchMove, this, node, subscription, notifier, delegate, context); - subscription[HANDLES.END] = node.once(EVT_END, this.touchEnd, this, node, subscription, notifier, delegate, context); - subscription[HANDLES.CANCEL] = node.once(EVT_CANCEL, this.touchMove, this, node, subscription, notifier, delegate, context); - }, + //If `onTouchStart()` was called by a touch event, set up touch event subscriptions. + //Otherwise, set up mouse/pointer event event subscriptions. + if (event.touches) { - /** - Called when the monitor(s) fires a touchmove or touchcancel event (or the mouse equivalent). - This method detaches event handlers so that 'tap' is not fired. + subscription[HANDLES.END] = node.once('touchend', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('touchcancel', this.detach, this, node, subscription, notifier, delegate, context); - @method touchMove - @param {DOMEventFacade} event - @param {Y.Node} node - @param {Array} subscription - @param {Boolean} notifier - @param {Boolean} delegate - @param {Object} context - @protected - @static - **/ - touchMove: function (event, node, subscription, notifier, delegate, context) { - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - context.cancelled = true; + //Since this is a touch* event, there will be corresponding mouse events + //that will be fired. We don't want these events to get picked up and fire + //another `tap` event, so we'll set this variable to `true`. + subscription.preventMouse = true; + } + + //Only add these listeners if preventMouse is `false` + //ie: not when touch events have already been subscribed to + else if (context.eventType.indexOf('mouse') !== -1 && !preventMouse) { + subscription[HANDLES.END] = node.once('mouseup', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('mousecancel', this.detach, this, node, subscription, notifier, delegate, context); + } + + //If a mouse event comes in after a touch event, it will go in here and + //reset preventMouse to `true`. + //If a mouse event comes in without a prior touch event, preventMouse will be + //false in any case, so this block doesn't do anything. + else if (context.eventType.indexOf('mouse') !== -1 && preventMouse) { + subscription.preventMouse = false; + } + + else if (context.eventType.indexOf('MSPointer') !== -1) { + subscription[HANDLES.END] = node.once('MSPointerUp', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('MSPointerCancel', this.detach, this, node, subscription, notifier, delegate, context); + } }, + /** Called when the monitor(s) fires a touchend event (or the mouse equivalent). This method fires the 'tap' event if certain requirements are met. - @method touchEnd + @method _end @param {DOMEventFacade} event @param {Y.Node} node @param {Array} subscription @@ -220,14 +260,19 @@ Y.Event.define(EVT_TAP, { @protected @static **/ - touchEnd: function (event, node, subscription, notifier, delegate, context) { + _end: function (event, node, subscription, notifier, delegate, context) { var startXY = context.startXY, endXY, - clientXY; + clientXY, + sensitivity = 15; + + if (subscription._extra && subscription._extra.sensitivity >= 0) { + sensitivity = subscription._extra.sensitivity; + } //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.changedTouches) { + if (event.changedTouches) { endXY = [ event.changedTouches[0].pageX, event.changedTouches[0].pageY ]; clientXY = [event.changedTouches[0].clientX, event.changedTouches[0].clientY]; } @@ -236,10 +281,8 @@ Y.Event.define(EVT_TAP, { clientXY = [event.clientX, event.clientY]; } - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - // make sure mouse didn't move - if (Math.abs(endXY[0] - startXY[0]) === 0 && Math.abs(endXY[1] - startXY[1]) === 0) { + if (Math.abs(endXY[0] - startXY[0]) <= sensitivity && Math.abs(endXY[1] - startXY[1]) <= sensitivity) { event.type = EVT_TAP; event.pageX = endXY[0]; @@ -250,8 +293,10 @@ Y.Event.define(EVT_TAP, { notifier.fire(event); } + + detachHandles(subscription, [HANDLES.END, HANDLES.CANCEL]); } }); -}, '3.9.1', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js b/lib/yuilib/3.12.0/event-touch/event-touch-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js rename to lib/yuilib/3.12.0/event-touch/event-touch-debug.js index d33d0cf26c3..9474499b586 100644 --- a/lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js +++ b/lib/yuilib/3.12.0/event-touch/event-touch-debug.js @@ -1,9 +1,15 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-touch', function (Y, NAME) { /** Adds touch event facade normalization properties (touches, changedTouches, targetTouches etc.) to the DOM event facade. Adds -touch events to the DOM events whitelist. +touch events to the DOM events whitelist. @example YUI().use('event-touch', function (Y) { @@ -73,7 +79,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { etCached = touchCache && touchCache[Y.stamp(et, true)]; this.targetTouches[i] = etCached || new Y.DOMEventFacade(et, currentTarget, wrapper); - + if (etCached) { Y.log("Found native event in touches. Using same facade in targetTouches", "info", "event-touch"); } } } @@ -89,7 +95,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { For `touchmove`, the touch points that have changed since the last event. - + For `touchend`, the touch points that have been removed from the touch surface. @@ -103,7 +109,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { etCached = touchCache && touchCache[Y.stamp(et, true)]; this.changedTouches[i] = etCached || new Y.DOMEventFacade(et, currentTarget, wrapper); - + if (etCached) { Y.log("Found native event in touches. Using same facade in changedTouches", "info", "event-touch"); } } } @@ -132,7 +138,7 @@ if (Y.Node.DOM_EVENTS) { gesturestart:1, gesturechange:1, gestureend:1, - MSPointerDown:1, + MSPointerDown:1, MSPointerUp:1, MSPointerMove:1 }); @@ -140,10 +146,10 @@ if (Y.Node.DOM_EVENTS) { //Add properties to Y.EVENT.GESTURE_MAP based on feature detection. if ((win && ("ontouchstart" in win)) && !(Y.UA.chrome && Y.UA.chrome < 6)) { - GESTURE_MAP.start = "touchstart"; - GESTURE_MAP.end = "touchend"; - GESTURE_MAP.move = "touchmove"; - GESTURE_MAP.cancel = "touchcancel"; + GESTURE_MAP.start = ["touchstart", "mousedown"]; + GESTURE_MAP.end = ["touchend", "mouseup"]; + GESTURE_MAP.move = ["touchmove", "mousemove"]; + GESTURE_MAP.cancel = ["touchcancel", "mousecancel"]; } @@ -175,4 +181,4 @@ else { Y.Event._GESTURE_MAP = GESTURE_MAP; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-touch/event-touch-min.js b/lib/yuilib/3.12.0/event-touch/event-touch-min.js similarity index 62% rename from lib/yuilib/3.9.1/build/event-touch/event-touch-min.js rename to lib/yuilib/3.12.0/event-touch/event-touch-min.js index 336ece90c70..7183bf1e160 100644 --- a/lib/yuilib/3.9.1/build/event-touch/event-touch-min.js +++ b/lib/yuilib/3.12.0/event-touch/event-touch-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-touch",function(e,t){var n="scale",r="rotation",i="identifier",s=e.config.win,o={};e.DOMEventFacade.prototype._touch=function(t,s,o){var u,a,f,l,c;if(t.touches){this.touches=[],c={};for(u=0,a=t.touches.length;u stopped) { + stopped = newStopped; + + if (stopped === 1) { + stopElement = evt.el; + } + } + + // support e.stopImmediatePropagation() + if (stopped === 2) { + return true; + } }); VC._refreshTimeout(node); @@ -199,7 +233,7 @@ VC = { vcData.notifiers[Y.stamp(notifier)] = notifier; vcData.interval = setInterval(function () { - VC._poll(node, vcData, options); + VC._poll(node, options); }, VC.POLL_INTERVAL); Y.log('_startPolling: #' + node.get('id'), 'info', 'event-valuechange'); @@ -473,4 +507,4 @@ Y.Event.define('valueChange', config); // deprecated, but supported for backcomp Y.ValueChange = VC; -}, '3.9.1', {"requires": ["event-focus", "event-synthetic"]}); +}, '3.12.0', {"requires": ["event-focus", "event-synthetic"]}); diff --git a/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js b/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js new file mode 100644 index 00000000000..2445fb480f1 --- /dev/null +++ b/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-valuechange",function(e,t){var n="_valuechange",r="value",i,s={POLL_INTERVAL:50,TIMEOUT:1e4,_poll:function(t,r){var i=t._node,o=r.e,u=i&&i.value,a=t._data&&t._data[n],f=0,l,c,h;if(!i||!a){s._stopPolling(t);return}c=a.prevVal,u!==c&&(a.prevVal=u,l={_event:o,currentTarget:o&&o.currentTarget||t,newVal:u,prevVal:c,target:o&&o.target||t},e.Object.some(a.notifiers,function(e){var t=e.handle.evt,n;f!==1?e.fire(l):t.el===h&&e.fire(l),n=t&&t._facade?t._facade.stopped:0,n>f&&(f=n,f===1&&(h=t.el));if(f===2)return!0}),s._refreshTimeout(t))},_refreshTimeout:function(e,t){if(!e._node)return;var r=e.getData(n);s._stopTimeout(e),r.timeout=setTimeout(function(){s._stopPolling(e,t)},s.TIMEOUT)},_startPolling:function(t,i,o){if(!t.test("input,textarea"))return;var u=t.getData(n);u||(u={prevVal:t.get(r)},t.setData(n,u)),u.notifiers||(u.notifiers={});if(u.interval){if(!o.force){u.notifiers[e.stamp(i)]=i;return}s._stopPolling(t,i)}u.notifiers[e.stamp(i)]=i,u.interval=setInterval(function(){s._poll(t,o)},s.POLL_INTERVAL),s._refreshTimeout(t,i)},_stopPolling:function(t,r){if(!t._node)return;var i=t.getData(n)||{};clearInterval(i.interval),delete i.interval,s._stopTimeout(t),r?i.notifiers&&delete i.notifiers[e.stamp(r)]:i.notifiers={}},_stopTimeout:function(e){var t=e.getData(n)||{};clearTimeout(t.timeout),delete t.timeout},_onBlur:function(e,t){s._stopPolling(e.currentTarget,t)},_onFocus:function(e,t){var i=e.currentTarget,o=i.getData(n);o||(o={},i.setData(n,o)),o.prevVal=i.get(r),s._startPolling(i,t,{e:e})},_onKeyDown:function(e,t){s._startPolling(e.currentTarget,t,{e:e})},_onKeyUp:function(e,t){(e.charCode===229||e.charCode===197)&&s._startPolling(e.currentTarget,t,{e:e,force:!0})},_onMouseDown:function(e,t){s._startPolling(e.currentTarget,t,{e:e})},_onSubscribe:function(t,i,o,u){var a,f,l;f={blur:s._onBlur,focus:s._onFocus,keydown:s._onKeyDown,keyup:s._onKeyUp,mousedown:s._onMouseDown},a=o._valuechange={};if(u)a.delegated=!0,a.getNodes=function(){return t.all("input,textarea").filter(u)},a.getNodes().each(function(e){e.getData(n)||e.setData(n,{prevVal:e.get(r)})}),o._handles=e.delegate(f,t,u,null,o);else{if(!t.test("input,textarea"))return;t.getData(n)||t.setData(n,{prevVal:t.get(r)}),o._handles=t.on(f,null,null,o)}},_onUnsubscribe:function(e,t,n){var r=n._valuechange;n._handles&&n._handles.detach(),r.delegated?r.getNodes().each(function(e){s._stopPolling(e,n)}):s._stopPolling(e,n)}};i={detach:s._onUnsubscribe,on:s._onSubscribe,delegate:s._onSubscribe,detachDelegate:s._onUnsubscribe,publishConfig:{emitFacade:!0}},e.Event.define("valuechange",i),e.Event.define("valueChange",i),e.ValueChange=s},"3.12.0",{requires:["event-focus","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js b/lib/yuilib/3.12.0/event-valuechange/event-valuechange.js similarity index 90% rename from lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js rename to lib/yuilib/3.12.0/event-valuechange/event-valuechange.js index f9041c6f3d5..672be640a14 100644 --- a/lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js +++ b/lib/yuilib/3.12.0/event-valuechange/event-valuechange.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-valuechange', function (Y, NAME) { /** @@ -84,7 +90,8 @@ VC = { event = options.e, newVal = domNode && domNode.value, vcData = node._data && node._data[DATA_KEY], // another perf cheat - facade, prevVal; + stopped = 0, + facade, prevVal, stopElement; if (!domNode || !vcData) { VC._stopPolling(node); @@ -104,8 +111,35 @@ VC = { target : (event && event.target) || node }; - Y.Object.each(vcData.notifiers, function (notifier) { - notifier.fire(facade); + Y.Object.some(vcData.notifiers, function (notifier) { + var evt = notifier.handle.evt, + newStopped; + + // support e.stopPropagation() + if (stopped !== 1) { + notifier.fire(facade); + } else if (evt.el === stopElement) { + notifier.fire(facade); + } + + newStopped = evt && evt._facade ? evt._facade.stopped : 0; + + // need to consider the condition in which there are two + // listeners on the same element: + // listener 1 calls e.stopPropagation() + // listener 2 calls e.stopImmediatePropagation() + if (newStopped > stopped) { + stopped = newStopped; + + if (stopped === 1) { + stopElement = evt.el; + } + } + + // support e.stopImmediatePropagation() + if (stopped === 2) { + return true; + } }); VC._refreshTimeout(node); @@ -190,7 +224,7 @@ VC = { vcData.notifiers[Y.stamp(notifier)] = notifier; vcData.interval = setInterval(function () { - VC._poll(node, vcData, options); + VC._poll(node, options); }, VC.POLL_INTERVAL); @@ -459,4 +493,4 @@ Y.Event.define('valueChange', config); // deprecated, but supported for backcomp Y.ValueChange = VC; -}, '3.9.1', {"requires": ["event-focus", "event-synthetic"]}); +}, '3.12.0', {"requires": ["event-focus", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js b/lib/yuilib/3.12.0/exec-command/exec-command-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js rename to lib/yuilib/3.12.0/exec-command/exec-command-debug.js index ca315029049..a1ec8199b6d 100644 --- a/lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('exec-command', function (Y, NAME) { @@ -717,4 +723,4 @@ YUI.add('exec-command', function (Y, NAME) { -}, '3.9.1', {"requires": ["frame"]}); +}, '3.12.0', {"requires": ["frame"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command-min.js b/lib/yuilib/3.12.0/exec-command/exec-command-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/exec-command/exec-command-min.js rename to lib/yuilib/3.12.0/exec-command/exec-command-min.js index 32e481c35d5..80d2c211270 100644 --- a/lib/yuilib/3.9.1/build/exec-command/exec-command-min.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("exec-command",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r=function(t,n,r){var i=this.getInstance(),s=i.config.doc,o=s.selection.createRange(),u=s.queryCommandValue(t),a,f,l,c,h,p,d;u&&(a=o.htmlText,f=new RegExp(r,"g"),l=a.match(f),l&&(a=a.replace(r+";","").replace(r,""),o.pasteHTML(''),c=s.getElementById("yui-ie-bs"),h=s.createElement("div"),p=s.createElement(n),h.innerHTML=a,c.parentNode!==i.config.doc.body&&(c=c.parentNode),d=h.childNodes,c.parentNode.replaceChild(p,c),e.each(d,function(e){p.appendChild(e)}),o.collapse(),o.moveToElementText&&o.moveToElementText(p),o.select())),this._command(t)};e.extend(n,e.Base,{_lastKey:null,_inst:null,command:function(e,t){var r=n.COMMANDS[e];return r?r.call(this,e,t):this._command(e,t)},_command:function(e,t){var n=this.getInstance();try{try{n.config.doc.execCommand("styleWithCSS",null,1)}catch(r){try{n.config.doc.execCommand("useCSS",null,0)}catch(i){}}n.config.doc.execCommand(e,null,t)}catch(s){}},getInstance:function(){return this._inst||(this._inst=this.get("host").getInstance()),this._inst},initializer:function(){e.mix(this.get("host"),{execCommand:function(e,t){return this.exec.command(e,t)},_execCommand:function(e,t){return this.exec._command(e,t)}}),this.get("host").on("dom:keypress",e.bind(function(e){this._lastKey=e.keyCode},this))},_wrapContent:function(e,t){var n=this.getInstance().host.editorPara&&!t?!0:!1;return n?e="

    "+e+"

    ":e+="
    ",e}},{NAME:"execCommand",NS:"exec",ATTRS:{host:{value:!1}},COMMANDS:{wrap:function(e,t){var n=this.getInstance();return(new n.EditorSelection).wrapContent(t)},inserthtml:function(t,n){var r=this.getInstance();if(r.EditorSelection.hasCursor()||e.UA.ie)return(new r.EditorSelection).insertContent(n);this._command("inserthtml",n)},insertandfocus:function(e,t){var n=this.getInstance(),r,i;return n.EditorSelection.hasCursor()?(t+=n.EditorSelection.CURSOR,r=this.command("inserthtml",t),i=new n.EditorSelection,i.focusCursor(!0,!0)):this.command("inserthtml",t),r},insertbr:function(){var t=this.getInstance(),n=new t.EditorSelection,r="|",i=null,s=e.UA.webkit?"span.Apple-style-span,var":"var",o=function(e){var n=t.Node.create("
    ");return e.insert(n,"before"),n};n._selection.pasteHTML?n._selection.pasteHTML(r):this._command("inserthtml",r),t.all(s).each(function(t){var n=!0,r;e.UA.webkit&&(n=!1,t.get("innerHTML")==="|"&&(n=!0)),n&&(i=o(t),(!i.previous()||!i.previous().test("br"))&&e.UA.gecko&&(r=i.cloneNode(),i.insert(r,"after"),i=r),t.remove())}),e.UA.webkit&&i&&(o(i),n.selectNode(i))},insertimage:function(e,t){return this.command("inserthtml",'')},addclass:function(e,t){var n=this.getInstance();return(new n.EditorSelection).getSelected().addClass(t)},removeclass:function(e,t){var n=this.getInstance();return(new n.EditorSelection).getSelected().removeClass(t)},forecolor:function(t,n){var r=this.getInstance(),i=new r.EditorSelection,s;e.UA.ie||this._command("useCSS",!1);if(r.EditorSelection.hasCursor())return i.isCollapsed?(i.anchorNode&&i.anchorNode.get("innerHTML")===" "?(i.anchorNode.setStyle("color",n),s=i.anchorNode):(s=this.command("inserthtml",''+r.EditorSelection.CURSOR+""),i.focusCursor(!0,!0)),s):this._command(t,n);this._command(t,n)},backcolor:function(t,n){var r=this.getInstance(),i=new r.EditorSelection,s;if(e.UA.gecko||e.UA.opera)t="hilitecolor";e.UA.ie||this._command("useCSS",!1);if(r.EditorSelection.hasCursor())return i.isCollapsed?(i.anchorNode&&i.anchorNode.get("innerHTML")===" "?(i.anchorNode.setStyle("backgroundColor",n),s=i.anchorNode):(s=this.command("inserthtml",''+r.EditorSelection.CURSOR+""),i.focusCursor(!0,!0)),s):this._command(t,n);this._command(t,n)},hilitecolor:function(){return n.COMMANDS.backcolor.apply(this,arguments)},fontname2:function(e,t){this._command("fontname",t);var n=this.getInstance(),r=new n.EditorSelection;r.isCollapsed&&this._lastKey!==32&&r.anchorNode.test("font")&&r.anchorNode.set("face",t)},fontsize2:function(t,n){this._command("fontsize",n);var r=this.getInstance(),i=new r.EditorSelection,s;i.isCollapsed&&i.anchorNode&&this._lastKey!==32&&(e.UA.webkit&&i.anchorNode.getStyle("lineHeight")&&i.anchorNode.setStyle("lineHeight",""),i.anchorNode.test("font")?i.anchorNode.set("size",n):e.UA.gecko&&(s=i.anchorNode.ancestor(r.EditorSelection.DEFAULT_BLOCK_TAG),s&&s.setStyle("fontSize","")))},insertunorderedlist:function(){this.command("list","ul")},insertorderedlist:function(){this.command("list","ol")},list:function(t,n){var r=this.getInstance(),i,s=this,o="dir",u="yui3-touched",a,f,l,c,h,p,d,v,m,g,y=r.host.editorPara?!0:!1,b,w,E,S,x=new r.EditorSelection;t="insert"+(n==="ul"?"un":"")+"orderedlist";if(e.UA.ie&&!x.isCollapsed){f=x._selection,i=f.htmlText,l=r.Node.create(i)||r.one("body");if(l.test("li")||l.one("li")){this._command(t,null);return}l.test(n)?(c=f.item?f.item(0):f.parentElement(),h=r.one(c),g=h.all("li"),p="
    ",g.each(function(e){p=s._wrapContent(e.get("innerHTML"))}),p+="
    ",d=r.Node.create(p),h.get("parentNode").test("div")&&(h=h.get("parentNode")),h&&h.hasAttribute(o)&&(y?d.all("p").setAttribute(o,h.getAttribute(o)):d.setAttribute(o,h.getAttribute(o))),y?h.replace(d.get("innerHTML")):h.replace(d),f.moveToElementText&&f.moveToElementText(d._node),f.select()):(v=e.one(f.parentElement()),v.test(r.EditorSelection.BLOCKS)||(v=v.ancestor(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i.indexOf("
    ")>-1?i=i.split(/
    /i):(b=r.Node.create(i),ps=b?b.all("p"):null,ps&&ps.size()?(i=[],ps.each(function(e){i.push(e.get("innerHTML"))})):i=[i]),m="<"+n+' id="ie-list">',e.each(i,function(e){var t=r.Node.create(e);t&&t.test("p")&&(t.hasAttribute(o)&&(a=t.getAttribute(o)),e=t.get("innerHTML")),m+="
  • "+e+"
  • "}),m+="",f.pasteHTML(m),c=r.config.doc.getElementById("ie-list"),c.id="",a&&c.setAttribute(o,a),f.moveToElementText&&f.moveToElementText(c) -,f.select())}else e.UA.ie?(v=r.one(x._selection.parentElement()),v.test("p")?(v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i=e.EditorSelection.getText(v),i===""?(w="",a&&(w=' dir="'+a+'"'),m=r.Node.create(e.Lang.sub("<{tag}{dir}>
  • ",{tag:n,dir:w})),v.replace(m),x.selectNode(m.one("li"))):this._command(t,null)):this._command(t,null)):(r.all(n).addClass(u),x.anchorNode.test(r.EditorSelection.BLOCKS)?v=x.anchorNode:v=x.anchorNode.ancestor(r.EditorSelection.BLOCKS),v||(v=x.anchorNode.one(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),v&&v.test(n)?(E=v.ancestor("p"),i=r.Node.create("
    "),c=v.all("li"),c.each(function(e){i.append(s._wrapContent(e.get("innerHTML"),E))}),a&&(y?i.all("p").setAttribute(o,a):i.setAttribute(o,a)),y&&(i=r.Node.create(i.get("innerHTML"))),S=i.get("firstChild"),v.replace(i),x.selectNode(S)):this._command(t,null),m=r.all(n),a&&m.size()&&m.each(function(e){e.hasClass(u)||e.setAttribute(o,a)}),m.removeClass(u))},justify:function(t,n){if(e.UA.webkit){var r=this.getInstance(),i=new r.EditorSelection,s=i.anchorNode,o,u=s.getStyle("backgroundColor");this._command(n),i=new r.EditorSelection,i.anchorNode.test("div")&&(o=""+i.anchorNode.get("innerHTML")+"",i.anchorNode.set("innerHTML",o),i.anchorNode.one("span").setStyle("backgroundColor",u),i.selectNode(i.anchorNode.one("span")))}else this._command(n)},justifycenter:function(){this.command("justify","justifycenter")},justifyleft:function(){this.command("justify","justifyleft")},justifyright:function(){this.command("justify","justifyright")},justifyfull:function(){this.command("justify","justifyfull")}}}),e.UA.ie&&(n.COMMANDS.bold=function(){r.call(this,"bold","b","FONT-WEIGHT: bold")},n.COMMANDS.italic=function(){r.call(this,"italic","i","FONT-STYLE: italic")},n.COMMANDS.underline=function(){r.call(this,"underline","u","TEXT-DECORATION: underline")}),e.namespace("Plugin"),e.Plugin.ExecCommand=n},"3.9.1",{requires:["frame"]}); +,f.select())}else e.UA.ie?(v=r.one(x._selection.parentElement()),v.test("p")?(v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i=e.EditorSelection.getText(v),i===""?(w="",a&&(w=' dir="'+a+'"'),m=r.Node.create(e.Lang.sub("<{tag}{dir}>
  • ",{tag:n,dir:w})),v.replace(m),x.selectNode(m.one("li"))):this._command(t,null)):this._command(t,null)):(r.all(n).addClass(u),x.anchorNode.test(r.EditorSelection.BLOCKS)?v=x.anchorNode:v=x.anchorNode.ancestor(r.EditorSelection.BLOCKS),v||(v=x.anchorNode.one(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),v&&v.test(n)?(E=v.ancestor("p"),i=r.Node.create("
    "),c=v.all("li"),c.each(function(e){i.append(s._wrapContent(e.get("innerHTML"),E))}),a&&(y?i.all("p").setAttribute(o,a):i.setAttribute(o,a)),y&&(i=r.Node.create(i.get("innerHTML"))),S=i.get("firstChild"),v.replace(i),x.selectNode(S)):this._command(t,null),m=r.all(n),a&&m.size()&&m.each(function(e){e.hasClass(u)||e.setAttribute(o,a)}),m.removeClass(u))},justify:function(t,n){if(e.UA.webkit){var r=this.getInstance(),i=new r.EditorSelection,s=i.anchorNode,o,u=s.getStyle("backgroundColor");this._command(n),i=new r.EditorSelection,i.anchorNode.test("div")&&(o=""+i.anchorNode.get("innerHTML")+"",i.anchorNode.set("innerHTML",o),i.anchorNode.one("span").setStyle("backgroundColor",u),i.selectNode(i.anchorNode.one("span")))}else this._command(n)},justifycenter:function(){this.command("justify","justifycenter")},justifyleft:function(){this.command("justify","justifyleft")},justifyright:function(){this.command("justify","justifyright")},justifyfull:function(){this.command("justify","justifyfull")}}}),e.UA.ie&&(n.COMMANDS.bold=function(){r.call(this,"bold","b","FONT-WEIGHT: bold")},n.COMMANDS.italic=function(){r.call(this,"italic","i","FONT-STYLE: italic")},n.COMMANDS.underline=function(){r.call(this,"underline","u","TEXT-DECORATION: underline")}),e.namespace("Plugin"),e.Plugin.ExecCommand=n},"3.12.0",{requires:["frame"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command.js b/lib/yuilib/3.12.0/exec-command/exec-command.js similarity index 99% rename from lib/yuilib/3.9.1/build/exec-command/exec-command.js rename to lib/yuilib/3.12.0/exec-command/exec-command.js index 4ed685e7956..9a41c455f58 100644 --- a/lib/yuilib/3.9.1/build/exec-command/exec-command.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('exec-command', function (Y, NAME) { @@ -713,4 +719,4 @@ YUI.add('exec-command', function (Y, NAME) { -}, '3.9.1', {"requires": ["frame"]}); +}, '3.12.0', {"requires": ["frame"]}); diff --git a/lib/yuilib/3.9.1/build/features/features-debug.js b/lib/yuilib/3.12.0/features/features-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/features/features-debug.js rename to lib/yuilib/3.12.0/features/features-debug.js index b662c367961..2359e3dc6ef 100644 --- a/lib/yuilib/3.9.1/build/features/features-debug.js +++ b/lib/yuilib/3.12.0/features/features-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -114,7 +120,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -407,4 +413,4 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/features/features-min.js b/lib/yuilib/3.12.0/features/features-min.js similarity index 95% rename from lib/yuilib/3.9.1/build/features/features-min.js rename to lib/yuilib/3.12.0/features/features-min.js index 7d39767bd3f..f17dfa9a798 100644 --- a/lib/yuilib/3.9.1/build/features/features-min.js +++ b/lib/yuilib/3.12.0/features/features-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/features/features.js b/lib/yuilib/3.12.0/features/features.js similarity index 97% rename from lib/yuilib/3.9.1/build/features/features.js rename to lib/yuilib/3.12.0/features/features.js index c78d13e8460..5eb70481b0e 100644 --- a/lib/yuilib/3.9.1/build/features/features.js +++ b/lib/yuilib/3.12.0/features/features.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -113,7 +119,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -406,4 +412,4 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js b/lib/yuilib/3.12.0/file-flash/file-flash-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js rename to lib/yuilib/3.12.0/file-flash/file-flash-debug.js index ec1f14dd76e..4ab5704cb4b 100644 --- a/lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-flash', function (Y, NAME) { /** @@ -338,4 +344,4 @@ YUI.add('file-flash', function (Y, NAME) { Y.FileFlash = FileFlash; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash-min.js b/lib/yuilib/3.12.0/file-flash/file-flash-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/file-flash/file-flash-min.js rename to lib/yuilib/3.12.0/file-flash/file-flash-min.js index ec388b89daa..9cee70ff338 100644 --- a/lib/yuilib/3.9.1/build/file-flash/file-flash-min.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("file-flash",function(e,t){var n=function(e){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_swfEventHandler:function(e){if(e.id===this.get("id"))switch(e.type){case"uploadstart":this.fire("uploadstart",{uploader:this.get("uploader")});break;case"uploadprogress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.bytesLoaded,bytesTotal:e.bytesTotal,percentLoaded:Math.min(100,Math.round(1e4*e.bytesLoaded/e.bytesTotal)/100)}),this._set("bytesUploaded",e.bytesLoaded);break;case"uploadcomplete":this.fire("uploadfinished",{originEvent:e});break;case"uploadcompletedata":this.fire("uploadcomplete",{originEvent:e,data:e.data});break;case"uploadcancel":this.fire("uploadcancel",{originEvent:e});break;case"uploaderror":this.fire("uploaderror",{originEvent:e,status:e.status,statusText:e.message,source:e.source})}},startUpload:function(e,t,n){if(this.get("uploader")){var r=this.get("uploader"),i=n||"Filedata",s=this.get("id"),o=t||null;this._set("bytesUploaded",0),r.on("uploadstart",this._swfEventHandler,this),r.on("uploadprogress",this._swfEventHandler,this),r.on("uploadcomplete",this._swfEventHandler,this),r.on("uploadcompletedata",this._swfEventHandler,this),r.on("uploaderror",this._swfEventHandler,this),r.callSWF("upload",[s,e,o,i])}},cancelUpload:function(){this.get("uploader")&&(this.get("uploader").callSWF("cancel",[this.get("id")]),this.fire("uploadcancel"))}},{NAME:"file",TYPE:"flash",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},uploader:{writeOnce:"initOnly",value:null}}}),e.FileFlash=n},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file-flash",function(e,t){var n=function(e){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_swfEventHandler:function(e){if(e.id===this.get("id"))switch(e.type){case"uploadstart":this.fire("uploadstart",{uploader:this.get("uploader")});break;case"uploadprogress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.bytesLoaded,bytesTotal:e.bytesTotal,percentLoaded:Math.min(100,Math.round(1e4*e.bytesLoaded/e.bytesTotal)/100)}),this._set("bytesUploaded",e.bytesLoaded);break;case"uploadcomplete":this.fire("uploadfinished",{originEvent:e});break;case"uploadcompletedata":this.fire("uploadcomplete",{originEvent:e,data:e.data});break;case"uploadcancel":this.fire("uploadcancel",{originEvent:e});break;case"uploaderror":this.fire("uploaderror",{originEvent:e,status:e.status,statusText:e.message,source:e.source})}},startUpload:function(e,t,n){if(this.get("uploader")){var r=this.get("uploader"),i=n||"Filedata",s=this.get("id"),o=t||null;this._set("bytesUploaded",0),r.on("uploadstart",this._swfEventHandler,this),r.on("uploadprogress",this._swfEventHandler,this),r.on("uploadcomplete",this._swfEventHandler,this),r.on("uploadcompletedata",this._swfEventHandler,this),r.on("uploaderror",this._swfEventHandler,this),r.callSWF("upload",[s,e,o,i])}},cancelUpload:function(){this.get("uploader")&&(this.get("uploader").callSWF("cancel",[this.get("id")]),this.fire("uploadcancel"))}},{NAME:"file",TYPE:"flash",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},uploader:{writeOnce:"initOnly",value:null}}}),e.FileFlash=n},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash.js b/lib/yuilib/3.12.0/file-flash/file-flash.js similarity index 98% rename from lib/yuilib/3.9.1/build/file-flash/file-flash.js rename to lib/yuilib/3.12.0/file-flash/file-flash.js index ec1f14dd76e..4ab5704cb4b 100644 --- a/lib/yuilib/3.9.1/build/file-flash/file-flash.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-flash', function (Y, NAME) { /** @@ -338,4 +344,4 @@ YUI.add('file-flash', function (Y, NAME) { Y.FileFlash = FileFlash; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js b/lib/yuilib/3.12.0/file-html5/file-html5-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js rename to lib/yuilib/3.12.0/file-html5/file-html5-debug.js index 73599c48c6a..fbdeeabf4ba 100644 --- a/lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-html5', function (Y, NAME) { /** @@ -493,4 +499,4 @@ YUI.add('file-html5', function (Y, NAME) { Y.FileHTML5 = FileHTML5; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5-min.js b/lib/yuilib/3.12.0/file-html5/file-html5-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/file-html5/file-html5-min.js rename to lib/yuilib/3.12.0/file-html5/file-html5-min.js index f5eaa0db527..14e50e00606 100644 --- a/lib/yuilib/3.9.1/build/file-html5/file-html5-min.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("file-html5",function(e,t){var n=e.Lang,r=e.bind,i=e.config.win,s=function(e){var t=null;s.isValidFile(e)?t=e:s.isValidFile(e.file)?t=e.file:t=!1,s.superclass.constructor.apply(this,arguments),t&&s.canUpload()&&(this.get("file")||this._set("file",t),this.get("name")||this._set("name",t.name||t.fileName),this.get("size")!=(t.size||t.fileSize)&&this._set("size",t.size||t.fileSize),this.get("type")||this._set("type",t.type),t.hasOwnProperty("lastModifiedDate")&&!this.get("dateModified")&&this._set("dateModified",t.lastModifiedDate))};e.extend(s,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_uploadEventHandler:function(e){var t=this.get("xhr");switch(e.type){case"progress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.loaded,bytesTotal:this.get("size"),percentLoaded:Math.min(100,Math.round(1e4*e.loaded/this.get("size"))/100)}),this._set("bytesUploaded",e.loaded);break;case"load":if(t.status>=200&&t.status<=299){this.fire("uploadcomplete",{originEvent:e,data:e.target.responseText});var n=t.upload,r=this.get("boundEventHandler");n.removeEventListener("progress",r),n.removeEventListener("error",r),n.removeEventListener("abort",r),t.removeEventListener("load",r),t.removeEventListener("error",r),t.removeEventListener("readystatechange",r),this._set("xhr",null)}else this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"http"});break;case"error":this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"io"});break;case"abort":this.fire("uploadcancel",{originEvent:e});break;case"readystatechange":this.fire("readystatechange",{readyState:e.target.readyState,originEvent:e})}},startUpload:function(t,n,i){this._set("bytesUploaded",0),this._set("xhr",new XMLHttpRequest),this._set("boundEventHandler",r(this._uploadEventHandler,this));var s=new FormData,o=i||"Filedata",u=this.get("xhr"),a=this.get("xhr").upload,f=this.get("boundEventHandler");e.each(n,function(e,t){s.append(t,e)}),s.append(o,this.get("file")),u.addEventListener("loadstart",f,!1),a.addEventListener("progress",f,!1),u.addEventListener("load",f,!1),u.addEventListener("error",f,!1),a.addEventListener("error",f,!1),a.addEventListener("abort",f,!1),u.addEventListener("abort",f,!1),u.addEventListener("loadend",f,!1),u.addEventListener("readystatechange",f,!1),u.open("POST",t,!0),u.withCredentials=this.get("xhrWithCredentials"),e.each(this.get("xhrHeaders"),function(e,t){u.setRequestHeader(t,e)}),u.send(s),this.fire("uploadstart",{xhr:u})},cancelUpload:function(){this.get("xhr").abort()}},{NAME:"file",TYPE:"html5",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},file:{writeOnce:"initOnly",value:null},xhr:{readOnly:!0,value:null},xhrHeaders:{value:{}},xhrWithCredentials:{value:!0},boundEventHandler:{readOnly:!0,value:null}},isValidFile:function(e){return i&&i.File&&e instanceof File},canUpload:function(){return i&&i.FormData&&i.XMLHttpRequest}}),e.FileHTML5=s},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file-html5",function(e,t){var n=e.Lang,r=e.bind,i=e.config.win,s=function(e){var t=null;s.isValidFile(e)?t=e:s.isValidFile(e.file)?t=e.file:t=!1,s.superclass.constructor.apply(this,arguments),t&&s.canUpload()&&(this.get("file")||this._set("file",t),this.get("name")||this._set("name",t.name||t.fileName),this.get("size")!=(t.size||t.fileSize)&&this._set("size",t.size||t.fileSize),this.get("type")||this._set("type",t.type),t.hasOwnProperty("lastModifiedDate")&&!this.get("dateModified")&&this._set("dateModified",t.lastModifiedDate))};e.extend(s,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_uploadEventHandler:function(e){var t=this.get("xhr");switch(e.type){case"progress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.loaded,bytesTotal:this.get("size"),percentLoaded:Math.min(100,Math.round(1e4*e.loaded/this.get("size"))/100)}),this._set("bytesUploaded",e.loaded);break;case"load":if(t.status>=200&&t.status<=299){this.fire("uploadcomplete",{originEvent:e,data:e.target.responseText});var n=t.upload,r=this.get("boundEventHandler");n.removeEventListener("progress",r),n.removeEventListener("error",r),n.removeEventListener("abort",r),t.removeEventListener("load",r),t.removeEventListener("error",r),t.removeEventListener("readystatechange",r),this._set("xhr",null)}else this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"http"});break;case"error":this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"io"});break;case"abort":this.fire("uploadcancel",{originEvent:e});break;case"readystatechange":this.fire("readystatechange",{readyState:e.target.readyState,originEvent:e})}},startUpload:function(t,n,i){this._set("bytesUploaded",0),this._set("xhr",new XMLHttpRequest),this._set("boundEventHandler",r(this._uploadEventHandler,this));var s=new FormData,o=i||"Filedata",u=this.get("xhr"),a=this.get("xhr").upload,f=this.get("boundEventHandler");e.each(n,function(e,t){s.append(t,e)}),s.append(o,this.get("file")),u.addEventListener("loadstart",f,!1),a.addEventListener("progress",f,!1),u.addEventListener("load",f,!1),u.addEventListener("error",f,!1),a.addEventListener("error",f,!1),a.addEventListener("abort",f,!1),u.addEventListener("abort",f,!1),u.addEventListener("loadend",f,!1),u.addEventListener("readystatechange",f,!1),u.open("POST",t,!0),u.withCredentials=this.get("xhrWithCredentials"),e.each(this.get("xhrHeaders"),function(e,t){u.setRequestHeader(t,e)}),u.send(s),this.fire("uploadstart",{xhr:u})},cancelUpload:function(){this.get("xhr").abort()}},{NAME:"file",TYPE:"html5",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},file:{writeOnce:"initOnly",value:null},xhr:{readOnly:!0,value:null},xhrHeaders:{value:{}},xhrWithCredentials:{value:!0},boundEventHandler:{readOnly:!0,value:null}},isValidFile:function(e){return i&&i.File&&e instanceof File},canUpload:function(){return i&&i.FormData&&i.XMLHttpRequest}}),e.FileHTML5=s},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5.js b/lib/yuilib/3.12.0/file-html5/file-html5.js similarity index 98% rename from lib/yuilib/3.9.1/build/file-html5/file-html5.js rename to lib/yuilib/3.12.0/file-html5/file-html5.js index 73599c48c6a..fbdeeabf4ba 100644 --- a/lib/yuilib/3.9.1/build/file-html5/file-html5.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-html5', function (Y, NAME) { /** @@ -493,4 +499,4 @@ YUI.add('file-html5', function (Y, NAME) { Y.FileHTML5 = FileHTML5; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file/file-debug.js b/lib/yuilib/3.12.0/file/file-debug.js similarity index 79% rename from lib/yuilib/3.9.1/build/file/file-debug.js rename to lib/yuilib/3.12.0/file/file-debug.js index c7ffe8d3e4b..69701a2475f 100644 --- a/lib/yuilib/3.9.1/build/file/file-debug.js +++ b/lib/yuilib/3.12.0/file/file-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file', function (Y, NAME) { /** @@ -28,4 +34,4 @@ YUI.add('file', function (Y, NAME) { Y.File = Y.FileFlash; } -}, '3.9.1', {"requires": ["file-flash", "file-html5"]}); +}, '3.12.0', {"requires": ["file-flash", "file-html5"]}); diff --git a/lib/yuilib/3.12.0/file/file-min.js b/lib/yuilib/3.12.0/file/file-min.js new file mode 100644 index 00000000000..f7e80e859c2 --- /dev/null +++ b/lib/yuilib/3.12.0/file/file-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file",function(e,t){var n=e.config.win;n&&n.File&&n.FormData&&n.XMLHttpRequest?e.File=e.FileHTML5:e.File=e.FileFlash},"3.12.0",{requires:["file-flash","file-html5"]}); diff --git a/lib/yuilib/3.9.1/build/file/file.js b/lib/yuilib/3.12.0/file/file.js similarity index 79% rename from lib/yuilib/3.9.1/build/file/file.js rename to lib/yuilib/3.12.0/file/file.js index c7ffe8d3e4b..69701a2475f 100644 --- a/lib/yuilib/3.9.1/build/file/file.js +++ b/lib/yuilib/3.12.0/file/file.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file', function (Y, NAME) { /** @@ -28,4 +34,4 @@ YUI.add('file', function (Y, NAME) { Y.File = Y.FileFlash; } -}, '3.9.1', {"requires": ["file-flash", "file-html5"]}); +}, '3.12.0', {"requires": ["file-flash", "file-html5"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame-debug.js b/lib/yuilib/3.12.0/frame/frame-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/frame/frame-debug.js rename to lib/yuilib/3.12.0/frame/frame-debug.js index 492c1c26fb0..aa6cf91d1ff 100644 --- a/lib/yuilib/3.9.1/build/frame/frame-debug.js +++ b/lib/yuilib/3.12.0/frame/frame-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('frame', function (Y, NAME) { /*jshint maxlen: 500 */ @@ -1043,4 +1049,4 @@ YUI.add('frame', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); +}, '3.12.0', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame-min.js b/lib/yuilib/3.12.0/frame/frame-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/frame/frame-min.js rename to lib/yuilib/3.12.0/frame/frame-min.js index b759851f7ac..ee1c442189a 100644 --- a/lib/yuilib/3.9.1/build/frame/frame-min.js +++ b/lib/yuilib/3.12.0/frame/frame-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("frame",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{_ready:null,_rendered:null,_iframe:null,_instance:null,_create:function(t){var r,i="",s,o=this.get("src")===n.ATTRS.src.value,u=this.get("extracss")?'":"";this._iframe=e.one(e.config.doc.createElement("iframe")),this._iframe.setAttrs(n.IFRAME_ATTRS),this._iframe.setStyle("visibility","hidden"),this._iframe.set("src",this.get("src")),this.get("container").append(this._iframe),this._iframe.set("height","99%"),o&&(i=e.Lang.sub(n.PAGE_HTML,{DIR:this.get("dir"),LANG:this.get("lang"),TITLE:this.get("title"),META:n.META,LINKED_CSS:this.get("linkedcss"),CONTENT:this.get("content"),BASE_HREF:this.get("basehref"),DEFAULT_CSS:n.DEFAULT_CSS,EXTRA_CSS:u}),e.config.doc.compatMode!=="BackCompat"&&(i=n.getDocType()+"\n"+i)),r=this._resolveWinDoc(),i&&(r.doc.open(),r.doc.write(i),r.doc.close()),r.doc.documentElement?t(r):s=e.later(1,this,function(){r.doc&&r.doc.documentElement&&(t(r),s.cancel())},null,!0)},_resolveWinDoc:function(t){var n=t?t:{};return n.win=e.Node.getDOMNode(this._iframe.get("contentWindow")),n.doc=e.Node.getDOMNode(this._iframe.get("contentWindow.document")),n.doc||(n.doc=e.config.doc),n.win||(n.win=e.config.win),n},_onDomEvent:function(t){var n,r;if(!e.Node.getDOMNode(this._iframe))return;t.frameX=t.frameY=0,(t.pageX>0||t.pageY>0)&&t.type.substring(0,3)!=="key"&&(r=this._instance.one("win"),n=this._iframe.getXY(),t.frameX=n[0]+t.pageX-r.get("scrollLeft"),t.frameY=n[1]+t.pageY-r.get("scrollTop")),t.frameTarget=t.target,t.frameCurrentTarget=t.currentTarget,t.frameEvent=t,this.fire("dom:"+t.type,t)},initializer:function(){this.publish("ready",{emitFacade:!0,defaultFn:this._defReadyFn})},destructor:function(){var e=this.getInstance();e.one("doc").detachAll(),e=null,this._iframe.remove()},_DOMPaste:function(e){var t=this.getInstance(),n="",r=t.config.win;e._event.originalTarget&&(n=e._event.originalTarget),e._event.clipboardData&&(n=e._event.clipboardData.getData("Text")),r.clipboardData&&(n=r.clipboardData.getData("Text"),n===""&&(r.clipboardData.setData("Text",n)||(n=null))),e.frameTarget=e.target,e.frameCurrentTarget=e.currentTarget,e.frameEvent=e,n?e.clipboardData={data:n,getData:function(){return n}}:e.clipboardData=null,this.fire("dom:paste",e)},_defReadyFn:function(){var t=this.getInstance();e.each(n.DOM_EVENTS,function(r,i){var s=e.bind(this._onDomEvent,this),o=e.UA.ie&&n.THROTTLE_TIME>0?e.throttle(s,n.THROTTLE_TIME):s;t.Node.DOM_EVENTS[i]||(t.Node.DOM_EVENTS[i]=1),r===1&&i!=="focus"&&i!=="blur"&&i!=="paste"&&(i.substring(0,3)==="key"?t.on(i,o,t.config.doc):t.on(i,s,t.config.doc))},this),t.Node.DOM_EVENTS.paste=1,t.on("paste",e.bind(this._DOMPaste,this),t.one("body")),t.on("focus",e.bind(this._onDomEvent,this),t.config.win),t.on("blur",e.bind(this._onDomEvent,this),t.config.win),t.__use=t.use,t.use=e.bind(this.use,this),this._iframe.setStyles({visibility:"inherit"}),t.one("body").setStyle("display","block")},_fixIECursors:function(){var e=this.getInstance(),t=e.all("table"),n=e.all("br"),r;t.size()&&n.size()&&(r=t.item(0).get("sourceIndex"),n.each(function(t){var n=t.get("parentNode"),i=n.get("children"),s=n.all(">br");n.test("div")&&(i.size()>2?t.replace(e.Node.create("")):t.get("sourceIndex")>r?s.size()&&t.replace(e.Node.create("")):s.size()>1&&t.replace(e.Node.create("")))}))},_onContentReady:function(t){if(!this._ready){this._ready=!0;var n=this.getInstance(),r=e.clone(this.get("use"));this.fire("contentready"),t&&(n.config.doc=e.Node.getDOMNode(t.target)),r.push(e.bind(function(){n.EditorSelection&&(n.EditorSelection.DEFAULT_BLOCK_TAG=this.get("defaultblock")),this.get("designMode")&&(e.UA.ie?(n.config.doc.body.contentEditable="true",this._ieSetBodyHeight(),n.on("keyup",e.bind(this._ieSetBodyHeight,this),n.config.doc)):n.config.doc.designMode="on"),this.fire("ready")},this)),n.use.apply(n,r),n.one("doc").get("documentElement").addClass("yui-js-enabled")}},_ieHeightCounter:null,_ieSetBodyHeight:function(t){this._ieHeightCounter||(this._ieHeightCounter=0),this._ieHeightCounter++;var n=!1,r,i,s;t||(n=!0);if(t){switch(t.keyCode){case 8:case 13:n=!0}if(t.ctrlKey||t.shiftKey)n=!0}if(n)try{r=this.getInstance(),i=this._iframe.get("offsetHeight"),s=r.config.doc.body.scrollHeight,i>s?(i=i-15+"px",r.config.doc.body.style.height=i):r.config.doc.body.style.height="auto"}catch(t){this._ieHeightCounter<100&&e.later(200,this,this._ieSetBodyHeight)}},_resolveBaseHref:function(t){if(!t||t==="")t=e.config.doc.location.href,t.indexOf("?")!==-1&&(t=t.substring(0,t.indexOf("?"))),t=t.substring(0,t.lastIndexOf("/"))+"/";return t},_getHTML:function(e){if(this._ready){var t=this.getInstance();e=t.one("body").get("innerHTML")}return e},_setHTML:function(t){if(this._ready){var n=this.getInstance();n.one("body").set("innerHTML",t)}else this.on("contentready",e.bind(function(e){var t=this.getInstance();t.one("body").set("innerHTML",e)},this,t));return t},_getLinkedCSS:function(t){e.Lang.isArray(t)||(t=[t]);var n="";return this._ready?n=t:e.each(t,function(e){e!==""&&(n+='')}),n},_setLinkedCSS:function(e){if(this._ready){var t=this.getInstance();t.Get.css(e)}return e},_setExtraCSS:function(e){if(this._ready){var t=this.getInstance(),n=t.one("#extra_css");n.remove(),t.one("head").append('")}return e},_instanceLoaded:function(t){this._instance=t,this._onContentReady();var n=this._instance.config.doc;if(this.get("designMode")&&!e.UA.ie)try{n.execCommand("styleWithCSS",!1,!1),n.execCommand("insertbronreturn",!1,!1)}catch(r){}},use:function(){var t=this.getInstance(),n=e.Array(arguments),r=!1;e.Lang.isFunction(n[n.length-1])&&(r=n.pop()),r&&n.push(function(){r.apply(t,arguments)}),t.__use.apply(t,n)},delegate:function(e,t,n,r){var i=this.getInstance();return i?(r||(r=n,n="body"),i.delegate(e,t,n,r)):!1},getInstance:function(){return this._instance -},render:function(t){return this._rendered?this:(this._rendered=!0,t&&this.set("container",t),this._create(e.bind(function(t){var n,r,i=e.bind(function(e){this._instanceLoaded(e)},this),s=e.clone(this.get("use")),o={debug:!1,win:t.win,doc:t.doc},u=e.bind(function(){o=this._resolveWinDoc(o),n=YUI(o),n.host=this.get("host");try{n.use("node-base",i),r&&clearInterval(r)}catch(e){r=setInterval(function(){u()},350)}},this);s.push(u),e.use.apply(e,s)},this)),this)},_handleFocus:function(){var e=this.getInstance(),t=new e.EditorSelection,n,r,i,s;t.anchorNode&&(n=t.anchorNode,n.test("p")&&n.get("innerHTML")===""&&(n=n.get("parentNode")),r=n.get("childNodes"),r.size()&&(r.item(0).test("br")?t.selectNode(n,!0,!1):r.item(0).test("p")?(n=r.item(0).one("br.yui-cursor"),n&&(n=n.get("parentNode")),n||(n=r.item(0).get("firstChild")),n||(n=r.item(0)),n&&t.selectNode(n,!0,!1)):(i=e.one("br.yui-cursor"),i&&(s=i.get("parentNode"),s&&t.selectNode(s,!0,!1)))))},focus:function(t){if(e.UA.ie&&e.UA.ie<9){try{e.one("win").focus(),this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus()}catch(n){}t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()}else try{e.one("win").focus(),e.later(100,this,function(){this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus(),t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()})}catch(r){}return this},show:function(){this._iframe.setStyles({position:"static",left:""});if(e.UA.gecko){try{this.getInstance()&&(this.getInstance().config.doc.designMode="on")}catch(t){}this.focus()}return this},hide:function(){return this._iframe.setStyles({position:"absolute",left:"-999999px"}),this}},{THROTTLE_TIME:100,DOM_EVENTS:{dblclick:1,click:1,paste:1,mouseup:1,mousedown:1,keyup:1,keydown:1,keypress:1,activate:1,deactivate:1,beforedeactivate:1,focusin:1,focusout:1},DEFAULT_CSS:"body { background-color: #fff; font: 13px/1.22 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small; } a, a:visited, a:hover { color: blue !important; text-decoration: underline !important; cursor: text !important; } img { cursor: pointer !important; border: none; }",IFRAME_ATTRS:{border:"0",frameBorder:"0",marginWidth:"0",marginHeight:"0",leftMargin:"0",topMargin:"0",allowTransparency:"true",width:"100%",height:"99%"},PAGE_HTML:'{TITLE}{META}{LINKED_CSS}{EXTRA_CSS}{CONTENT}',getDocType:function(){var t=e.config.doc.doctype,r=n.DOC_TYPE;return t?r="":e.config.doc.all&&(t=e.config.doc.all[0],t.nodeType&&t.nodeType===8&&t.nodeValue&&t.nodeValue.toLowerCase().indexOf("doctype")!==-1&&(r="")),r},DOC_TYPE:'',META:'',NAME:"frame",ATTRS:{title:{value:"Blank Page"},dir:{value:"ltr"},lang:{value:"en-US"},src:{value:"javascript"+(e.UA.ie?":false":":")+";"},designMode:{writeOnce:!0,value:!1},content:{value:"
    ",setter:"_setHTML",getter:"_getHTML"},basehref:{value:!1,getter:"_resolveBaseHref"},use:{writeOnce:!0,value:["node","node-style","selector-css3"]},container:{value:"body",setter:function(t){return e.one(t)}},node:{readOnly:!0,value:null,getter:function(){return this._iframe}},id:{writeOnce:!0,getter:function(t){return t||(t="iframe-"+e.guid()),t}},linkedcss:{value:"",getter:"_getLinkedCSS",setter:"_setLinkedCSS"},extracss:{value:"",setter:"_setExtraCSS"},host:{value:!1},defaultblock:{value:"p"}}}),e.Frame=n},"3.9.1",{requires:["base","node","selector-css3","yui-throttle"]}); +},render:function(t){return this._rendered?this:(this._rendered=!0,t&&this.set("container",t),this._create(e.bind(function(t){var n,r,i=e.bind(function(e){this._instanceLoaded(e)},this),s=e.clone(this.get("use")),o={debug:!1,win:t.win,doc:t.doc},u=e.bind(function(){o=this._resolveWinDoc(o),n=YUI(o),n.host=this.get("host");try{n.use("node-base",i),r&&clearInterval(r)}catch(e){r=setInterval(function(){u()},350)}},this);s.push(u),e.use.apply(e,s)},this)),this)},_handleFocus:function(){var e=this.getInstance(),t=new e.EditorSelection,n,r,i,s;t.anchorNode&&(n=t.anchorNode,n.test("p")&&n.get("innerHTML")===""&&(n=n.get("parentNode")),r=n.get("childNodes"),r.size()&&(r.item(0).test("br")?t.selectNode(n,!0,!1):r.item(0).test("p")?(n=r.item(0).one("br.yui-cursor"),n&&(n=n.get("parentNode")),n||(n=r.item(0).get("firstChild")),n||(n=r.item(0)),n&&t.selectNode(n,!0,!1)):(i=e.one("br.yui-cursor"),i&&(s=i.get("parentNode"),s&&t.selectNode(s,!0,!1)))))},focus:function(t){if(e.UA.ie&&e.UA.ie<9){try{e.one("win").focus(),this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus()}catch(n){}t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()}else try{e.one("win").focus(),e.later(100,this,function(){this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus(),t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()})}catch(r){}return this},show:function(){this._iframe.setStyles({position:"static",left:""});if(e.UA.gecko){try{this.getInstance()&&(this.getInstance().config.doc.designMode="on")}catch(t){}this.focus()}return this},hide:function(){return this._iframe.setStyles({position:"absolute",left:"-999999px"}),this}},{THROTTLE_TIME:100,DOM_EVENTS:{dblclick:1,click:1,paste:1,mouseup:1,mousedown:1,keyup:1,keydown:1,keypress:1,activate:1,deactivate:1,beforedeactivate:1,focusin:1,focusout:1},DEFAULT_CSS:"body { background-color: #fff; font: 13px/1.22 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small; } a, a:visited, a:hover { color: blue !important; text-decoration: underline !important; cursor: text !important; } img { cursor: pointer !important; border: none; }",IFRAME_ATTRS:{border:"0",frameBorder:"0",marginWidth:"0",marginHeight:"0",leftMargin:"0",topMargin:"0",allowTransparency:"true",width:"100%",height:"99%"},PAGE_HTML:'{TITLE}{META}{LINKED_CSS}{EXTRA_CSS}{CONTENT}',getDocType:function(){var t=e.config.doc.doctype,r=n.DOC_TYPE;return t?r="":e.config.doc.all&&(t=e.config.doc.all[0],t.nodeType&&t.nodeType===8&&t.nodeValue&&t.nodeValue.toLowerCase().indexOf("doctype")!==-1&&(r="")),r},DOC_TYPE:'',META:'',NAME:"frame",ATTRS:{title:{value:"Blank Page"},dir:{value:"ltr"},lang:{value:"en-US"},src:{value:"javascript"+(e.UA.ie?":false":":")+";"},designMode:{writeOnce:!0,value:!1},content:{value:"
    ",setter:"_setHTML",getter:"_getHTML"},basehref:{value:!1,getter:"_resolveBaseHref"},use:{writeOnce:!0,value:["node","node-style","selector-css3"]},container:{value:"body",setter:function(t){return e.one(t)}},node:{readOnly:!0,value:null,getter:function(){return this._iframe}},id:{writeOnce:!0,getter:function(t){return t||(t="iframe-"+e.guid()),t}},linkedcss:{value:"",getter:"_getLinkedCSS",setter:"_setLinkedCSS"},extracss:{value:"",setter:"_setExtraCSS"},host:{value:!1},defaultblock:{value:"p"}}}),e.Frame=n},"3.12.0",{requires:["base","node","selector-css3","yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame.js b/lib/yuilib/3.12.0/frame/frame.js similarity index 99% rename from lib/yuilib/3.9.1/build/frame/frame.js rename to lib/yuilib/3.12.0/frame/frame.js index 7a7cda355a2..406f88740a0 100644 --- a/lib/yuilib/3.9.1/build/frame/frame.js +++ b/lib/yuilib/3.12.0/frame/frame.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('frame', function (Y, NAME) { /*jshint maxlen: 500 */ @@ -1014,4 +1020,4 @@ YUI.add('frame', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); +}, '3.12.0', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js index ee19e8306f5..6794aa5434e 100644 --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('gesture-simulate', function (Y, NAME) { /** @@ -1321,4 +1327,4 @@ Y.Event.simulateGesture = function(node, name, options, cb) { }; -}, '3.9.1', {"requires": ["async-queue", "event-simulate", "node-screen"]}); +}, '3.12.0', {"requires": ["async-queue", "event-simulate", "node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js similarity index 97% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js index fb56752d43a..35fed7c2e61 100644 --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("gesture-simulate",function(e,t){function T(n){n||e.error(t+": invalid target node"),this.node=n,this.target=e.Node.getDOMNode(n);var r=this.node.getXY(),i=this._getDims();a=r[0]+i[0]/2,f=r[1]+i[1]/2}var t="gesture-simulate",n=e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6),r={tap:1,doubletap:1,press:1,move:1,flick:1,pinch:1,rotate:1},i={touchstart:1,touchmove:1,touchend:1,touchcancel:1},s=e.config.doc,o,u=20,a,f,l={HOLD_TAP:10,DELAY_TAP:10,HOLD_PRESS:3e3,MIN_HOLD_PRESS:1e3,MAX_HOLD_PRESS:6e4,DISTANCE_MOVE:200,DURATION_MOVE:1e3,MAX_DURATION_MOVE:5e3,MIN_VELOCITY_FLICK:1.3,DISTANCE_FLICK:200,DURATION_FLICK:1e3,MAX_DURATION_FLICK:5e3,DURATION_PINCH:1e3},c="touchstart",h="touchmove",p="touchend",d="gesturestart",v="gesturechange",m="gestureend",g="mouseup",y="mousemove",b="mousedown",w="click",E="dblclick",S="x",x="y";T.prototype={_toRadian:function(e){return e*(Math.PI/180)},_getDims:function(){var e,t,n;return this.target.getBoundingClientRect?(e=this.target.getBoundingClientRect(),"height"in e?n=e.height:n=Math.abs(e.bottom-e.top),"width"in e?t=e.width:t=Math.abs(e.right-e.left)):(e=this.node.get("region"),t=e.width,n=e.height),[t,n]},_calculateDefaultPoint:function(t){var n;return!e.Lang.isArray(t)||t.length===0?t=[a,f]:(t.length==1&&(n=this._getDims[1],t[1]=n/2),t[0]=this.node.getX()+t[0],t[1]=this.node.getY()+t[1]),t},rotate:function(n,r,i,s,o,u,a){var f,l=i,c=s;if(!e.Lang.isNumber(l)||!e.Lang.isNumber(c)||l<0||c<0)f=this.target.offsetWidth=2&&this._simulateEvent(this.target,d,e.merge({scale:k,rotation:O},r))},timeout:0,context:this}),H=Math.floor(o/b),T=(x-S)/H,A=(L-k)/H,_=(M-O)/H,B=function(t){var n=S+T*t,r=N+n*Math.sin(this._toRadian(O+_*t)),i=C-n*Math.cos(this._toRadian(O+_*t)),s=N-n*Math.sin(this._toRadian(O+_*t)),o=C+n*Math.cos(this._toRadian(O+_*t)),u=(r+s)/2,a=(i+o)/2,f,l,c,p;f={pageX:r,pageY:i,clientX:r,clientY:i},l={pageX:s,pageY:o,clientX:s,clientY:o},p=this._createTouchList([e.merge({identifier:E++},f),e.merge({identifier:E++},l)]),c={pageX:u,pageY:a,clientX:u,clientY:a},this._simulateEvent(this.target,h,e.merge({touches:p,targetTouches:p,changedTouches:p,scale:k+A*t,rotation:O+_*t},c)),e.UA.ios>=2&&this._simulateEvent(this.target,v,e.merge({scale:k+A*t,rotation:O+_*t},c))};for(y=0;y=2&&this._simulateEvent(this.target,m,e.merge({scale:L,rotation:M},i)),this._simulateEvent(this.target,p,e.merge({touches:t,targetTouches:t,changedTouches:s,scale:L,rotation:M},i))},context:this}),n&&e.Lang.isFunction(n)&&g.add({fn:n,context:this.node}),g.run()},tap:function(t,r,i,s,o){var u=new e.AsyncQueue,a=this._getEmptyTouchList(),f,h,d,v,m;r=this._calculateDefaultPoint(r);if(!e.Lang.isNumber(i)||i<1)i=1;e.Lang.isNumber(s)||(s=l.HOLD_TAP),e.Lang.isNumber(o)||(o=l.DELAY_TAP),h={pageX:r[0],pageY:r[1],clientX:r[0],clientY:r[1]},f=this._createTouchList([e.merge({identifier:0},h)]),v=function(){this._simulateEvent(this.target,c,e.merge({touches:f,targetTouches:f,changedTouches:f},h))},m=function(){this._simulateEvent(this.target,p,e.merge({touches:a,targetTouches:a,changedTouches:f},h))};for(d=0;d1&&!n&&u.add({fn:function(){this._simulateEvent(this.target,E,h)},context:this}),t&&e.Lang.isFunction(t)&&u.add({fn:t,context:this.node}),u.run()},flick:function(n,r,i,s,o){var u;r=this._calculateDefaultPoint(r),e.Lang.isString(i)?(i=i.toLowerCase(),i!==S&&i!==x&&e.error(t+"(flick): Only x or y axis allowed")):i=S,e.Lang.isNumber(s)||(s=l.DISTANCE_FLICK),e.Lang.isNumber(o)?o>l.MAX_DURATION_FLICK&&(o=l.MAX_DURATION_FLICK):o=l.DURATION_FLICK,Math.abs(s)/ol.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,i={start:e.clone(n.point),end:[n.point[0]+n.xdist,n.point[1]+n.ydist]},this._move(t,i,r)},_move:function(t,n,r){var i,s,o=u,d,v,m,g=0,y;e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,e.Lang.isObject(n)?(e.Lang.isArray(n.start)||(n.start=[a,f]),e.Lang.isArray(n.end)||(n.end=[a+l.DISTANCE_MOVE,f])):n={start:[a,f],end:[a+l.DISTANCE_MOVE,f]},e.AsyncQueue.defaults.timeout=o,i=new e.AsyncQueue,i.add({fn:function(){var t={pageX:n.start[0],pageY:n.start[1],clientX:n.start[0],clientY:n.start[1]},r=this._createTouchList([e.merge({identifier:g++},t)]);this._simulateEvent(this.target,c,e.merge({touches:r,targetTouches:r,changedTouches:r},t))},timeout:0,context:this}),d=Math.floor(r/o),v=(n.end[0]-n.start[0])/d,m=(n.end[1]-n.start[1])/d,y=function(t){var r=n.start[0]+v*t,i=n.start[1]+m*t,s={pageX:r,pageY:i,clientX:r,clientY:i},o=this._createTouchList([e.merge({identifier:g++},s)]);this._simulateEvent(this.target,h,e.merge({touches:o,targetTouches:o,changedTouches:o},s))};for(s=0;s=4||e.UA.ios&&e.UA.ios>=2?(e.each(n,function(t){t.identifier||(t.identifier=0),t.pageX||(t.pageX=0),t.pageY||(t.pageY=0),t.screenX||(t.screenX=0),t.screenY||(t.screenY=0),r.push(s.createTouch(e.config.win,o.target,t.identifier,t.pageX,t.pageY,t.screenX,t.screenY))}),i=s.createTouchList.apply(s,r)):e.UA.ios&&e.UA.ios<2?e.error(t+": No touch event simulation framework present."):(i=[],e.each(n,function(e){e.identifier||(e.identifier=0),e.clientX||(e.clientX=0),e.clientY||(e.clientY=0),e.pageX||(e.pageX=0),e.pageY||(e.pageY=0),e.screenX||(e.screenX=0),e.screenY||(e.screenY=0),i.push({target:o.target,identifier:e.identifier,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}),i.item=function(e){return i[e]}):e.error(t+": Invalid touchPoints passed"),i},_simulateEvent:function(t,r,s){var o;i[r]?n?e.Event.simulate(t,r,s):this._isSingleTouch(s.touches,s.targetTouches,s.changedTouches)?(r={touchstart:b,touchmove:y,touchend:g}[r],s.button=0,s.relatedTarget=null,o=r===g?s.changedTouches:s.touches,s=e.mix(s,{screenX:o.item(0).screenX,screenY:o.item(0).screenY,clientX:o.item(0).clientX,clientY:o.item(0).clientY},!0),e.Event.simulate(t,r,s),r==g&&e.Event.simulate(t,w,s)):e.error("_simulateEvent(): Event '"+r+"' has multi touch objects that can't be simulated in your platform."):e.Event.simulate(t,r,s)},_isSingleTouch:function(e,t,n){return e&&e.length<=1&&t&&t.length<=1&&n&&n.length<=1}},e.GestureSimulation=T,e.GestureSimulation.defaults=l,e.GestureSimulation.GESTURES=r,e.Event.simulateGesture=function(n,i,s,o){n=e.one(n);var u=new e.GestureSimulation(n);i=i.toLowerCase(),!o&&e.Lang.isFunction(s)&&(o=s,s={}),s=s||{};if(r[i])switch(i){case"tap":u.tap(o,s.point,s.times,s.hold,s.delay);break;case"doubletap":u.tap(o,s.point,2);break;case"press":e.Lang.isNumber(s.hold)?s.holdl.MAX_HOLD_PRESS&&(s.hold=l.MAX_HOLD_PRESS):s.hold=l.HOLD_PRESS,u.tap(o,s.point,1,s.hold);break;case"move":u.move(o,s.path,s.duration);break;case"flick":u.flick(o,s.point,s.axis,s.distance,s.duration);break;case"pinch":u.pinch(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation);break;case"rotate":u.rotate(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation)}else e.error(t+": Not a supported gesture simulation: "+i)}},"3.9.1",{requires:["async-queue","event-simulate","node-screen"]}); +DISTANCE_MOVE,ydist:0},e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,i={start:e.clone(n.point),end:[n.point[0]+n.xdist,n.point[1]+n.ydist]},this._move(t,i,r)},_move:function(t,n,r){var i,s,o=u,d,v,m,g=0,y;e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,e.Lang.isObject(n)?(e.Lang.isArray(n.start)||(n.start=[a,f]),e.Lang.isArray(n.end)||(n.end=[a+l.DISTANCE_MOVE,f])):n={start:[a,f],end:[a+l.DISTANCE_MOVE,f]},e.AsyncQueue.defaults.timeout=o,i=new e.AsyncQueue,i.add({fn:function(){var t={pageX:n.start[0],pageY:n.start[1],clientX:n.start[0],clientY:n.start[1]},r=this._createTouchList([e.merge({identifier:g++},t)]);this._simulateEvent(this.target,c,e.merge({touches:r,targetTouches:r,changedTouches:r},t))},timeout:0,context:this}),d=Math.floor(r/o),v=(n.end[0]-n.start[0])/d,m=(n.end[1]-n.start[1])/d,y=function(t){var r=n.start[0]+v*t,i=n.start[1]+m*t,s={pageX:r,pageY:i,clientX:r,clientY:i},o=this._createTouchList([e.merge({identifier:g++},s)]);this._simulateEvent(this.target,h,e.merge({touches:o,targetTouches:o,changedTouches:o},s))};for(s=0;s=4||e.UA.ios&&e.UA.ios>=2?(e.each(n,function(t){t.identifier||(t.identifier=0),t.pageX||(t.pageX=0),t.pageY||(t.pageY=0),t.screenX||(t.screenX=0),t.screenY||(t.screenY=0),r.push(s.createTouch(e.config.win,o.target,t.identifier,t.pageX,t.pageY,t.screenX,t.screenY))}),i=s.createTouchList.apply(s,r)):e.UA.ios&&e.UA.ios<2?e.error(t+": No touch event simulation framework present."):(i=[],e.each(n,function(e){e.identifier||(e.identifier=0),e.clientX||(e.clientX=0),e.clientY||(e.clientY=0),e.pageX||(e.pageX=0),e.pageY||(e.pageY=0),e.screenX||(e.screenX=0),e.screenY||(e.screenY=0),i.push({target:o.target,identifier:e.identifier,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}),i.item=function(e){return i[e]}):e.error(t+": Invalid touchPoints passed"),i},_simulateEvent:function(t,r,s){var o;i[r]?n?e.Event.simulate(t,r,s):this._isSingleTouch(s.touches,s.targetTouches,s.changedTouches)?(r={touchstart:b,touchmove:y,touchend:g}[r],s.button=0,s.relatedTarget=null,o=r===g?s.changedTouches:s.touches,s=e.mix(s,{screenX:o.item(0).screenX,screenY:o.item(0).screenY,clientX:o.item(0).clientX,clientY:o.item(0).clientY},!0),e.Event.simulate(t,r,s),r==g&&e.Event.simulate(t,w,s)):e.error("_simulateEvent(): Event '"+r+"' has multi touch objects that can't be simulated in your platform."):e.Event.simulate(t,r,s)},_isSingleTouch:function(e,t,n){return e&&e.length<=1&&t&&t.length<=1&&n&&n.length<=1}},e.GestureSimulation=T,e.GestureSimulation.defaults=l,e.GestureSimulation.GESTURES=r,e.Event.simulateGesture=function(n,i,s,o){n=e.one(n);var u=new e.GestureSimulation(n);i=i.toLowerCase(),!o&&e.Lang.isFunction(s)&&(o=s,s={}),s=s||{};if(r[i])switch(i){case"tap":u.tap(o,s.point,s.times,s.hold,s.delay);break;case"doubletap":u.tap(o,s.point,2);break;case"press":e.Lang.isNumber(s.hold)?s.holdl.MAX_HOLD_PRESS&&(s.hold=l.MAX_HOLD_PRESS):s.hold=l.HOLD_PRESS,u.tap(o,s.point,1,s.hold);break;case"move":u.move(o,s.path,s.duration);break;case"flick":u.flick(o,s.point,s.axis,s.distance,s.duration);break;case"pinch":u.pinch(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation);break;case"rotate":u.rotate(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation)}else e.error(t+": Not a supported gesture simulation: "+i)}},"3.12.0",{requires:["async-queue","event-simulate","node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js similarity index 99% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js index ee19e8306f5..6794aa5434e 100644 --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('gesture-simulate', function (Y, NAME) { /** @@ -1321,4 +1327,4 @@ Y.Event.simulateGesture = function(node, name, options, cb) { }; -}, '3.9.1', {"requires": ["async-queue", "event-simulate", "node-screen"]}); +}, '3.12.0', {"requires": ["async-queue", "event-simulate", "node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js rename to lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js index 9610176727a..3c402bb2e32 100644 --- a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js +++ b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('get', function (Y, NAME) { /** @@ -196,4 +202,4 @@ YUI.add('get', function (Y, NAME) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js similarity index 90% rename from lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js rename to lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js index 62fc8bee98e..fe4d28cd459 100644 --- a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js +++ b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break} -}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}); +}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/get/get.js b/lib/yuilib/3.12.0/get/get.js similarity index 99% rename from lib/yuilib/3.9.1/build/get/get.js rename to lib/yuilib/3.12.0/get/get.js index da97cae20ca..16cfe57112f 100644 --- a/lib/yuilib/3.9.1/build/get/get.js +++ b/lib/yuilib/3.12.0/get/get.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -1272,4 +1278,4 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js similarity index 60% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js index 8d892c9c9af..5d17a5fd1be 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas-default', function (Y, NAME) { Y.Graphic = Y.CanvasGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.CanvasPath; Y.Drawing = Y.CanvasDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js similarity index 52% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js index 09b29e39ea2..e784c8b582b 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-canvas-default",function(e,t){e.Graphic=e.CanvasGraphic,e.Shape=e.CanvasShape,e.Circle=e.CanvasCircle,e.Rect=e.CanvasRect,e.Ellipse=e.CanvasEllipse,e.Path=e.CanvasPath,e.Drawing=e.CanvasDrawing},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics-canvas-default",function(e,t){e.Graphic=e.CanvasGraphic,e.Shape=e.CanvasShape,e.Circle=e.CanvasCircle,e.Rect=e.CanvasRect,e.Ellipse=e.CanvasEllipse,e.Path=e.CanvasPath,e.Drawing=e.CanvasDrawing},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js similarity index 60% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js index 8d892c9c9af..5d17a5fd1be 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas-default', function (Y, NAME) { Y.Graphic = Y.CanvasGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.CanvasPath; Y.Drawing = Y.CanvasDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js index 6b3e3eda92f..9cda8cf5048 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas', function (Y, NAME) { var IMPLEMENTATION = "canvas", @@ -3671,4 +3677,4 @@ Y.extend(CanvasGraphic, Y.GraphicBase, { Y.CanvasGraphic = CanvasGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js index 4b970a9a898..7f77c7be47b 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js @@ -1,6 +1,12 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("graphics-canvas",function(e,t){function T(){}function N(){N.superclass.constructor.apply(this,arguments)}var n="canvas",r="shape",i=/[a-z][^a-z]*/ig,s=/[\-]?[0-9]*[0-9|\.][0-9]*/g,o=e.config.doc,u=e.Lang,a=e.AttributeLite,f,l,c,h,p,d,v=e.DOM,m=e.Color,g=parseInt,y=parseFloat,b=u.isNumber,w=RegExp,E=m.toRGB,S=m.toHex,x=e.ClassNameManager.getClassName;T.prototype={_pathSymbolToMethod:{M:"moveTo",m:"relativeMoveTo",L:"lineTo",l:"relativeLineTo",C:"curveTo",c:"relativeCurveTo",Q:"quadraticCurveTo",q:"relativeQuadraticCurveTo",z:"closePath",Z:"closePath"},_currentX:0,_currentY:0,_toRGBA:function(e,t){return t=t!==undefined?t:1,m.re_RGB.test(e)||(e=S(e)),m.re_hex.exec(e)&&(e="rgba("+[g(w.$1,16),g(w.$2,16),g(w.$3,16)].join(",")+","+t+")"),e},_toRGB:function(e){return E(e)},setSize:function(e,t){this.get("autoSize")&&(e>this.node.getAttribute("width")&&(this.node.style.width=e+"px",this.node.setAttribute("width",e)),t>this.node.getAttribute("height")&&(this.node.style.height=t+"px",this.node.setAttribute("height",t)))},_updateCoords:function(e,t){this._xcoords.push(e),this._ycoords.push(t),this._currentX=e,this._currentY=t},_clearAndUpdateCoords:function(){var e=this._xcoords.pop()||0,t=this._ycoords.pop()||0;this._updateCoords(e,t)},_updateNodePosition:function(){var e=this.get("node"),t=this.get("x"),n=this.get("y");e.style.position="absolute",e.style.left=t+this._left+"px",e.style.top=n+this._top+"px"},_updateDrawingQueue:function(e){this._methods.push(e)},lineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!1]),this},relativeLineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!0]),this},_lineTo:function(e,t){var n=e[0],r,i,s,o,u=this._stroke&&this._strokeWeight?this._strokeWeight:0,a=t?parseFloat(this._currentX):0,f=t?parseFloat(this._currentY):0;this._lineToMethods||(this._lineToMethods=[]),i=e.length-1;if(typeof n=="string"||typeof n=="number")for(r=0;r360&&(r=360),u=Math.ceil(Math.abs(r)/45),a=r/u,f=-(a/180)*Math.PI,l=n/180*Math.PI;if(u>0){h=e+Math.cos(n/180*Math.PI)*i,p=t+Math.sin(n/180*Math.PI)*s,this.lineTo(h,p);for(y=0;y=p/2?(d<180?(g=c,y=c+p):(g=c+p,y=c),v=b-(w-g)/T,m=b-(w-y)/T):(d>90&&d<270?(v=l+h,m=l):(v=l,m=l+h),g=(T*(b-v)-w)*-1,y=(T*(b-m)-w)*-1),f=this._context.createLinearGradient(v,g,m,y);for(u=0;u=S&&(A=k/S,A===1&&(A=1.01),N=(g-x)/A,C=(b-T)/A,N=N>0?Math.floor(N):Math.ceil(N),C=C>0?Math.floor(C):Math.ceil(C),g=x+N,b=T+C),r>=.5?(h=this._context.createRadialGradient(g,b,r,y,w,r*v),O=1):(h=this._context.createRadialGradient(g,b,r,y,w,v/2),O=r*2);for(l=0;lthis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top}},e.CanvasDrawing=T,f=function(){this._transforms=[],this.matrix=new e.Matrix,f.superclass.constructor.apply(this,arguments)},f.NAME="shape",e.extend(f,e.GraphicBase,e.mix({init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t._initProps(),t.createNode(),t._xcoords=[0],t._ycoords=[0],n&&this._setGraphic(n),r&&t._parsePathData(r),t._updateHandler()},_setGraphic:function(t){var n;t instanceof e.CanvasGraphic?this._graphic=t:(t=e.one(t),n=new e.CanvasGraphic({render:t}),n._appendShape(this),this._graphic=n)},addClass:function(t){var n=e.one(this.get("node"));n.addClass(t)},removeClass:function(t){var n=e.one(this.get("node"));n.removeClass(t)},getXY:function(){var e=this.get("graphic"),t=e.getXY(),n=this.get("x"),r=this.get("y");return[t[0]+n,t[1]+r]},setXY:function(e){var t=this.get("graphic"),n=t.getXY(),r=e[0]-n[0],i=e[1]-n[1];this._set("x",r),this._set("y",i),this._updateNodePosition(r,i)},contains:function(t){return t===e.one(this.node)},test:function(t){return e.one(this.get("node")).test(t)},compareTo:function(e){var t=this.node;return t===e},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},_left:0,_right:0,_top:0,_bottom:0,createNode:function(){var t=this,i=e.config.doc.createElement("canvas"),s=t.get("id"),o=t._camelCaseConcat,u=t.name;t._context=i.getContext("2d"),i.setAttribute("overflow","visible"),i.style.overflow="visible",t.get("visible")||(i.style.visibility="hidden"),i.setAttribute("id",s),s="#"+s,t.node=i,t.addClass(x(r)+" "+x(o(n,r))+" "+x(u)+" "+x(o(n,u)))},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_setStrokeProps:function(t){var n,r,i,s,o,u;t?(n=t.color,r=y(t.weight),i=y(t.opacity),s=t.linejoin||"round",o=t.linecap||"butt",u=t.dashstyle,this._miterlimit=null,this._dashstyle=u&&e.Lang.isArray(u)&&u.length>1?u:null,this._strokeWeight=r,b(r)&&r>0?this._stroke=1:this._stroke=0,b(i)?this._strokeStyle=this._toRGBA(n,i):this._strokeStyle=n,this._linecap=o,s==="round"||s==="bevel"?this._linejoin=s:(s=parseInt(s,10),b(s)&&(this._miterlimit=Math.max(s,1),this._linejoin="miter"))):this._stroke=0},set:function(){var e=this;a.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},_setFillProps:function(e){var t=b,n,r,i;e?(n=e.color,i=e.type,i==="linear"||i==="radial"?this._fillType=i:n?(r=e.opacity,t(r)?(r=Math.max(0 ,Math.min(1,r)),n=this._toRGBA(n,r)):n=E(n),this._fillColor=n,this._fillType="solid"):this._fillColor=null):(this._fillType=null,this._fillColor=null)},translate:function(e,t){this._translateX+=e,this._translateY+=t,this._addTransform("translate",arguments)},translateX:function(e){this._translateX+=e,this._addTransform("translateX",arguments)},translateY:function(e){this._translateY+=e,this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},_transform:"",_addTransform:function(t,n){n=e.Array(n),this._transform=u.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var e=this.node,t,n,r=this.get("transformOrigin"),i=this.matrix,s,o=this._transforms.length;if(this._transforms&&this._transforms.length>0){for(s=0;s0&&(a=f.shift(),a&&(a==="closePath"?(r.closePath(),this._strokeAndFill(r)):a&&a==="lineTo"&&this._dashstyle?(f.unshift(this._xcoords[o]-this._left,this._ycoords[o]-this._top),this._drawDashedLine.apply(this,f)):r[a].apply(r,f)));this._strokeAndFill(r),this._drawingComplete=!0,this._clearAndUpdateCoords(),this._updateNodePosition(),this._methods=s}},_strokeAndFill:function(e){this._fillType&&(this._fillType==="linear"?e.fillStyle=this._getLinearGradient():this._fillType==="radial"?e.fillStyle=this._getRadialGradient():e.fillStyle=this._fillColor,e.closePath(),e.fill()),this._stroke&&(this._strokeWeight&&(e.lineWidth=this._strokeWeight),e.lineCap=this._linecap,e.lineJoin=this._linejoin,this._miterlimit&&(e.miterLimit=this._miterlimit),e.strokeStyle=this._strokeStyle,e.stroke())},_drawDashedLine:function(e,t,n,r){var i=this._context,s=this._dashstyle[0],o=this._dashstyle[1],u=s+o,a=n-e,f=r-t,l=Math.sqrt(Math.pow(a,2)+Math.pow(f,2)),c=Math.floor(Math.abs(l/u)),h=Math.atan2(f,a),p=e,d=t,v;a=Math.cos(h)*u,f=Math.sin(h)*u;for(v=0;vs?i.lineTo(p+Math.cos(h)*s,d+Math.sin(h)*s):l>0&&i.lineTo(p+Math.cos(h)*l,d+Math.sin(h)*l),i.moveTo(n,r)},getBounds:function(){var e=this._type,t=this.get("width"),n=this.get("height"),r=this.get("x"),i=this.get("y");return e==="path"&&(r+=this._left,i+=this._top,t=this._right-this._left,n=this._bottom-this._top),this._getContentRect(t,n,r,i)},_getContentRect:function(t,n,r,i){var s=this.get("transformOrigin"),o=s[0]*t,u=s[1]*n,a=this.matrix.getTransformArray(this.get("transform")),f=new e.Matrix,l,c=a.length,h,p,d;this._type==="path"&&(o+=r,u+=i),o=isNaN(o)?0:o,u=isNaN(u)?0:u,f.translate(o,u);for(l=0;l0)if(u.isString&&r[n])s=!0;else if(u.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=e.one(this._node),n;return t&&(n=t.getXY()),n},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden",n=this.get("width")||0,r=this.get("height")||0;this._shapes={},this._redrawQueue={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._node=o.createElement("div"),this._node.style.position="absolute",this._node.style.visibility=t,this.set("width",n),this.set("height",r),e&&this.render(e)},render:function(t){var n=e.one(t),r=this._node,i=this.get("width")||parseInt(n.getComputedStyle("width"),10),s=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||o.body,n.appendChild(r),r.style.display="block",r.style.position="absolute",r.style.left="0px",r.style.top="0px",this.set("width",i),this.set("height",s),this.parentNode=n,this},destroy:function(){this.removeAllShapes(),this._node&&(this._removeChildren(this._node),e.one(this._node).destroy())},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n},_appendShape:function(e){var t=e.node,n=this._frag||this._node;this.get("autoDraw")?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){return e instanceof f||u.isString(e)&&(e=this._shapes[e]),e&&e instanceof f&&(e._destroy(),delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw(),e},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t].destroy();this._shapes={}},clear:function(){this.removeAllShapes()},_removeChildren:function(e){if(e&&e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._node&&(this._node.style.visibility=r)},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.CanvasCircle,rect:e.CanvasRect,path:e.CanvasPath,ellipse:e.CanvasEllipse,pieslice:e.CanvasPieSlice},getShapeById:function(e){var t=this._shapes -[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=o.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i,s,o,u,a,f,l=0,c=0,h,p=this.get("node");t&&(t==="sizeContentToGraphic"?(i=r.right-r.left,s=r.bottom-r.top,o=parseFloat(v.getComputedStyle(p,"width")),u=parseFloat(v.getComputedStyle(p,"height")),h=new e.Matrix,n==="none"?(a=o/i,f=u/s):i/s!==o/u&&(i*u/s>o?(a=f=o/i,c=this._calculateTranslate(n.slice(5).toLowerCase(),s*o/i,u)):(a=f=u/s,l=this._calculateTranslate(n.slice(1,4).toLowerCase(),i*u/s,o))),v.setStyle(p,"transformOrigin","0% 0%"),l-=r.left*a,c-=r.top*f,h.translate(l,c),h.scale(a,f),v.setStyle(p,"transform",h.toCSSText())):(this.set("width",r.right),this.set("height",r.bottom))),this._frag&&(this._node.appendChild(this._frag),this._frag=null)},_calculateTranslate:function(e,t,n){var r=n-t,i;switch(e){case"mid":i=r*.5;break;case"max":i=r;break;default:i=0}return i},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=u.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=u.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=u.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=u.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=u.isNumber(i.left)?i.left:0,i.top=u.isNumber(i.top)?i.top:0,i.right=u.isNumber(i.right)?i.right:0,i.bottom=u.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this.get("node");t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this.get("node"),r;t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.CanvasGraphic=N},"3.9.1",{requires:["graphics"]}); +[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=o.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i,s,o,u,a,f,l=0,c=0,h,p=this.get("node");t&&(t==="sizeContentToGraphic"?(i=r.right-r.left,s=r.bottom-r.top,o=parseFloat(v.getComputedStyle(p,"width")),u=parseFloat(v.getComputedStyle(p,"height")),h=new e.Matrix,n==="none"?(a=o/i,f=u/s):i/s!==o/u&&(i*u/s>o?(a=f=o/i,c=this._calculateTranslate(n.slice(5).toLowerCase(),s*o/i,u)):(a=f=u/s,l=this._calculateTranslate(n.slice(1,4).toLowerCase(),i*u/s,o))),v.setStyle(p,"transformOrigin","0% 0%"),l-=r.left*a,c-=r.top*f,h.translate(l,c),h.scale(a,f),v.setStyle(p,"transform",h.toCSSText())):(this.set("width",r.right),this.set("height",r.bottom))),this._frag&&(this._node.appendChild(this._frag),this._frag=null)},_calculateTranslate:function(e,t,n){var r=n-t,i;switch(e){case"mid":i=r*.5;break;case"max":i=r;break;default:i=0}return i},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=u.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=u.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=u.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=u.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=u.isNumber(i.left)?i.left:0,i.top=u.isNumber(i.top)?i.top:0,i.right=u.isNumber(i.right)?i.right:0,i.bottom=u.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this.get("node");t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this.get("node"),r;t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.CanvasGraphic=N},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js index 6b3e3eda92f..9cda8cf5048 100644 --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas', function (Y, NAME) { var IMPLEMENTATION = "canvas", @@ -3671,4 +3677,4 @@ Y.extend(CanvasGraphic, Y.GraphicBase, { Y.CanvasGraphic = CanvasGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js b/lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js rename to lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js index 0064682b184..043c4c2a5d9 100644 --- a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js +++ b/lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-group', function (Y, NAME) { /** @@ -308,4 +314,4 @@ EllipseGroup.ATTRS = Y.ShapeGroup.ATTRS; Y.EllipseGroup = EllipseGroup; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js b/lib/yuilib/3.12.0/graphics-group/graphics-group-min.js similarity index 91% rename from lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js rename to lib/yuilib/3.12.0/graphics-group/graphics-group-min.js index 38b3b118465..bdc8292c432 100644 --- a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js +++ b/lib/yuilib/3.12.0/graphics-group/graphics-group-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-group",function(e,t){var n,r,i,s,o,u=e.Lang;n=function(){n.superclass.constructor.apply(this,arguments)},n.NAME="shapeGroup",e.extend(n,e.Path,{_draw:function(){var e=this.get("xvalues"),t=this.get("yvalues"),n,r,i,s,o=0,a,f=this.get("dimensions"),l=f.width,c=f.height,h=f.radius,p=f.yRadius,d=u.isArray(l),v=u.isArray(c),m=u.isArray(h),g=u.isArray(p);if(e&&t&&e.length>0){this.clear(),a=e.length;for(;o0){this.clear(),a=e.length;for(;o360&&(r=360),o=Math.ceil(Math.abs(r)/45),u=r/o,a=-(u/180)*Math.PI,f=n/180*Math.PI;if(o>0){c=e+Math.cos(n/180*Math.PI)*i,h=t+Math.sin(n/180*Math.PI)*s,this._pathType="L",w++,this._pathArray[w]=["L"],this._pathArray[w].push(this._round(c)),this._pathArray[w].push(this._round(h)),w++,this._pathType="Q",this._pathArray[w]=["Q"];for(g=0;g0){n=t.shift(),i=n.length,r=n[0],r==="A"?u+=r+n[1]+","+n[2]:r==="z"||r==="Z"?u+=" z ":r==="C"||r==="c"?u+=r+(n[1]-f)+","+(n[2]-l):u+=" "+r+parseFloat(n[1]-f);switch(r){case"L":case"l":case"M":case"m":case"Q":case"q":for(o=2;othis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top}},e.SVGDrawing=g,f=function(){this._transforms=[],this.matrix=new e.Matrix,this._normalizedMatrix=new e.Matrix,f.superclass.constructor.apply(this,arguments)},f.NAME="shape",e.extend(f,e.GraphicBase,e.mix({_x:0,_y:0,init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t.createNode(),n&&t._setGraphic(n),r&&t._parsePathData(r),t._updateHandler()},_setGraphic:function(t){var n;t instanceof e.SVGGraphic?this._graphic=t:(t=e.one(t),n=new e.SVGGraphic({render:t}),n._appendShape(this),this._graphic=n)},addClass:function(e){var t=this.node;t.className.baseVal=o.trim([t.className.baseVal,e].join(" "))},removeClass:function(e){var t=this.node,n=t.className.baseVal;n=n.replace(new RegExp(e+" "),e).replace(new RegExp(e),""),t.className.baseVal=n},getXY:function(){var e=this._graphic,t=e.getXY(),n=this._x,r=this._y;return[t[0]+n,t[1]+r]},setXY:function(e){var t=this._graphic,n=t.getXY();this._x=e[0]-n[0],this._y=e[1]-n[1],this.set("transform",this.get("transform"))},contains:function(t){return t===e.one(this.node)},compareTo:function(e){var t=this.node;return t===e},test:function(t){return e.Selector.test(this.node,t)},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},createNode:function(){var t=this,i=v.createElementNS("http://www.w3.org/2000/svg","svg:"+this._type),s=t.get("id"),o=t.name,u=t._camelCaseConcat,a=t.get("pointerEvents");t.node=i,t.addClass(m(r)+" "+m(u(n,r))+" "+m(o)+" "+m(u(n,o))),s&&i.setAttribute("id",s),a&&i.setAttribute("pointer-events",a),t.get("visible")||e.one(i).setStyle("visibility","hidden")},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_strokeChangeHandler:function(){var e=this.node,t=this.get("stroke"),n,r,i,s;t&&t.weight&&t.weight>0?(s=t.linejoin||"round",n=parseFloat(t.opacity),r=t.dashstyle||"none",i=o.isArray(r)?r.toString():r,t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=o.isNumber(n)?n:1,t.linecap=t.linecap||"butt",e.setAttribute("stroke-dasharray",i),e.setAttribute("stroke",t.color),e.setAttribute("stroke-linecap",t.linecap),e.setAttribute("stroke-width",t.weight),e.setAttribute("stroke-opacity",t.opacity),s==="round"||s==="bevel"?e.setAttribute("stroke-linejoin",s):(s=parseInt(s,10),o.isNumber(s)&&(e.setAttribute("stroke-miterlimit",Math.max(s,1)),e.setAttribute("stroke-linejoin","miter")))):e.setAttribute("stroke","none")},_fillChangeHandler:function(){var e=this.node,t=this.get("fill"),n,r;t?(r=t.type,r==="linear"||r==="radial"?(this._setGradientFill(t),e.setAttribute("fill","url(#grad"+this.get("id")+")")):t.color?(n=parseFloat(t.opacity),n=o.isNumber(n)?n:1,e.setAttribute("fill",t.color),e.setAttribute("fill-opacity",n)):e.setAttribute("fill","none")):e.setAttribute("fill","none")},_setGradientFill:function(e){var t,n,r,i,s,u=o.isNumber,a=this._graphic,f=e.type,l=a.getGradientNode("grad"+this.get("id"),f),c=e.stops,h=this.get("width"),p=this.get("height"),d=e.rotation||0,v=Math.PI/180,m=parseFloat(parseFloat(Math.tan(d*v)).toFixed(8)),g,y,b,w,E="0%",S="100%",x="0%",T="0%",N=e.cx,C=e.cy,k=e.fx,L=e.fy,A=e.r,O=[];f==="linear"?(N=h/2,C=p/2,Math.abs(m)*h/2>=p/2?(d<180?(x=0,T=p):(x=p,T=0),E=N-(C-x)/m,S=N-(C-T)/m):(d>90&&d<270?(E=h,S=0):(E=0,S=h),x=(m*(N-E)-C)*-1,T=(m*(N-S)-C)*-1),E=Math.round(100*E/h),S=Math.round(100*S/h),x=Math.round(100*x/p),T=Math.round(100*T/p),E=u(E)?E:0,S=u(S)?S:100,x=u(x)?x:0,T=u(T)?T:0,l.setAttribute("spreadMethod","pad"),l.setAttribute("width",h),l.setAttribute("height",p),l.setAttribute +("x1",E+"%"),l.setAttribute("x2",S+"%"),l.setAttribute("y1",x+"%"),l.setAttribute("y2",T+"%")):(l.setAttribute("cx",N*100+"%"),l.setAttribute("cy",C*100+"%"),l.setAttribute("fx",k*100+"%"),l.setAttribute("fy",L*100+"%"),l.setAttribute("r",A*100+"%")),y=c.length,b=0;for(g=0;g0?(i=this._stops.shift(),s=!1):(i=a._createGraphicNode("stop"),s=!0),w=c[g],n=w.opacity,r=w.color,t=w.offset||g/(y-1),t=Math.round(t*100)+"%",n=u(n)?n:1,n=Math.max(0,Math.min(1,n)),b=(g+1)/y,i.setAttribute("offset",t),i.setAttribute("stop-color",r),i.setAttribute("stop-opacity",n),s&&l.appendChild(i),O.push(i);while(this._stops&&this._stops.length>0)l.removeChild(this._stops.shift());this._stops=O},_stops:null,set:function(){var e=this;u.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},translate:function(){this._addTransform("translate",arguments)},translateX:function(){this._addTransform("translateX",arguments)},translateY:function(){this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},_addTransform:function(t,n){n=e.Array(n),this._transform=o.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var t=this._type==="path",n=this.node,r,i,s,o,u,a,f,l=this.matrix,c=this._normalizedMatrix,h,p=this._transforms.length;if(t||this._transforms&&this._transforms.length>0){o=this._x,u=this._y,s=this.get("transformOrigin"),a=o+s[0]*this.get("width"),f=u+s[1]*this.get("height"),t&&(this instanceof e.SVGPath||(a=this._left+s[0]*this.get("width"),f=this._top+s[1]*this.get("height")),c.init({dx:o+this._left,dy:u+this._top})),c.translate(a,f);for(h=0;h0)if(o.isString&&r[n])s=!0;else if(o.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=e.one(this._node),n;return t&&(n=t.getXY()),n},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden";this._shapes={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._gradients={},this._node=v.createElement("div"),this._node.style.position="absolute",this._node.style.left=this.get("x")+"px",this._node.style.top=this.get("y")+"px",this._node.style.visibility=t,this._contentNode=this._createGraphics(),this._contentNode.style.visibility=t,this._contentNode.setAttribute("id",this.get("id")),this._node.appendChild(this._contentNode),e&&this.render(e)},render:function(t){var n=e.one(t),r=this.get("width")||parseInt(n.getComputedStyle("width"),10),i=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||e.one(v.body),n.append(this._node),this.parentNode=n,this.set("width",r),this.set("height",i),this},destroy:function(){this.removeAllShapes(),this._contentNode&&(this._removeChildren(this._contentNode),this._contentNode.parentNode&&this._contentNode.parentNode.removeChild(this._contentNode),this._contentNode=null),this._node&&(this._removeChildren(this._node),e.one(this._node).remove(!0),this._node=null)},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n},_appendShape:function(e){var t=e.node,n=this._frag||this._contentNode;this.get("autoDraw")?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){return e instanceof f||o.isString(e)&&(e=this._shapes[e]),e&&e instanceof f&&(e._destroy(),delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw(),e},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t]._destroy();this._shapes={}},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},clear:function(){this.removeAllShapes()},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._contentNode&&(this._contentNode.style.visibility=r),this._node&&(this._node.style.visibility=r)},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.SVGCircle,rect:e.SVGRect,path:e.SVGPath,ellipse:e.SVGEllipse,pieslice:e.SVGPieSlice},getShapeById:function(e){var t=this._shapes[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=v.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i=r.left,s=r.right,o=r.top,u=r.bottom,a=s-i,f=u-o,l,c,h,p,d;t?t==="sizeContentToGraphic"?(d=e.one(this._node),l=parseFloat(d.getComputedStyle("width")),c=parseFloat(d.getComputedStyle("height")),h=p=0,this._contentNode.setAttribute("preserveAspectRatio",n)):(l=a,c=f,h=i,p=o,this._state.width=a,this._state.height=f,this._node&&(this._node.style.width=a+"px" +,this._node.style.height=f+"px")):(l=a,c=f,h=i,p=o),this._contentNode&&(this._contentNode.style.left=h+"px",this._contentNode.style.top=p+"px",this._contentNode.setAttribute("width",l),this._contentNode.setAttribute("height",c),this._contentNode.style.width=l+"px",this._contentNode.style.height=c+"px",this._contentNode.setAttribute("viewBox",""+i+" "+o+" "+a+" "+f+"")),this._frag&&(this._contentNode&&this._contentNode.appendChild(this._frag),this._frag=null)},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_createGraphics:function(){var e=this._createGraphicNode("svg"),t=this.get("pointerEvents");return e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.overflow="auto",e.setAttribute("overflow","auto"),e.setAttribute("pointer-events",t),e},_createGraphicNode:function(e,t){var n=v.createElementNS("http://www.w3.org/2000/svg","svg:"+e),r=t||"none";return e!=="defs"&&e!=="stop"&&e!=="linearGradient"&&e!=="radialGradient"&&n.setAttribute("pointer-events",r),n},getGradientNode:function(e,t){var n=this._gradients,r,i=t+"Gradient";return n.hasOwnProperty(e)&&n[e].tagName.indexOf(t)>-1?r=this._gradients[e]:(r=this._createGraphicNode(i),this._defs||(this._defs=this._createGraphicNode("defs"),this._contentNode.appendChild(this._defs)),this._defs.appendChild(r),e=e||"gradient"+Math.round(1e5*Math.random()),r.setAttribute("id",e),n.hasOwnProperty(e)&&this._defs.removeChild(n[e]),n[e]=r),r},_toFront:function(t){var n=this._contentNode;t instanceof e.SVGShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._contentNode,r;t instanceof e.SVGShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.SVGGraphic=a},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js b/lib/yuilib/3.12.0/graphics-svg/graphics-svg.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js rename to lib/yuilib/3.12.0/graphics-svg/graphics-svg.js index 9225e776b30..12930a1d73d 100644 --- a/lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js +++ b/lib/yuilib/3.12.0/graphics-svg/graphics-svg.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-svg', function (Y, NAME) { var IMPLEMENTATION = "svg", @@ -30,6 +36,18 @@ function SVGDrawing(){} * @constructor */ SVGDrawing.prototype = { + /** + * Rounds a value to the nearest hundredth. + * + * @method _round + * @param {Number} val Value to be rounded. + * @return Number + * @private + */ + _round: function(val) { + return Math.round(val * 100)/100; + }, + /** * Maps path to methods * @@ -466,8 +484,8 @@ SVGDrawing.prototype = { this._pathType = "L"; pathArrayLen++; this._pathArray[pathArrayLen] = ["L"]; - this._pathArray[pathArrayLen].push(Math.round(ax)); - this._pathArray[pathArrayLen].push(Math.round(ay)); + this._pathArray[pathArrayLen].push(this._round(ax)); + this._pathArray[pathArrayLen].push(this._round(ay)); pathArrayLen++; this._pathType = "Q"; this._pathArray[pathArrayLen] = ["Q"]; @@ -479,10 +497,10 @@ SVGDrawing.prototype = { by = y + Math.sin(angle) * yRadius; cx = x + Math.cos(angleMid) * (radius / Math.cos(theta / 2)); cy = y + Math.sin(angleMid) * (yRadius / Math.cos(theta / 2)); - this._pathArray[pathArrayLen].push(Math.round(cx)); - this._pathArray[pathArrayLen].push(Math.round(cy)); - this._pathArray[pathArrayLen].push(Math.round(bx)); - this._pathArray[pathArrayLen].push(Math.round(by)); + this._pathArray[pathArrayLen].push(this._round(cx)); + this._pathArray[pathArrayLen].push(this._round(cy)); + this._pathArray[pathArrayLen].push(this._round(bx)); + this._pathArray[pathArrayLen].push(this._round(by)); } } this._currentX = x; @@ -3499,4 +3517,4 @@ Y.SVGGraphic = SVGGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js similarity index 58% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js index 2f1a27f5fb6..2c044aac016 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml-default', function (Y, NAME) { Y.Graphic = Y.VMLGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.VMLPath; Y.Drawing = Y.VMLDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js similarity index 55% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js index 34a67f131dc..f2ab43f11c2 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-vml-default",function(e,t){e.Graphic=e.VMLGraphic,e.Shape=e.VMLShape,e.Circle=e.VMLCircle,e.Rect=e.VMLRect,e.Ellipse=e.VMLEllipse,e.Path=e.VMLPath,e.Drawing=e.VMLDrawing},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics-vml-default",function(e,t){e.Graphic=e.VMLGraphic,e.Shape=e.VMLShape,e.Circle=e.VMLCircle,e.Rect=e.VMLRect,e.Ellipse=e.VMLEllipse,e.Path=e.VMLPath,e.Drawing=e.VMLDrawing},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js similarity index 58% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js index 2f1a27f5fb6..2c044aac016 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml-default', function (Y, NAME) { Y.Graphic = Y.VMLGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.VMLPath; Y.Drawing = Y.VMLDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js index 0460786b988..ddcc8675213 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml', function (Y, NAME) { var IMPLEMENTATION = "vml", @@ -3715,4 +3721,4 @@ Y.VMLGraphic = VMLGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js index ef4295fede0..0921a84f077 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js @@ -1,6 +1,12 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("graphics-vml",function(e,t){function E(){}var n="vml",r="shape",i=/[a-z][^a-z]*/ig,s=/[\-]?[0-9]*[0-9|\.][0-9]*/g,o=e.Lang,u=o.isNumber,a=o.isArray,f=e.DOM,l=e.Selector,c=e.config.doc,h=e.AttributeLite,p,d,v,m,g,y,b,w=e.ClassNameManager.getClassName;E.prototype={_pathSymbolToMethod:{M:"moveTo",m:"relativeMoveTo",L:"lineTo",l:"relativeLineTo",C:"curveTo",c:"relativeCurveTo",Q:"quadraticCurveTo",q:"relativeQuadraticCurveTo",z:"closePath",Z:"closePath"},_coordSpaceMultiplier:100,_round:function(e){return Math.round(e*this._coordSpaceMultiplier)},_addToPath:function(e){this._path=this._path||"",this._movePath&&(this._path+=this._movePath,this._movePath=null),this._path+=e},_currentX:0,_currentY:0,curveTo:function(){return this._curveTo.apply(this,[e.Array(arguments),!1]),this},relativeCurveTo:function(){return this._curveTo.apply(this,[e.Array(arguments),!0]),this},_curveTo:function(e,t){var n,r,i,s,o,u,a,f,l,c,h,p,d,v,m,g,y=t?" v ":" c ",b=t?parseFloat(this._currentX):0,w=t?parseFloat(this._currentY):0;m=e.length-5,g=y;for(v=0;v0&&(g+=", "),g=g+this._round(o)+", "+this._round(u)+", "+this._round(a)+", "+this._round(f)+", "+this._round(i)+", "+this._round(s),o+=b,u+=w,a+=b,f+=w,i+=b,s+=w,c=Math.max(i,Math.max(o,a)),p=Math.max(s,Math.max(u,f)),h=Math.min(i,Math.min(o,a)),d=Math.min(s,Math.min(u,f)),n=Math.abs(c-h),r=Math.abs(p-d),l=[[this._currentX,this._currentY],[o,u],[a,f],[i,s]],this._setCurveBoundingBox(l,n,r),this._currentX=i,this._currentY=s;this._addToPath(g)},quadraticCurveTo:function(){return this._quadraticCurveTo.apply(this,[e.Array(arguments),!1]),this},relativeQuadraticCurveTo:function(){return this._quadraticCurveTo.apply(this,[e.Array(arguments),!0]),this},_quadraticCurveTo:function(e,t){var n,r,i,s,o,u,a,f,l=this._currentX,c=this._currentY,h,p=e.length-3,d=[],v=t?parseFloat(this._currentX):0,m=t?parseFloat(this._currentY):0;for(h=0;h360&&(r=360),this._currentX=e,this._currentY=t,n*=-65535,r*=65536,n=Math.round(n),r=Math.round(r),this.moveTo(e,t),this._addToPath(" ae "+this._round(e)+", "+this._round(t)+", "+this._round(i)+" "+this._round(i)+", "+n+", "+r),this._trackSize(s,s),this},lineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!1]),this},relativeLineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!0]),this},_lineTo:function(e,t){var n=e[0],r,i,s,o,u=t?" r ":" l ",a=t?parseFloat(this._currentX):0,f=t?parseFloat(this._currentY):0;if(typeof n=="string"||typeof n=="number"){i=e.length-1;for(r=0;rthis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top},_left:0,_right:0,_top:0,_bottom:0,_width:0,_height:0},e.VMLDrawing=E,p=function(){this._transforms=[],this.matrix=new e.Matrix,this._normalizedMatrix=new e.Matrix,p.superclass.constructor.apply(this,arguments)},p.NAME="shape",e.extend(p,e.GraphicBase,e.mix({_type:"shape",init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t.createNode(),n&&this._setGraphic(n),r&&t._parsePathData(r),this._updateHandler()},_setGraphic:function(t){var n;t instanceof e.VMLGraphic?this._graphic=t:(t=e.one(t),n=new e.VMLGraphic({render:t}),n._appendShape(this),this._graphic=n,this._appendStrokeAndFill())},_appendStrokeAndFill:function(){this._strokeNode&&this.node.appendChild(this._strokeNode),this._fillNode&&this.node.appendChild(this._fillNode)},createNode:function(){var e,t=this._camelCaseConcat,i=this.get("x"),s=this.get("y"),o=this.get("width"),u=this.get("height"),a,f,l=this.name,h,p=this.get("visible")?"visible":"hidden",d,v,m,g,y,b,E,S,x,T;a=this.get("id"),f=this._type==="path"?"shape":this._type,v=w(r)+" "+w(t(n,r))+" "+w(l)+" "+w(t(n,l))+" "+n+f,m=this._getStrokeProps(),x=this._getFillProps(),h="<"+f+' xmlns="urn:schemas-microsft.com:vml" id="'+a+'" class="'+v+'" style="behavior:url(#default#VML);display:inline-block;position:absolute;left:'+i+"px;top:"+s+"px;width:"+o+"px;height:"+u+"px;visibility:"+p+'"',m&&m.weight&&m.weight>0?(g=m.endcap,y=parseFloat(m.opacity),b=m.joinstyle,E=m.miterlimit,S=m.dashstyle,h+=' stroked="t" strokecolor="'+m.color+'" strokeWeight="'+m.weight+'px"',d='",e=c.createElement(h),this.node=e,this._strokeFlag=!1,this._fillFlag=!1},addClass:function(e){var t=this.node;f.addClass(t,e)},removeClass:function(e){var t=this.node;f.removeClass(t,e)},getXY:function(){var e=this._graphic,t=e.getXY(),n=this.get("x"),r=this.get("y");return[t[0]+n,t[1]+r]},setXY:function(e){var t=this._graphic,n=t.getXY();this.set("x",e[0]-n[0]),this.set("y",e[1]-n[1])},contains:function(t){return t===e.one(this.node)},compareTo:function(e){var t=this.node;return t===e},test:function(e){return l.test(this.node,e)},_getStrokeProps:function(){var e,t=this.get("stroke"),n,r,i="",s,o=0,f,l,c;if(t&&t.weight&&t.weight>0){e={},l=t.linecap||"flat",c=t.linejoin||"round",l!=="round"&&l!=="square"&&(l="flat"),n=parseFloat(t.opacity),r=t.dashstyle||"none",t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=u(n)?n:1,e.stroked=!0,e.color=t.color,e.weight=t.weight,e.endcap=l,e.opacity=t.opacity;if(a(r)){i=[],f=r.length;for(o=0;o0){l=t.linecap||"flat",c=t.linejoin||"round",l!=="round"&&l!=="square"&&(l="flat"),n=parseFloat(t.opacity),r=t.dashstyle||"none",t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=u(n)?n:1,e.stroked=!0,e.strokeColor=t.color,e.strokeWeight=t.weight+"px",this._strokeNode||(this._strokeNode=this._createGraphicNode("stroke"),e.appendChild(this._strokeNode)),this._strokeNode.endcap=l,this._strokeNode.opacity=t.opacity;if(a(r)){i=[],f=r.length;for(o=0;o')));n.filled=o}return n},_fillChangeHandler:function(){if(!this._fillFlag)return;var e=this.node,t=this.get("fill"),n,r,i=!1,s,o;if(t)if(t.type==="radial"||t.type==="linear"){i=!0,o=this._getGradientFill(t);if(this._fillNode)for(s in o)o.hasOwnProperty(s)&&(s==="colors"?this._fillNode.colors.value=o[s]:this._fillNode[s]=o[s]);else{r='",this._fillNode=c.createElement(r),e.appendChild(this._fillNode))):this._fillNode&&(this._fillNode.opacity=1,this._fillNode.type="solid"));e.filled=i,this._fillFlag=!1},_updateFillNode:function(e){this._fillNode||(this._fillNode=this._createGraphicNode("fill"),e.appendChild(this._fillNode))},_getGradientFill:function(e){var t={},n,r,i=e.type,s=this.get("width"),o=this.get("height"),a=u,f,l=e.stops,c=l.length,h,p,d,v,m="",g=e.cx,y=e.cy,b=e.fx,w=e.fy,E=e.r,S,x=e.rotation||0;i==="linear"?(x<=270?x=Math.abs(x-270):x<360?x=270+(360-x):x=270,t.type="gradient",t.angle=x):i==="radial"&&(n=s*E*2,r=o*E*2,b=E*2*(b-.5),w=E*2*(w-.5),b+=g,w+=y,t.focussize=n/s/10+"% "+r/o/10+"%",t.alignshape=!1,t.type="gradientradial",t.focus="100%",t.focusposition=Math.round(b*100)+"% "+Math.round(w*100)+"%");for(d=0;d0?d+1:"",t["opacity"+v]=h+"",m+=", "+S+" "+p;return parseFloat(S)<100&&(m+=", 100% "+p),t.colors=m.substr(2),t},_addTransform:function(t,n){n=e.Array(n),this._transform=o.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var t=this.node,n,r,i,s=this.get("x"),o=this.get("y"),u,a,f=this.matrix,l=this._normalizedMatrix,h=this instanceof e.VMLPath,p,d=this._transforms.length;if(this._transforms&&this._transforms.length>0){i=this.get("transformOrigin"),h&&l.translate(this._left,this._top),u=i[0]-.5,a=i[1]-.5,u=Math.max(-0.5,Math.min(.5,u)),a=Math.max(-0.5,Math.min(.5,a));for(p=0;p'),this.node.appendChild(this._skew)),this._skew.matrix=r,this._skew.on=!0,this._skew.origin=u+", "+a),this._type!=="path"&&(this._transforms=[]),t.style.left=s+this._getSkewOffsetValue(l.dx)+"px",t.style.top=o+this._getSkewOffsetValue(l.dy)+"px"},_getSkewOffsetValue:function(t){var n=e.MatrixUtil.sign(t),r=Math.abs(t);return t=Math.min(r,32767)*n,t},_translateX:0,_translateY:0,_transform:"",translate:function(e,t){this._translateX+=e,this._translateY+=t,this._addTransform("translate",arguments)},translateX:function(e){this._translateX+=e,this._addTransform("translateX",arguments)},translateY:function(e){this._translateY+=e,this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_draw:function(){},_updateHandler:function(){var e=this,t=e.node;e._fillChangeHandler(),e._strokeChangeHandler(),t.style.width=this.get("width")+"px",t.style.height=this.get("height")+"px",this._draw(),e._updateTransform()},_createGraphicNode:function(e){return e=e||this._type,c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;"'+' class="vml'+e+'"'+"/>")},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},set:function(){var e=this;h.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},getBounds:function(){var t=this instanceof e.VMLPath,n=this.get("width"),r=this.get("height"),i=this.get("x"),s=this.get("y");return t&&(i+=this._left,s+=this._top,n=this._right-this._left,r=this._bottom-this._top),this._getContentRect(n,r,i,s)},_getContentRect:function(t,n,r,i){var s=this.get("transformOrigin"),o=s[0]*t,u=s[1]*n,a=this.matrix.getTransformArray(this.get("transform")),f=new e.Matrix,l,c=a.length,h,p,d,v=this instanceof e.VMLPath;v&&f.translate(this._left,this._top),o=isNaN(o)?0:o,u=isNaN(u)?0:u,f.translate(o,u);for(l=0;l0?e*2:0;return t}},height:{setter:function(e){return this.set("radius",e/2),e},getter:function(){var e=this.get("radius"),t=e&&e>0?e*2:0;return t}}}),e.VMLCircle=d,b=function(){b.superclass.constructor.apply(this,arguments)},b.NAME="vmlPieSlice",e.extend(b,e.VMLShape,e.mix({_type:"shape",_draw:function(){var e=this.get("cx"),t=this.get("cy"),n=this.get("startAngle"),r=this.get("arc"),i=this.get("radius");this.clear(),this.drawWedge(e,t,n,r,i),this.end()}},e.VMLDrawing.prototype)),b.ATTRS=e.mix({cx:{value:0},cy:{value:0},startAngle:{value:0},arc:{value:0},radius:{value:0}},e.VMLShape.ATTRS),e.VMLPieSlice=b,y=function(){y.superclass.constructor.apply(this,arguments)},y.NAME="vmlGraphic",y.ATTRS={render:{},id:{valueFn:function(){return e.guid()},setter:function(e){var t=this._node;return t&&t.setAttribute("id",e),e}},shapes:{readOnly:!0,getter:function(){return this._shapes}},contentBounds:{readOnly:!0,getter:function(){return this._contentBounds}},node:{readOnly:!0,getter:function(){return this._node}},width:{setter:function(e){return this._node&&(this._node.style.width=e+"px"),e}},height:{setter:function(e){return this._node&&(this._node.style.height=e+"px"),e}},autoSize:{value:!1},preserveAspectRatio:{value:"xMidYMid"},resizeDown:{resizeDown:!1},x:{getter:function(){return this._x},setter:function(e){return this._x=e,this._node&&(this._node.style.left=e+"px"),e}},y:{getter:function(){return this._y},setter:function(e){return this._y=e,this._node&&(this._node.style.top=e+"px"),e}},autoDraw:{value:!0},visible:{value:!0,setter:function(e){return this._toggleVisible(e),e}}},e.extend(y,e.GraphicBase,{set:function(){var t=this,n=arguments[0],r={autoDraw:!0,autoSize:!0,preserveAspectRatio:!0,resizeDown:!0},i,s=!1;h.prototype.set.apply(t,arguments);if(t._state.autoDraw===!0&&e.Object.size(this._shapes)>0)if(o.isString&&r[n])s=!0;else if(o.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=this.parentNode,n=this.get("x"),r=this.get("y"),i;return t?(i=e.one(t).getXY(),i[0]+=n,i[1]+=r):i=e.DOM._getOffset(this._node),i},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden";this._shapes={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._node=this._createGraphic(),this._node.style.left=this.get("x")+"px",this._node.style.top=this.get("y")+"px",this._node.style.visibility=t,this._node.setAttribute("id",this.get("id")),e&&this.render(e)},render:function(t){var n=e.one(t),r=this.get("width")||parseInt(n.getComputedStyle("width"),10),i=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||c.body,n.appendChild(this._node),this.parentNode=n,this.set("width",r),this.set("height",i),this},destroy:function(){this.clear(),e.one(this._node).remove(!0)},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n._appendStrokeAndFill(),n},_appendShape:function(e){var t=e.node,n=this._frag||this._node;this.get("autoDraw")||this.get("autoSize")==="sizeContentToGraphic"?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){e instanceof p||o.isString(e)&&(e=this._shapes[e]),e&&e instanceof p&&(e._destroy(),this._shapes[e.get("id")]=null,delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw()},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t].destroy();this._shapes={}},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},clear:function(){this.removeAllShapes(),this._removeChildren(this._node)},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._node&&(this._node.style.visibility=r),this -._node&&(this._node.style.visibility=r)},setSize:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.width=e+"px",this._node.style.height=t+"px"},setPosition:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.left=e+"px",this._node.style.top=t+"px"},_createGraphic:function(){var e=c.createElement('');return e},_createGraphicNode:function(e){return c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;zoom:1;"'+"/>")},getShapeById:function(e){return this._shapes[e]},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.VMLCircle,rect:e.VMLRect,path:e.VMLPath,ellipse:e.VMLEllipse,pieslice:e.VMLPieSlice},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e.apply(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=c.createDocumentFragment()),this._frag},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_redraw:function(){var e=this.get("autoSize"),t,n=this.parentNode,r=parseFloat(n.getComputedStyle("width")),i=parseFloat(n.getComputedStyle("height")),s=0,o=0,u=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,a=u.left,f=u.right,l=u.top,c=u.bottom,h=f-a,p=c-l,d,v,m,g,y,b=this.get("visible");this._node.style.visibility="hidden",e?(e==="sizeContentToGraphic"?(t=this.get("preserveAspectRatio"),t==="none"||h/p===r/i?(s=a,o=l,v=h,m=p):h*i/p>r?(d=i/r,v=h,m=h*d,y=r*(p/h)*(m/i),o=this._calculateCoordOrigin(t.slice(5).toLowerCase(),y,m),o=l+o,s=a):(d=r/i,v=p*d,m=p,g=i*(h/p)*(v/r),s=this._calculateCoordOrigin(t.slice(1,4).toLowerCase(),g,v),s+=a,o=l),this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordOrigin=s+", "+o):(v=h,m=p,this._node.style.width=h+"px",this._node.style.height=p+"px",this._state.width=h,this._state.height=p),this._node.coordSize=v+", "+m):(this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordSize=r+", "+i),this._frag&&(this._node.appendChild(this._frag),this._frag=null),b&&(this._node.style.visibility="visible")},_calculateCoordOrigin:function(e,t,n){var r;switch(e){case"min":r=0;break;case"mid":r=(t-n)/2;break;case"max":r=t-n}return r},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this._node;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._node,r;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.VMLGraphic=y},"3.9.1",{requires:["graphics"]}); +._node&&(this._node.style.visibility=r)},setSize:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.width=e+"px",this._node.style.height=t+"px"},setPosition:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.left=e+"px",this._node.style.top=t+"px"},_createGraphic:function(){var e=c.createElement('');return e},_createGraphicNode:function(e){return c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;zoom:1;"'+"/>")},getShapeById:function(e){return this._shapes[e]},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.VMLCircle,rect:e.VMLRect,path:e.VMLPath,ellipse:e.VMLEllipse,pieslice:e.VMLPieSlice},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e.apply(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=c.createDocumentFragment()),this._frag},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_redraw:function(){var e=this.get("autoSize"),t,n=this.parentNode,r=parseFloat(n.getComputedStyle("width")),i=parseFloat(n.getComputedStyle("height")),s=0,o=0,u=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,a=u.left,f=u.right,l=u.top,c=u.bottom,h=f-a,p=c-l,d,v,m,g,y,b=this.get("visible");this._node.style.visibility="hidden",e?(e==="sizeContentToGraphic"?(t=this.get("preserveAspectRatio"),t==="none"||h/p===r/i?(s=a,o=l,v=h,m=p):h*i/p>r?(d=i/r,v=h,m=h*d,y=r*(p/h)*(m/i),o=this._calculateCoordOrigin(t.slice(5).toLowerCase(),y,m),o=l+o,s=a):(d=r/i,v=p*d,m=p,g=i*(h/p)*(v/r),s=this._calculateCoordOrigin(t.slice(1,4).toLowerCase(),g,v),s+=a,o=l),this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordOrigin=s+", "+o):(v=h,m=p,this._node.style.width=h+"px",this._node.style.height=p+"px",this._state.width=h,this._state.height=p),this._node.coordSize=v+", "+m):(this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordSize=r+", "+i),this._frag&&(this._node.appendChild(this._frag),this._frag=null),b&&(this._node.style.visibility="visible")},_calculateCoordOrigin:function(e,t,n){var r;switch(e){case"min":r=0;break;case"mid":r=(t-n)/2;break;case"max":r=t-n}return r},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this._node;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._node,r;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.VMLGraphic=y},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml.js similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml.js index 0460786b988..ddcc8675213 100644 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml', function (Y, NAME) { var IMPLEMENTATION = "vml", @@ -3715,4 +3721,4 @@ Y.VMLGraphic = VMLGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics-debug.js b/lib/yuilib/3.12.0/graphics/graphics-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/graphics/graphics-debug.js rename to lib/yuilib/3.12.0/graphics/graphics-debug.js index 784a3d13edf..d23058f2e95 100644 --- a/lib/yuilib/3.9.1/build/graphics/graphics-debug.js +++ b/lib/yuilib/3.12.0/graphics/graphics-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics', function (Y, NAME) { /** @@ -309,20 +315,6 @@ Y.GraphicBase = GraphicBase; * @class Drawing * @constructor */ - /** - * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. - * - * @method lineTo - * @param {Number} point1 x-coordinate for the end point. - * @param {Number} point2 y-coordinate for the end point. - */ - /** - * Moves the current drawing position to specified x and y coordinates. - * - * @method moveTo - * @param {Number} x x-coordinate for the end point. - * @param {Number} y y-coordinate for the end point. - */ /** * Draws a bezier curve. * @@ -333,6 +325,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cp2y y-coordinate for the second control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a quadratic bezier curve. @@ -342,6 +335,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cpy y-coordinate for the control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a rectangle. @@ -351,6 +345,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} y y-coordinate * @param {Number} w width * @param {Number} h height + * @chainable */ /** * Draws a rectangle with rounded corners. @@ -362,16 +357,102 @@ Y.GraphicBase = GraphicBase; * @param {Number} h height * @param {Number} ew width of the ellipse used to draw the rounded corners * @param {Number} eh height of the ellipse used to draw the rounded corners + * @chainable + */ + /** + * Draws a circle. + * + * @method drawCircle + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} r radius + * @chainable + * @protected + */ + /** + * Draws an ellipse. + * + * @method drawEllipse + * @param {Number} x x-coordinate + * @param {Number} y y-coordinate + * @param {Number} w width + * @param {Number} h height + * @chainable + * @protected + */ + /** + * Draws a diamond. + * + * @method drawDiamond + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} width width + * @param {Number} height height + * @chainable + * @protected + */ + /** + * Draws a wedge. + * + * @method drawWedge + * @param {Number} x x-coordinate of the wedge's center point + * @param {Number} y y-coordinate of the wedge's center point + * @param {Number} startAngle starting angle in degrees + * @param {Number} arc sweep of the wedge. Negative values draw clockwise. + * @param {Number} radius radius of wedge. If [optional] yRadius is defined, then radius is the x radius. + * @param {Number} yRadius [optional] y radius for wedge. + * @chainable + * @private + */ + /** + * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. + * + * @method lineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Draws a line segment using the current line style from the current drawing position to the relative x and y coordinates. + * + * @method relativeLineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position to specified x and y coordinates. + * + * @method moveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position relative to specified x and y coordinates. + * + * @method relativeMoveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Completes a drawing operation. * * @method end + * @chainable */ /** * Clears the path. * * @method clear + * @chainable + */ + /** + * Ends a fill and stroke + * + * @method closePath + * @chainable */ /** *

    Base class for creating shapes.

    @@ -1193,4 +1274,4 @@ Y.GraphicBase = GraphicBase; */ -}, '3.9.1', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics-min.js b/lib/yuilib/3.12.0/graphics/graphics-min.js similarity index 88% rename from lib/yuilib/3.9.1/build/graphics/graphics-min.js rename to lib/yuilib/3.12.0/graphics/graphics-min.js index 4b23d14bb3e..c50581c73f6 100644 --- a/lib/yuilib/3.9.1/build/graphics/graphics-min.js +++ b/lib/yuilib/3.12.0/graphics/graphics-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics",function(e,t){var n="setter",r=e.Plugin.Host,i="value",s="valueFn",o="readOnly",u=e.Lang,a="string",f="writeOnce",l,c;c=function(){var t=this;t._ATTR_E_FACADE={},e.EventTarget.call(this,{emitFacade:!0}),t._state={},t.prototype=e.mix(c.prototype,t.prototype)},c.prototype={addAttrs:function(e){var t=this,r=this.constructor.ATTRS,a,l,c,h=t._state;for(l in r)r.hasOwnProperty(l)&&(a=r[l],a.hasOwnProperty(i)?h[l]=a.value:a.hasOwnProperty(s)&&(c=a.valueFn,u.isString(c)?h[l]=t[c].apply(t):h[l]=c.apply(t)));t._state=h;for(l in r)if(r.hasOwnProperty(l)){a=r[l];if(a.hasOwnProperty(o)&&a.readOnly)continue;a.hasOwnProperty(f)&&a.writeOnce&&(a.readOnly=!0),e&&e.hasOwnProperty(l)&&(a.hasOwnProperty(n)?t._state[l]=a.setter.apply(t,[e[l]]):t._state[l]=e[l])}},get:function(e){var t=this,n,r=t.constructor.ATTRS;if(r&&r[e])return n=r[e].getter,n?typeof n===a?t[n].apply(t):r[e].getter.apply(t):t._state[e];return null},set:function(){var e=arguments[0],t;if(u.isObject(e))for(t in e)e.hasOwnProperty(t)&&this._set(t,e[t]);else this._set.apply(this,arguments)},_set:function(e,t){var n=this,r,i,s=n.constructor.ATTRS;s&&s.hasOwnProperty(e)&&(r=s[e].setter,r&&(i=[t],typeof r===a?t=n[r].apply(n,i):t=s[e].setter.apply(n,i)),n._state[e]=t)}},e.mix(c,e.EventTarget,!1,null,1),e.AttributeLite=c,l=function(t){var n=this,r=e.Plugin&&e.Plugin.Host;n._initPlugins&&r&&r.call(n),n.name=n.constructor.NAME,n._eventPrefix=n.constructor.EVENT_PREFIX||n.constructor.NAME,c.call(n),n.addAttrs(t),n.init.apply(this,arguments),n._initPlugins&&n._initPlugins(t),n.initialized=!0},l.NAME="baseGraphic",l.prototype={init:function(){this.publish("init",{fireOnce:!0}),this.initializer.apply(this,arguments),this.fire("init",{cfg:arguments[0]})},_camelCaseConcat:function(e,t){return e+t.charAt(0).toUpperCase()+t.slice(1)}},e.mix(l,e.AttributeLite,!1,null,1),e.mix(l,r,!1,null,1),l.prototype.constructor=l,l.plug=r.plug,l.unplug=r.unplug,e.GraphicBase=l},"3.9.1",{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics",function(e,t){var n="setter",r=e.Plugin.Host,i="value",s="valueFn",o="readOnly",u=e.Lang,a="string",f="writeOnce",l,c;c=function(){var t=this;t._ATTR_E_FACADE={},e.EventTarget.call(this,{emitFacade:!0}),t._state={},t.prototype=e.mix(c.prototype,t.prototype)},c.prototype={addAttrs:function(e){var t=this,r=this.constructor.ATTRS,a,l,c,h=t._state;for(l in r)r.hasOwnProperty(l)&&(a=r[l],a.hasOwnProperty(i)?h[l]=a.value:a.hasOwnProperty(s)&&(c=a.valueFn,u.isString(c)?h[l]=t[c].apply(t):h[l]=c.apply(t)));t._state=h;for(l in r)if(r.hasOwnProperty(l)){a=r[l];if(a.hasOwnProperty(o)&&a.readOnly)continue;a.hasOwnProperty(f)&&a.writeOnce&&(a.readOnly=!0),e&&e.hasOwnProperty(l)&&(a.hasOwnProperty(n)?t._state[l]=a.setter.apply(t,[e[l]]):t._state[l]=e[l])}},get:function(e){var t=this,n,r=t.constructor.ATTRS;if(r&&r[e])return n=r[e].getter,n?typeof n===a?t[n].apply(t):r[e].getter.apply(t):t._state[e];return null},set:function(){var e=arguments[0],t;if(u.isObject(e))for(t in e)e.hasOwnProperty(t)&&this._set(t,e[t]);else this._set.apply(this,arguments)},_set:function(e,t){var n=this,r,i,s=n.constructor.ATTRS;s&&s.hasOwnProperty(e)&&(r=s[e].setter,r&&(i=[t],typeof r===a?t=n[r].apply(n,i):t=s[e].setter.apply(n,i)),n._state[e]=t)}},e.mix(c,e.EventTarget,!1,null,1),e.AttributeLite=c,l=function(t){var n=this,r=e.Plugin&&e.Plugin.Host;n._initPlugins&&r&&r.call(n),n.name=n.constructor.NAME,n._eventPrefix=n.constructor.EVENT_PREFIX||n.constructor.NAME,c.call(n),n.addAttrs(t),n.init.apply(this,arguments),n._initPlugins&&n._initPlugins(t),n.initialized=!0},l.NAME="baseGraphic",l.prototype={init:function(){this.publish("init",{fireOnce:!0}),this.initializer.apply(this,arguments),this.fire("init",{cfg:arguments[0]})},_camelCaseConcat:function(e,t){return e+t.charAt(0).toUpperCase()+t.slice(1)}},e.mix(l,e.AttributeLite,!1,null,1),e.mix(l,r,!1,null,1),l.prototype.constructor=l,l.plug=r.plug,l.unplug=r.unplug,e.GraphicBase=l},"3.12.0",{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics.js b/lib/yuilib/3.12.0/graphics/graphics.js similarity index 94% rename from lib/yuilib/3.9.1/build/graphics/graphics.js rename to lib/yuilib/3.12.0/graphics/graphics.js index 784a3d13edf..d23058f2e95 100644 --- a/lib/yuilib/3.9.1/build/graphics/graphics.js +++ b/lib/yuilib/3.12.0/graphics/graphics.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics', function (Y, NAME) { /** @@ -309,20 +315,6 @@ Y.GraphicBase = GraphicBase; * @class Drawing * @constructor */ - /** - * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. - * - * @method lineTo - * @param {Number} point1 x-coordinate for the end point. - * @param {Number} point2 y-coordinate for the end point. - */ - /** - * Moves the current drawing position to specified x and y coordinates. - * - * @method moveTo - * @param {Number} x x-coordinate for the end point. - * @param {Number} y y-coordinate for the end point. - */ /** * Draws a bezier curve. * @@ -333,6 +325,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cp2y y-coordinate for the second control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a quadratic bezier curve. @@ -342,6 +335,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cpy y-coordinate for the control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a rectangle. @@ -351,6 +345,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} y y-coordinate * @param {Number} w width * @param {Number} h height + * @chainable */ /** * Draws a rectangle with rounded corners. @@ -362,16 +357,102 @@ Y.GraphicBase = GraphicBase; * @param {Number} h height * @param {Number} ew width of the ellipse used to draw the rounded corners * @param {Number} eh height of the ellipse used to draw the rounded corners + * @chainable + */ + /** + * Draws a circle. + * + * @method drawCircle + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} r radius + * @chainable + * @protected + */ + /** + * Draws an ellipse. + * + * @method drawEllipse + * @param {Number} x x-coordinate + * @param {Number} y y-coordinate + * @param {Number} w width + * @param {Number} h height + * @chainable + * @protected + */ + /** + * Draws a diamond. + * + * @method drawDiamond + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} width width + * @param {Number} height height + * @chainable + * @protected + */ + /** + * Draws a wedge. + * + * @method drawWedge + * @param {Number} x x-coordinate of the wedge's center point + * @param {Number} y y-coordinate of the wedge's center point + * @param {Number} startAngle starting angle in degrees + * @param {Number} arc sweep of the wedge. Negative values draw clockwise. + * @param {Number} radius radius of wedge. If [optional] yRadius is defined, then radius is the x radius. + * @param {Number} yRadius [optional] y radius for wedge. + * @chainable + * @private + */ + /** + * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. + * + * @method lineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Draws a line segment using the current line style from the current drawing position to the relative x and y coordinates. + * + * @method relativeLineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position to specified x and y coordinates. + * + * @method moveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position relative to specified x and y coordinates. + * + * @method relativeMoveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Completes a drawing operation. * * @method end + * @chainable */ /** * Clears the path. * * @method clear + * @chainable + */ + /** + * Ends a fill and stroke + * + * @method closePath + * @chainable */ /** *

    Base class for creating shapes.

    @@ -1193,4 +1274,4 @@ Y.GraphicBase = GraphicBase; */ -}, '3.9.1', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js similarity index 80% rename from lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js rename to lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js index 92ee57d6271..94b1e204fb9 100644 --- a/lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js +++ b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('handlebars-base', function (Y, NAME) { /*! @@ -39,38 +45,49 @@ This is a YUI port of the original Handlebars project, which can be found at var Handlebars = Y.namespace('Handlebars'); /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - -Handlebars.VERSION = "1.0.0-rc.3"; -Handlebars.COMPILER_REVISION = 2; +Handlebars.VERSION = "1.0.0"; +Handlebars.COMPILER_REVISION = 4; Handlebars.REVISION_CHANGES = { 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it - 2: '>= 1.0.0-rc.3' + 2: '== 1.0.0-rc.3', + 3: '== 1.0.0-rc.4', + 4: '>= 1.0.0' }; Handlebars.helpers = {}; Handlebars.partials = {}; +var toString = Object.prototype.toString, + functionType = '[object Function]', + objectType = '[object Object]'; + Handlebars.registerHelper = function(name, fn, inverse) { - if(inverse) { fn.not = inverse; } - this.helpers[name] = fn; + if (toString.call(name) === objectType) { + if (inverse || fn) { throw new Handlebars.Exception('Arg not supported with multiple helpers'); } + Handlebars.Utils.extend(this.helpers, name); + } else { + if (inverse) { fn.not = inverse; } + this.helpers[name] = fn; + } }; Handlebars.registerPartial = function(name, str) { - this.partials[name] = str; + if (toString.call(name) === objectType) { + Handlebars.Utils.extend(this.partials, name); + } else { + this.partials[name] = str; + } }; Handlebars.registerHelper('helperMissing', function(arg) { if(arguments.length === 2) { return undefined; } else { - throw new Error("Could not find property '" + arg + "'"); + throw new Error("Missing helper: '" + arg + "'"); } }); -var toString = Object.prototype.toString, functionType = "[object Function]"; - Handlebars.registerHelper('blockHelperMissing', function(context, options) { var inverse = options.inverse || function() {}, fn = options.fn; @@ -124,6 +141,9 @@ Handlebars.registerHelper('each', function(context, options) { var fn = options.fn, inverse = options.inverse; var i = 0, ret = "", data; + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + if (options.data) { data = Handlebars.createFrame(options.data); } @@ -152,35 +172,34 @@ Handlebars.registerHelper('each', function(context, options) { return ret; }); -Handlebars.registerHelper('if', function(context, options) { - var type = toString.call(context); - if(type === functionType) { context = context.call(this); } +Handlebars.registerHelper('if', function(conditional, options) { + var type = toString.call(conditional); + if(type === functionType) { conditional = conditional.call(this); } - if(!context || Handlebars.Utils.isEmpty(context)) { + if(!conditional || Handlebars.Utils.isEmpty(conditional)) { return options.inverse(this); } else { return options.fn(this); } }); -Handlebars.registerHelper('unless', function(context, options) { - return Handlebars.helpers['if'].call(this, context, {fn: options.inverse, inverse: options.fn}); +Handlebars.registerHelper('unless', function(conditional, options) { + return Handlebars.helpers['if'].call(this, conditional, {fn: options.inverse, inverse: options.fn}); }); Handlebars.registerHelper('with', function(context, options) { - return options.fn(context); + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + + if (!Handlebars.Utils.isEmpty(context)) return options.fn(context); }); Handlebars.registerHelper('log', function(context, options) { var level = options.data && options.data.level != null ? parseInt(options.data.level, 10) : 1; Handlebars.log(level, context); }); - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack']; Handlebars.Exception = function(message) { @@ -218,6 +237,14 @@ var escapeChar = function(chr) { }; Handlebars.Utils = { + extend: function(obj, value) { + for(var key in value) { + if(value.hasOwnProperty(key)) { + obj[key] = value[key]; + } + } + }, + escapeExpression: function(string) { // don't escape SafeStrings, since they're already safe if (string instanceof Handlebars.SafeString) { @@ -226,6 +253,11 @@ Handlebars.Utils = { return ""; } + // Force a string conversion as this will be done by the append regardless and + // the regex test will do this transparently behind the scenes, causing issues if + // an object's to string has escaped characters in it. + string = string.toString(); + if(!possible.test(string)) { return string; } return string.replace(badChars, escapeChar); }, @@ -240,12 +272,8 @@ Handlebars.Utils = { } } }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.VM = { template: function(templateSpec) { // Just add water @@ -256,13 +284,21 @@ Handlebars.VM = { program: function(i, fn, data) { var programWrapper = this.programs[i]; if(data) { - return Handlebars.VM.program(fn, data); - } else if(programWrapper) { - return programWrapper; - } else { - programWrapper = this.programs[i] = Handlebars.VM.program(fn); - return programWrapper; + programWrapper = Handlebars.VM.program(i, fn, data); + } else if (!programWrapper) { + programWrapper = this.programs[i] = Handlebars.VM.program(i, fn); } + return programWrapper; + }, + merge: function(param, common) { + var ret = param || common; + + if (param && common) { + ret = {}; + Handlebars.Utils.extend(ret, common); + Handlebars.Utils.extend(ret, param); + } + return ret; }, programWithDepth: Handlebars.VM.programWithDepth, noop: Handlebars.VM.noop, @@ -294,21 +330,27 @@ Handlebars.VM = { }; }, - programWithDepth: function(fn, data, $depth) { - var args = Array.prototype.slice.call(arguments, 2); + programWithDepth: function(i, fn, data /*, $depth */) { + var args = Array.prototype.slice.call(arguments, 3); - return function(context, options) { + var program = function(context, options) { options = options || {}; return fn.apply(this, [context, options.data || data].concat(args)); }; + program.program = i; + program.depth = args.length; + return program; }, - program: function(fn, data) { - return function(context, options) { + program: function(i, fn, data) { + var program = function(context, options) { options = options || {}; return fn(context, options.data || data); }; + program.program = i; + program.depth = 0; + return program; }, noop: function() { return ""; }, invokePartial: function(partial, name, context, helpers, partials, data) { @@ -328,8 +370,6 @@ Handlebars.VM = { }; Handlebars.template = Handlebars.VM.template; - -// END(BROWSER) // This file contains YUI-specific wrapper code and overrides for the // handlebars-base module. @@ -420,4 +460,4 @@ Handlebars.revive = Handlebars.template; Y.namespace('Template').Handlebars = Handlebars; -}, '3.9.1', {"requires": []}); +}, '3.12.0', {"requires": []}); diff --git a/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js new file mode 100644 index 00000000000..5fde677dc7c --- /dev/null +++ b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js @@ -0,0 +1,13 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("handlebars-base",function(e,t){ +/*! +Handlebars.js - Copyright (C) 2011 Yehuda Katz +https://raw.github.com/wycats/handlebars.js/master/LICENSE +*/ +;var n=e.namespace("Handlebars");n.VERSION="1.0.0",n.COMPILER_REVISION=4,n.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:">= 1.0.0"},n.helpers={},n.partials={};var r=Object.prototype.toString,i="[object Function]",s="[object Object]";n.registerHelper=function(e,t,i){if(r.call(e)===s){if(i||t)throw new n.Exception("Arg not supported with multiple helpers");n.Utils.extend(this.helpers,e)}else i&&(t.not=i),this.helpers[e]=t},n.registerPartial=function(e,t){r.call(e)===s?n.Utils.extend(this.partials,e):this.partials[e]=t},n.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Missing helper: '"+e+"'")}),n.registerHelper("blockHelperMissing",function(e,t){var s=t.inverse||function(){},o=t.fn,u=r.call(e);return u===i&&(e=e.call(this)),e===!0?o(this):e===!1||e==null?s(this):u==="[object Array]"?e.length>0?n.helpers.each(e,t):s(this):o(e)}),n.K=function(){},n.createFrame=Object.create||function(e){n.K.prototype=e;var t=new n.K;return n.K.prototype=null,t},n.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,methodMap:{0:"debug",1:"info",2:"warn",3:"error"},log:function(e,t){if(n.logger.level<=e){var r=n.logger.methodMap[e];typeof console!="undefined"&&console[r]&&console[r].call(console,t)}}},n.log=function(e,t){n.logger.log(e,t)},n.registerHelper("each",function(e,t){var s=t.fn,o=t.inverse,u=0,a="",f,l=r.call(e);l===i&&(e=e.call(this)),t.data&&(f=n.createFrame(t.data));if(e&&typeof e=="object")if(e instanceof Array)for(var c=e.length;u":">",'"':""","'":"'","`":"`"},a=/[&<>"'`]/g,f=/[&<>"'`]/,l=function(e){return u[e]||"&"};n.Utils={extend:function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},escapeExpression:function(e){return e instanceof n.SafeString?e.toString():e==null||e===!1?"":(e=e.toString(),f.test(e)?e.replace(a,l):e)},isEmpty:function(e){return!e&&e!==0?!0:r.call(e)==="[object Array]"&&e.length===0?!0:!1}},n.VM={template:function(e){var t={escapeExpression:n.Utils.escapeExpression,invokePartial:n.VM.invokePartial,programs:[],program:function(e,t,r){var i=this.programs[e];return r?i=n.VM.program(e,t,r):i||(i=this.programs[e]=n.VM.program(e,t)),i},merge:function(e,t){var r=e||t;return e&&t&&(r={},n.Utils.extend(r,t),n.Utils.extend(r,e)),r},programWithDepth:n.VM.programWithDepth,noop:n.VM.noop,compilerInfo:null};return function(r,i){i=i||{};var s=e.call(t,n,r,i.helpers,i.partials,i.data),o=t.compilerInfo||[],u=o[0]||1,a=n.COMPILER_REVISION;if(u!==a){if(u= 1.0.0-rc.3' + 2: '== 1.0.0-rc.3', + 3: '== 1.0.0-rc.4', + 4: '>= 1.0.0' }; Handlebars.helpers = {}; Handlebars.partials = {}; +var toString = Object.prototype.toString, + functionType = '[object Function]', + objectType = '[object Object]'; + Handlebars.registerHelper = function(name, fn, inverse) { - if(inverse) { fn.not = inverse; } - this.helpers[name] = fn; + if (toString.call(name) === objectType) { + if (inverse || fn) { throw new Handlebars.Exception('Arg not supported with multiple helpers'); } + Handlebars.Utils.extend(this.helpers, name); + } else { + if (inverse) { fn.not = inverse; } + this.helpers[name] = fn; + } }; Handlebars.registerPartial = function(name, str) { - this.partials[name] = str; + if (toString.call(name) === objectType) { + Handlebars.Utils.extend(this.partials, name); + } else { + this.partials[name] = str; + } }; Handlebars.registerHelper('helperMissing', function(arg) { if(arguments.length === 2) { return undefined; } else { - throw new Error("Could not find property '" + arg + "'"); + throw new Error("Missing helper: '" + arg + "'"); } }); -var toString = Object.prototype.toString, functionType = "[object Function]"; - Handlebars.registerHelper('blockHelperMissing', function(context, options) { var inverse = options.inverse || function() {}, fn = options.fn; @@ -124,6 +141,9 @@ Handlebars.registerHelper('each', function(context, options) { var fn = options.fn, inverse = options.inverse; var i = 0, ret = "", data; + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + if (options.data) { data = Handlebars.createFrame(options.data); } @@ -152,35 +172,34 @@ Handlebars.registerHelper('each', function(context, options) { return ret; }); -Handlebars.registerHelper('if', function(context, options) { - var type = toString.call(context); - if(type === functionType) { context = context.call(this); } +Handlebars.registerHelper('if', function(conditional, options) { + var type = toString.call(conditional); + if(type === functionType) { conditional = conditional.call(this); } - if(!context || Handlebars.Utils.isEmpty(context)) { + if(!conditional || Handlebars.Utils.isEmpty(conditional)) { return options.inverse(this); } else { return options.fn(this); } }); -Handlebars.registerHelper('unless', function(context, options) { - return Handlebars.helpers['if'].call(this, context, {fn: options.inverse, inverse: options.fn}); +Handlebars.registerHelper('unless', function(conditional, options) { + return Handlebars.helpers['if'].call(this, conditional, {fn: options.inverse, inverse: options.fn}); }); Handlebars.registerHelper('with', function(context, options) { - return options.fn(context); + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + + if (!Handlebars.Utils.isEmpty(context)) return options.fn(context); }); Handlebars.registerHelper('log', function(context, options) { var level = options.data && options.data.level != null ? parseInt(options.data.level, 10) : 1; Handlebars.log(level, context); }); - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack']; Handlebars.Exception = function(message) { @@ -218,6 +237,14 @@ var escapeChar = function(chr) { }; Handlebars.Utils = { + extend: function(obj, value) { + for(var key in value) { + if(value.hasOwnProperty(key)) { + obj[key] = value[key]; + } + } + }, + escapeExpression: function(string) { // don't escape SafeStrings, since they're already safe if (string instanceof Handlebars.SafeString) { @@ -226,6 +253,11 @@ Handlebars.Utils = { return ""; } + // Force a string conversion as this will be done by the append regardless and + // the regex test will do this transparently behind the scenes, causing issues if + // an object's to string has escaped characters in it. + string = string.toString(); + if(!possible.test(string)) { return string; } return string.replace(badChars, escapeChar); }, @@ -240,12 +272,8 @@ Handlebars.Utils = { } } }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.VM = { template: function(templateSpec) { // Just add water @@ -256,13 +284,21 @@ Handlebars.VM = { program: function(i, fn, data) { var programWrapper = this.programs[i]; if(data) { - return Handlebars.VM.program(fn, data); - } else if(programWrapper) { - return programWrapper; - } else { - programWrapper = this.programs[i] = Handlebars.VM.program(fn); - return programWrapper; + programWrapper = Handlebars.VM.program(i, fn, data); + } else if (!programWrapper) { + programWrapper = this.programs[i] = Handlebars.VM.program(i, fn); } + return programWrapper; + }, + merge: function(param, common) { + var ret = param || common; + + if (param && common) { + ret = {}; + Handlebars.Utils.extend(ret, common); + Handlebars.Utils.extend(ret, param); + } + return ret; }, programWithDepth: Handlebars.VM.programWithDepth, noop: Handlebars.VM.noop, @@ -294,21 +330,27 @@ Handlebars.VM = { }; }, - programWithDepth: function(fn, data, $depth) { - var args = Array.prototype.slice.call(arguments, 2); + programWithDepth: function(i, fn, data /*, $depth */) { + var args = Array.prototype.slice.call(arguments, 3); - return function(context, options) { + var program = function(context, options) { options = options || {}; return fn.apply(this, [context, options.data || data].concat(args)); }; + program.program = i; + program.depth = args.length; + return program; }, - program: function(fn, data) { - return function(context, options) { + program: function(i, fn, data) { + var program = function(context, options) { options = options || {}; return fn(context, options.data || data); }; + program.program = i; + program.depth = 0; + return program; }, noop: function() { return ""; }, invokePartial: function(partial, name, context, helpers, partials, data) { @@ -328,8 +370,6 @@ Handlebars.VM = { }; Handlebars.template = Handlebars.VM.template; - -// END(BROWSER) // This file contains YUI-specific wrapper code and overrides for the // handlebars-base module. @@ -420,4 +460,4 @@ Handlebars.revive = Handlebars.template; Y.namespace('Template').Handlebars = Handlebars; -}, '3.9.1', {"requires": []}); +}, '3.12.0', {"requires": []}); diff --git a/lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js b/lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js similarity index 85% rename from lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js rename to lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js index 1c8f96cbb63..d0a9259092f 100644 --- a/lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js +++ b/lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('handlebars-compiler', function (Y, NAME) { /*! @@ -14,14 +20,13 @@ https://raw.github.com/wycats/handlebars.js/master/LICENSE var Handlebars = Y.Handlebars; /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) /* Jison generated parser */ var handlebars = (function(){ var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"root":3,"program":4,"EOF":5,"simpleInverse":6,"statements":7,"statement":8,"openInverse":9,"closeBlock":10,"openBlock":11,"mustache":12,"partial":13,"CONTENT":14,"COMMENT":15,"OPEN_BLOCK":16,"inMustache":17,"CLOSE":18,"OPEN_INVERSE":19,"OPEN_ENDBLOCK":20,"path":21,"OPEN":22,"OPEN_UNESCAPED":23,"OPEN_PARTIAL":24,"partialName":25,"params":26,"hash":27,"DATA":28,"param":29,"STRING":30,"INTEGER":31,"BOOLEAN":32,"hashSegments":33,"hashSegment":34,"ID":35,"EQUALS":36,"PARTIAL_NAME":37,"pathSegments":38,"SEP":39,"$accept":0,"$end":1}, -terminals_: {2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"OPEN_PARTIAL",28:"DATA",30:"STRING",31:"INTEGER",32:"BOOLEAN",35:"ID",36:"EQUALS",37:"PARTIAL_NAME",39:"SEP"}, -productions_: [0,[3,2],[4,2],[4,3],[4,2],[4,1],[4,1],[4,0],[7,1],[7,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,3],[13,4],[6,2],[17,3],[17,2],[17,2],[17,1],[17,1],[26,2],[26,1],[29,1],[29,1],[29,1],[29,1],[29,1],[27,1],[33,2],[33,1],[34,3],[34,3],[34,3],[34,3],[34,3],[25,1],[21,1],[38,3],[38,1]], +symbols_: {"error":2,"root":3,"program":4,"EOF":5,"simpleInverse":6,"statements":7,"statement":8,"openInverse":9,"closeBlock":10,"openBlock":11,"mustache":12,"partial":13,"CONTENT":14,"COMMENT":15,"OPEN_BLOCK":16,"inMustache":17,"CLOSE":18,"OPEN_INVERSE":19,"OPEN_ENDBLOCK":20,"path":21,"OPEN":22,"OPEN_UNESCAPED":23,"CLOSE_UNESCAPED":24,"OPEN_PARTIAL":25,"partialName":26,"params":27,"hash":28,"dataName":29,"param":30,"STRING":31,"INTEGER":32,"BOOLEAN":33,"hashSegments":34,"hashSegment":35,"ID":36,"EQUALS":37,"DATA":38,"pathSegments":39,"SEP":40,"$accept":0,"$end":1}, +terminals_: {2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"CLOSE_UNESCAPED",25:"OPEN_PARTIAL",31:"STRING",32:"INTEGER",33:"BOOLEAN",36:"ID",37:"EQUALS",38:"DATA",40:"SEP"}, +productions_: [0,[3,2],[4,2],[4,3],[4,2],[4,1],[4,1],[4,0],[7,1],[7,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,3],[13,4],[6,2],[17,3],[17,2],[17,2],[17,1],[17,1],[27,2],[27,1],[30,1],[30,1],[30,1],[30,1],[30,1],[28,1],[34,2],[34,1],[35,3],[35,3],[35,3],[35,3],[35,3],[26,1],[26,1],[26,1],[29,2],[21,1],[39,3],[39,1]], performAction: function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$) { var $0 = $$.length - 1; @@ -62,7 +67,10 @@ case 17: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1]); break; case 18: this.$ = $$[$0-1]; break; -case 19: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1]); +case 19: + // Parsing out the '&' escape token at this level saves ~500 bytes after min due to the removal of one parser node. + this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1], $$[$0-2][2] === '&'); + break; case 20: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1], true); break; @@ -80,7 +88,7 @@ case 26: this.$ = [[$$[$0-1]], $$[$0]]; break; case 27: this.$ = [[$$[$0]], null]; break; -case 28: this.$ = [[new yy.DataNode($$[$0])], null]; +case 28: this.$ = [[$$[$0]], null]; break; case 29: $$[$0-1].push($$[$0]); this.$ = $$[$0-1]; break; @@ -94,7 +102,7 @@ case 33: this.$ = new yy.IntegerNode($$[$0]); break; case 34: this.$ = new yy.BooleanNode($$[$0]); break; -case 35: this.$ = new yy.DataNode($$[$0]); +case 35: this.$ = $$[$0]; break; case 36: this.$ = new yy.HashNode($$[$0]); break; @@ -110,20 +118,26 @@ case 41: this.$ = [$$[$0-2], new yy.IntegerNode($$[$0])]; break; case 42: this.$ = [$$[$0-2], new yy.BooleanNode($$[$0])]; break; -case 43: this.$ = [$$[$0-2], new yy.DataNode($$[$0])]; +case 43: this.$ = [$$[$0-2], $$[$0]]; break; case 44: this.$ = new yy.PartialNameNode($$[$0]); break; -case 45: this.$ = new yy.IdNode($$[$0]); +case 45: this.$ = new yy.PartialNameNode(new yy.StringNode($$[$0])); break; -case 46: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; +case 46: this.$ = new yy.PartialNameNode(new yy.IntegerNode($$[$0])); break; -case 47: this.$ = [$$[$0]]; +case 47: this.$ = new yy.DataNode($$[$0]); +break; +case 48: this.$ = new yy.IdNode($$[$0]); +break; +case 49: $$[$0-2].push({part: $$[$0], separator: $$[$0-1]}); this.$ = $$[$0-2]; +break; +case 50: this.$ = [{part: $$[$0]}]; break; } }, -table: [{3:1,4:2,5:[2,7],6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],22:[1,14],23:[1,15],24:[1,16]},{1:[3]},{5:[1,17]},{5:[2,6],7:18,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,6],22:[1,14],23:[1,15],24:[1,16]},{5:[2,5],6:20,8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,5],22:[1,14],23:[1,15],24:[1,16]},{17:23,18:[1,22],21:24,28:[1,25],35:[1,27],38:26},{5:[2,8],14:[2,8],15:[2,8],16:[2,8],19:[2,8],20:[2,8],22:[2,8],23:[2,8],24:[2,8]},{4:28,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],24:[1,16]},{4:29,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],24:[1,16]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],24:[2,12]},{5:[2,13],14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],24:[2,13]},{5:[2,14],14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],24:[2,14]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],24:[2,15]},{17:30,21:24,28:[1,25],35:[1,27],38:26},{17:31,21:24,28:[1,25],35:[1,27],38:26},{17:32,21:24,28:[1,25],35:[1,27],38:26},{25:33,37:[1,34]},{1:[2,1]},{5:[2,2],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,2],22:[1,14],23:[1,15],24:[1,16]},{17:23,21:24,28:[1,25],35:[1,27],38:26},{5:[2,4],7:35,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,4],22:[1,14],23:[1,15],24:[1,16]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],24:[2,9]},{5:[2,23],14:[2,23],15:[2,23],16:[2,23],19:[2,23],20:[2,23],22:[2,23],23:[2,23],24:[2,23]},{18:[1,36]},{18:[2,27],21:41,26:37,27:38,28:[1,45],29:39,30:[1,42],31:[1,43],32:[1,44],33:40,34:46,35:[1,47],38:26},{18:[2,28]},{18:[2,45],28:[2,45],30:[2,45],31:[2,45],32:[2,45],35:[2,45],39:[1,48]},{18:[2,47],28:[2,47],30:[2,47],31:[2,47],32:[2,47],35:[2,47],39:[2,47]},{10:49,20:[1,50]},{10:51,20:[1,50]},{18:[1,52]},{18:[1,53]},{18:[1,54]},{18:[1,55],21:56,35:[1,27],38:26},{18:[2,44],35:[2,44]},{5:[2,3],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,3],22:[1,14],23:[1,15],24:[1,16]},{14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],24:[2,17]},{18:[2,25],21:41,27:57,28:[1,45],29:58,30:[1,42],31:[1,43],32:[1,44],33:40,34:46,35:[1,47],38:26},{18:[2,26]},{18:[2,30],28:[2,30],30:[2,30],31:[2,30],32:[2,30],35:[2,30]},{18:[2,36],34:59,35:[1,60]},{18:[2,31],28:[2,31],30:[2,31],31:[2,31],32:[2,31],35:[2,31]},{18:[2,32],28:[2,32],30:[2,32],31:[2,32],32:[2,32],35:[2,32]},{18:[2,33],28:[2,33],30:[2,33],31:[2,33],32:[2,33],35:[2,33]},{18:[2,34],28:[2,34],30:[2,34],31:[2,34],32:[2,34],35:[2,34]},{18:[2,35],28:[2,35],30:[2,35],31:[2,35],32:[2,35],35:[2,35]},{18:[2,38],35:[2,38]},{18:[2,47],28:[2,47],30:[2,47],31:[2,47],32:[2,47],35:[2,47],36:[1,61],39:[2,47]},{35:[1,62]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],24:[2,10]},{21:63,35:[1,27],38:26},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],24:[2,11]},{14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],24:[2,16]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],24:[2,19]},{5:[2,20],14:[2,20],15:[2,20],16:[2,20],19:[2,20],20:[2,20],22:[2,20],23:[2,20],24:[2,20]},{5:[2,21],14:[2,21],15:[2,21],16:[2,21],19:[2,21],20:[2,21],22:[2,21],23:[2,21],24:[2,21]},{18:[1,64]},{18:[2,24]},{18:[2,29],28:[2,29],30:[2,29],31:[2,29],32:[2,29],35:[2,29]},{18:[2,37],35:[2,37]},{36:[1,61]},{21:65,28:[1,69],30:[1,66],31:[1,67],32:[1,68],35:[1,27],38:26},{18:[2,46],28:[2,46],30:[2,46],31:[2,46],32:[2,46],35:[2,46],39:[2,46]},{18:[1,70]},{5:[2,22],14:[2,22],15:[2,22],16:[2,22],19:[2,22],20:[2,22],22:[2,22],23:[2,22],24:[2,22]},{18:[2,39],35:[2,39]},{18:[2,40],35:[2,40]},{18:[2,41],35:[2,41]},{18:[2,42],35:[2,42]},{18:[2,43],35:[2,43]},{5:[2,18],14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],24:[2,18]}], -defaultActions: {17:[2,1],25:[2,28],38:[2,26],57:[2,24]}, +table: [{3:1,4:2,5:[2,7],6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],22:[1,14],23:[1,15],25:[1,16]},{1:[3]},{5:[1,17]},{5:[2,6],7:18,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,6],22:[1,14],23:[1,15],25:[1,16]},{5:[2,5],6:20,8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,5],22:[1,14],23:[1,15],25:[1,16]},{17:23,18:[1,22],21:24,29:25,36:[1,28],38:[1,27],39:26},{5:[2,8],14:[2,8],15:[2,8],16:[2,8],19:[2,8],20:[2,8],22:[2,8],23:[2,8],25:[2,8]},{4:29,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],25:[1,16]},{4:30,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],25:[1,16]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],25:[2,12]},{5:[2,13],14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],25:[2,13]},{5:[2,14],14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],25:[2,14]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],25:[2,15]},{17:31,21:24,29:25,36:[1,28],38:[1,27],39:26},{17:32,21:24,29:25,36:[1,28],38:[1,27],39:26},{17:33,21:24,29:25,36:[1,28],38:[1,27],39:26},{21:35,26:34,31:[1,36],32:[1,37],36:[1,28],39:26},{1:[2,1]},{5:[2,2],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,2],22:[1,14],23:[1,15],25:[1,16]},{17:23,21:24,29:25,36:[1,28],38:[1,27],39:26},{5:[2,4],7:38,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,4],22:[1,14],23:[1,15],25:[1,16]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],25:[2,9]},{5:[2,23],14:[2,23],15:[2,23],16:[2,23],19:[2,23],20:[2,23],22:[2,23],23:[2,23],25:[2,23]},{18:[1,39]},{18:[2,27],21:44,24:[2,27],27:40,28:41,29:48,30:42,31:[1,45],32:[1,46],33:[1,47],34:43,35:49,36:[1,50],38:[1,27],39:26},{18:[2,28],24:[2,28]},{18:[2,48],24:[2,48],31:[2,48],32:[2,48],33:[2,48],36:[2,48],38:[2,48],40:[1,51]},{21:52,36:[1,28],39:26},{18:[2,50],24:[2,50],31:[2,50],32:[2,50],33:[2,50],36:[2,50],38:[2,50],40:[2,50]},{10:53,20:[1,54]},{10:55,20:[1,54]},{18:[1,56]},{18:[1,57]},{24:[1,58]},{18:[1,59],21:60,36:[1,28],39:26},{18:[2,44],36:[2,44]},{18:[2,45],36:[2,45]},{18:[2,46],36:[2,46]},{5:[2,3],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,3],22:[1,14],23:[1,15],25:[1,16]},{14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],25:[2,17]},{18:[2,25],21:44,24:[2,25],28:61,29:48,30:62,31:[1,45],32:[1,46],33:[1,47],34:43,35:49,36:[1,50],38:[1,27],39:26},{18:[2,26],24:[2,26]},{18:[2,30],24:[2,30],31:[2,30],32:[2,30],33:[2,30],36:[2,30],38:[2,30]},{18:[2,36],24:[2,36],35:63,36:[1,64]},{18:[2,31],24:[2,31],31:[2,31],32:[2,31],33:[2,31],36:[2,31],38:[2,31]},{18:[2,32],24:[2,32],31:[2,32],32:[2,32],33:[2,32],36:[2,32],38:[2,32]},{18:[2,33],24:[2,33],31:[2,33],32:[2,33],33:[2,33],36:[2,33],38:[2,33]},{18:[2,34],24:[2,34],31:[2,34],32:[2,34],33:[2,34],36:[2,34],38:[2,34]},{18:[2,35],24:[2,35],31:[2,35],32:[2,35],33:[2,35],36:[2,35],38:[2,35]},{18:[2,38],24:[2,38],36:[2,38]},{18:[2,50],24:[2,50],31:[2,50],32:[2,50],33:[2,50],36:[2,50],37:[1,65],38:[2,50],40:[2,50]},{36:[1,66]},{18:[2,47],24:[2,47],31:[2,47],32:[2,47],33:[2,47],36:[2,47],38:[2,47]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],25:[2,10]},{21:67,36:[1,28],39:26},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],25:[2,11]},{14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],25:[2,16]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],25:[2,19]},{5:[2,20],14:[2,20],15:[2,20],16:[2,20],19:[2,20],20:[2,20],22:[2,20],23:[2,20],25:[2,20]},{5:[2,21],14:[2,21],15:[2,21],16:[2,21],19:[2,21],20:[2,21],22:[2,21],23:[2,21],25:[2,21]},{18:[1,68]},{18:[2,24],24:[2,24]},{18:[2,29],24:[2,29],31:[2,29],32:[2,29],33:[2,29],36:[2,29],38:[2,29]},{18:[2,37],24:[2,37],36:[2,37]},{37:[1,65]},{21:69,29:73,31:[1,70],32:[1,71],33:[1,72],36:[1,28],38:[1,27],39:26},{18:[2,49],24:[2,49],31:[2,49],32:[2,49],33:[2,49],36:[2,49],38:[2,49],40:[2,49]},{18:[1,74]},{5:[2,22],14:[2,22],15:[2,22],16:[2,22],19:[2,22],20:[2,22],22:[2,22],23:[2,22],25:[2,22]},{18:[2,39],24:[2,39],36:[2,39]},{18:[2,40],24:[2,40],36:[2,40]},{18:[2,41],24:[2,41],36:[2,41]},{18:[2,42],24:[2,42],36:[2,42]},{18:[2,43],24:[2,43],36:[2,43]},{5:[2,18],14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],25:[2,18]}], +defaultActions: {17:[2,1]}, parseError: function parseError(str, hash) { throw new Error(str); }, @@ -404,94 +418,89 @@ lexer.performAction = function anonymous(yy,yy_,$avoiding_name_collisions,YY_STA var YYSTATE=YY_START switch($avoiding_name_collisions) { -case 0: +case 0: yy_.yytext = "\\"; return 14; +break; +case 1: if(yy_.yytext.slice(-1) !== "\\") this.begin("mu"); if(yy_.yytext.slice(-1) === "\\") yy_.yytext = yy_.yytext.substr(0,yy_.yyleng-1), this.begin("emu"); if(yy_.yytext) return 14; break; -case 1: return 14; +case 2: return 14; break; -case 2: +case 3: if(yy_.yytext.slice(-1) !== "\\") this.popState(); if(yy_.yytext.slice(-1) === "\\") yy_.yytext = yy_.yytext.substr(0,yy_.yyleng-1); return 14; break; -case 3: yy_.yytext = yy_.yytext.substr(0, yy_.yyleng-4); this.popState(); return 15; +case 4: yy_.yytext = yy_.yytext.substr(0, yy_.yyleng-4); this.popState(); return 15; break; -case 4: this.begin("par"); return 24; +case 5: return 25; break; -case 5: return 16; +case 6: return 16; break; -case 6: return 20; -break; -case 7: return 19; +case 7: return 20; break; case 8: return 19; break; -case 9: return 23; +case 9: return 19; break; case 10: return 23; break; -case 11: this.popState(); this.begin('com'); +case 11: return 22; break; -case 12: yy_.yytext = yy_.yytext.substr(3,yy_.yyleng-5); this.popState(); return 15; +case 12: this.popState(); this.begin('com'); break; -case 13: return 22; +case 13: yy_.yytext = yy_.yytext.substr(3,yy_.yyleng-5); this.popState(); return 15; break; -case 14: return 36; +case 14: return 22; break; -case 15: return 35; +case 15: return 37; break; -case 16: return 35; +case 16: return 36; break; -case 17: return 39; +case 17: return 36; break; -case 18: /*ignore whitespace*/ +case 18: return 40; break; -case 19: this.popState(); return 18; +case 19: /*ignore whitespace*/ break; -case 20: this.popState(); return 18; +case 20: this.popState(); return 24; break; -case 21: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\"/g,'"'); return 30; +case 21: this.popState(); return 18; break; -case 22: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\'/g,"'"); return 30; +case 22: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\"/g,'"'); return 31; break; -case 23: yy_.yytext = yy_.yytext.substr(1); return 28; +case 23: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\'/g,"'"); return 31; break; -case 24: return 32; +case 24: return 38; break; -case 25: return 32; +case 25: return 33; break; -case 26: return 31; +case 26: return 33; break; -case 27: return 35; +case 27: return 32; break; -case 28: yy_.yytext = yy_.yytext.substr(1, yy_.yyleng-2); return 35; +case 28: return 36; break; -case 29: return 'INVALID'; +case 29: yy_.yytext = yy_.yytext.substr(1, yy_.yyleng-2); return 36; break; -case 30: /*ignore whitespace*/ +case 30: return 'INVALID'; break; -case 31: this.popState(); return 37; -break; -case 32: return 5; +case 31: return 5; break; } }; -lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:\s+)/,/^(?:[a-zA-Z0-9_$-/]+)/,/^(?:$)/]; -lexer.conditions = {"mu":{"rules":[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32],"inclusive":false},"emu":{"rules":[2],"inclusive":false},"com":{"rules":[3],"inclusive":false},"par":{"rules":[30,31],"inclusive":false},"INITIAL":{"rules":[0,1,32],"inclusive":true}}; +lexer.rules = [/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/]; +lexer.conditions = {"mu":{"rules":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"inclusive":false},"emu":{"rules":[3],"inclusive":false},"com":{"rules":[4],"inclusive":false},"INITIAL":{"rules":[0,1,2,31],"inclusive":true}}; return lexer;})() parser.lexer = lexer; function Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser; return new Parser; })(); -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.Parser = handlebars; Handlebars.parse = function(input) { @@ -502,11 +511,8 @@ Handlebars.parse = function(input) { Handlebars.Parser.yy = Handlebars.AST; return Handlebars.Parser.parse(input); }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) Handlebars.AST = {}; Handlebars.AST.ProgramNode = function(statements, inverse) { @@ -573,21 +579,24 @@ Handlebars.AST.HashNode = function(pairs) { Handlebars.AST.IdNode = function(parts) { this.type = "ID"; - this.original = parts.join("."); - var dig = [], depth = 0; + var original = "", + dig = [], + depth = 0; for(var i=0,l=parts.length; i 0) { throw new Handlebars.Exception("Invalid path: " + this.original); } + if (dig.length > 0) { throw new Handlebars.Exception("Invalid path: " + original); } else if (part === "..") { depth++; } else { this.isScoped = true; } } else { dig.push(part); } } + this.original = original; this.parts = dig; this.string = dig.join('.'); this.depth = depth; @@ -601,7 +610,7 @@ Handlebars.AST.IdNode = function(parts) { Handlebars.AST.PartialNameNode = function(name) { this.type = "PARTIAL_NAME"; - this.name = name; + this.name = name.original; }; Handlebars.AST.DataNode = function(id) { @@ -611,13 +620,15 @@ Handlebars.AST.DataNode = function(id) { Handlebars.AST.StringNode = function(string) { this.type = "STRING"; - this.string = string; - this.stringModeValue = string; + this.original = + this.string = + this.stringModeValue = string; }; Handlebars.AST.IntegerNode = function(integer) { this.type = "INTEGER"; - this.integer = integer; + this.original = + this.integer = integer; this.stringModeValue = Number(integer); }; @@ -631,12 +642,8 @@ Handlebars.AST.CommentNode = function(comment) { this.type = "comment"; this.comment = comment; }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - /*jshint eqnull:true*/ var Compiler = Handlebars.Compiler = function() {}; var JavaScriptCompiler = Handlebars.JavaScriptCompiler = function() {}; @@ -820,6 +827,10 @@ Compiler.prototype = { val = pair[1]; if (this.options.stringParams) { + if(val.depth) { + this.addDepth(val.depth); + } + this.opcode('getContext', val.depth || 0); this.opcode('pushStringParam', val.stringModeValue, val.type); } else { this.accept(val); @@ -903,7 +914,7 @@ Compiler.prototype = { if (this.options.knownHelpers[name]) { this.opcode('invokeKnownHelper', params.length, name); - } else if (this.knownHelpersOnly) { + } else if (this.options.knownHelpersOnly) { throw new Error("You specified knownHelpersOnly, but used the unknown helper " + name); } else { this.opcode('invokeHelper', params.length, name); @@ -928,7 +939,15 @@ Compiler.prototype = { DATA: function(data) { this.options.data = true; - this.opcode('lookupData', data.id); + if (data.id.isScoped || data.id.depth) { + throw new Handlebars.Exception('Scoped data references are not supported: ' + data.original); + } + + this.opcode('lookupData'); + var parts = data.id.parts; + for(var i=0, l=parts.length; i2&&k.push("'"+this.terminals_[T]+"'");this.lexer.showPosition?L="Parse error on line "+(a+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[g]||g)+"'":L="Parse error on line "+(a+1)+": Unexpected "+(g==1?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(L,{text:this.lexer.match,token:this.terminals_[g]||g,line:this.lexer.yylineno,loc:p,expected:k})}}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+g);switch(w[0]){case 1:r.push(g),i.push(this.lexer.yytext),s.push(this.lexer.yylloc),r.push(w[1]),g=null,y?(g=y,y=null):(f=this.lexer.yyleng,u=this.lexer.yytext,a=this.lexer.yylineno,p=this.lexer.yylloc,l>0&&l--);break;case 2:N=this.productions_[w[1]][1],x.$=i[i.length-N],x._$={first_line:s[s.length-(N||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(N||1)].first_column,last_column:s[s.length-1].last_column},d&&(x._$.range=[s[s.length-(N||1)].range[0],s[s.length-1].range[1]]),S=this.performAction.call(x,u,f,a,this.yy,w[1],i,s);if(typeof S!="undefined")return S;N&&(r=r.slice(0,-1*N*2),i=i.slice(0,-1*N),s=s.slice(0,-1*N)),r.push(this.productions_[w[1]][0]),i.push(x.$),s.push(x._$),C=o[r[r.length-2]][r[r.length-1]],r.push(C);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function( +){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=(new Array(e.length+1)).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r,i,s;this._more||(this.yytext="",this.match="");var o=this._currentRules();for(var u=0;ut[0].length)){t=n,r=u;if(!this.options.flex)break}}if(t){s=t[0].match(/(?:\r\n?|\n).*/g),s&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,o[r],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1);if(e)return e;return}return this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return typeof t!="undefined"?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(t){this.begin(t)}};return e.options={},e.performAction=function(t,n,r,i){var s=i;switch(r){case 0:return n.yytext="\\",14;case 1:n.yytext.slice(-1)!=="\\"&&this.begin("mu"),n.yytext.slice(-1)==="\\"&&(n.yytext=n.yytext.substr(0,n.yyleng-1),this.begin("emu"));if(n.yytext)return 14;break;case 2:return 14;case 3:return n.yytext.slice(-1)!=="\\"&&this.popState(),n.yytext.slice(-1)==="\\"&&(n.yytext=n.yytext.substr(0,n.yyleng-1)),14;case 4:return n.yytext=n.yytext.substr(0,n.yyleng-4),this.popState(),15;case 5:return 25;case 6:return 16;case 7:return 20;case 8:return 19;case 9:return 19;case 10:return 23;case 11:return 22;case 12:this.popState(),this.begin("com");break;case 13:return n.yytext=n.yytext.substr(3,n.yyleng-5),this.popState(),15;case 14:return 22;case 15:return 37;case 16:return 36;case 17:return 36;case 18:return 40;case 19:break;case 20:return this.popState(),24;case 21:return this.popState(),18;case 22:return n.yytext=n.yytext.substr(1,n.yyleng-2).replace(/\\"/g,'"'),31;case 23:return n.yytext=n.yytext.substr(1,n.yyleng-2).replace(/\\'/g,"'"),31;case 24:return 38;case 25:return 33;case 26:return 33;case 27:return 32;case 28:return 36;case 29:return n.yytext=n.yytext.substr(1,n.yyleng-2),36;case 30:return"INVALID";case 31:return 5}},e.rules=[/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],inclusive:!1},emu:{rules:[3],inclusive:!1},com:{rules:[4],inclusive:!1},INITIAL:{rules:[0,1,2,31],inclusive:!0}},e}();return e.lexer=t,n.prototype=e,e.Parser=n,new n}();n.Parser=r,n.parse=function(e){return e.constructor===n.AST.ProgramNode?e:(n.Parser.yy=n.AST,n.Parser.parse(e))},n.AST={},n.AST.ProgramNode=function(e,t){this.type="program",this.statements=e,t&&(this.inverse=new n.AST.ProgramNode(t))},n.AST.MustacheNode=function(e,t,n){this.type="mustache",this.escaped=!n,this.hash=t;var r=this.id=e[0],i=this.params=e.slice(1),s=this.eligibleHelper=r.isSimple;this.isHelper=s&&(i.length||t)},n.AST.PartialNode=function(e,t){this.type="partial",this.partialName=e,this.context=t},n.AST.BlockNode=function(e,t,r,i){var s=function(e,t){if(e.original!==t.original)throw new n.Exception(e.original+" doesn't match "+t.original)};s(e.id,i),this.type="block",this.mustache=e,this.program=t,this.inverse=r,this.inverse&&!this.program&&(this.isInverse=!0)},n.AST.ContentNode=function(e){this.type="content",this.string=e},n.AST.HashNode=function(e){this.type="hash",this.pairs=e},n.AST.IdNode=function(e){this.type="ID";var t="",r=[],i=0;for(var s=0,o=e.length;s0)throw new n.Exception("Invalid path: "+t);u===".."?i++:this.isScoped=!0}else r.push(u)}this.original=t,this.parts=r,this.string=r.join("."),this.depth=i,this.isSimple=e.length===1&&!this.isScoped&&i===0,this.stringModeValue=this.string},n.AST.PartialNameNode=function(e){this.type="PARTIAL_NAME",this.name=e.original},n.AST.DataNode=function(e){this.type="DATA",this.id=e},n.AST.StringNode=function(e){this.type="STRING",this.original=this.string=this.stringModeValue=e},n.AST.IntegerNode=function(e){this.type="INTEGER",this.original=this.integer=e,this.stringModeValue=Number(e)},n.AST.BooleanNode=function(e){this.type="BOOLEAN",this.bool=e,this.stringModeValue=e==="true"},n.AST.CommentNode=function(e){this.type="comment",this.comment=e};var i=n.Compiler=function(){},s=n.JavaScriptCompiler=function(){};i.prototype={compiler:i,disassemble:function(){var e=this.opcodes,t,n=[],r,i;for(var s=0,o=e.length;sthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var e=this.inlineStack;if(e.length){this.inlineStack=[];for(var t=0,n=e.length;t)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:\s+)/,/^(?:[a-zA-Z0-9_$-/]+)/,/^(?:$)/]; -lexer.conditions = {"mu":{"rules":[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32],"inclusive":false},"emu":{"rules":[2],"inclusive":false},"com":{"rules":[3],"inclusive":false},"par":{"rules":[30,31],"inclusive":false},"INITIAL":{"rules":[0,1,32],"inclusive":true}}; +lexer.rules = [/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/]; +lexer.conditions = {"mu":{"rules":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"inclusive":false},"emu":{"rules":[3],"inclusive":false},"com":{"rules":[4],"inclusive":false},"INITIAL":{"rules":[0,1,2,31],"inclusive":true}}; return lexer;})() parser.lexer = lexer; function Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser; return new Parser; })(); -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.Parser = handlebars; Handlebars.parse = function(input) { @@ -502,11 +511,8 @@ Handlebars.parse = function(input) { Handlebars.Parser.yy = Handlebars.AST; return Handlebars.Parser.parse(input); }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) Handlebars.AST = {}; Handlebars.AST.ProgramNode = function(statements, inverse) { @@ -573,21 +579,24 @@ Handlebars.AST.HashNode = function(pairs) { Handlebars.AST.IdNode = function(parts) { this.type = "ID"; - this.original = parts.join("."); - var dig = [], depth = 0; + var original = "", + dig = [], + depth = 0; for(var i=0,l=parts.length; i 0) { throw new Handlebars.Exception("Invalid path: " + this.original); } + if (dig.length > 0) { throw new Handlebars.Exception("Invalid path: " + original); } else if (part === "..") { depth++; } else { this.isScoped = true; } } else { dig.push(part); } } + this.original = original; this.parts = dig; this.string = dig.join('.'); this.depth = depth; @@ -601,7 +610,7 @@ Handlebars.AST.IdNode = function(parts) { Handlebars.AST.PartialNameNode = function(name) { this.type = "PARTIAL_NAME"; - this.name = name; + this.name = name.original; }; Handlebars.AST.DataNode = function(id) { @@ -611,13 +620,15 @@ Handlebars.AST.DataNode = function(id) { Handlebars.AST.StringNode = function(string) { this.type = "STRING"; - this.string = string; - this.stringModeValue = string; + this.original = + this.string = + this.stringModeValue = string; }; Handlebars.AST.IntegerNode = function(integer) { this.type = "INTEGER"; - this.integer = integer; + this.original = + this.integer = integer; this.stringModeValue = Number(integer); }; @@ -631,12 +642,8 @@ Handlebars.AST.CommentNode = function(comment) { this.type = "comment"; this.comment = comment; }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - /*jshint eqnull:true*/ var Compiler = Handlebars.Compiler = function() {}; var JavaScriptCompiler = Handlebars.JavaScriptCompiler = function() {}; @@ -820,6 +827,10 @@ Compiler.prototype = { val = pair[1]; if (this.options.stringParams) { + if(val.depth) { + this.addDepth(val.depth); + } + this.opcode('getContext', val.depth || 0); this.opcode('pushStringParam', val.stringModeValue, val.type); } else { this.accept(val); @@ -903,7 +914,7 @@ Compiler.prototype = { if (this.options.knownHelpers[name]) { this.opcode('invokeKnownHelper', params.length, name); - } else if (this.knownHelpersOnly) { + } else if (this.options.knownHelpersOnly) { throw new Error("You specified knownHelpersOnly, but used the unknown helper " + name); } else { this.opcode('invokeHelper', params.length, name); @@ -928,7 +939,15 @@ Compiler.prototype = { DATA: function(data) { this.options.data = true; - this.opcode('lookupData', data.id); + if (data.id.isScoped || data.id.depth) { + throw new Handlebars.Exception('Scoped data references are not supported: ' + data.original); + } + + this.opcode('lookupData'); + var parts = data.id.parts; + for(var i=0, l=parts.length; i{s}',all:function(e,t,n){var i=[],u,f,l,c,h,p;n||(n=o),u=n.escapeHTML!==!1,h=n.startsWith?a._START_REGEX:a._REGEX,p=n.replacer||a._REPLACER,t=s(t)?t:[t];for(f=0,l=t.length;f{s}',all:function(e,t,n){var i=[],u,f,l,c,h,p;n||(n=o),u=n.escapeHTML!==!1,h=n.startsWith?a._START_REGEX:a._REGEX,p=n.replacer||a._REPLACER,t=s(t)?t:[t];for(f=0,l=t.length;f=2)&&(!e.UA.android||e.UA.android>=2.4)),p.nativeHashChange=("onhashchange"in a||"onhashchange"in o)&&(!u||u>7),e.mix(p.prototype,{_init:function(e){var t;e=this._config=e||{},this.force=!!e.force,t=this._initialState=this._initialState||e.initialState||null,this.publish(l,{broadcast:2,defaultFn:this._defChangeFn}),t&&this.replace(t)},add:function(){var e=s(arguments,0,!0);return e.unshift(c),this._change.apply(this,e)},addValue:function(e,t,n){var r={};return r[e]=t,this._change(c,r,n)},get:function(t){var n=i._state,s=d(n);return t?s&&r.owns(n,t)?n[t]:undefined:s?e.mix({},n,!0):n},replace:function(){var e=s(arguments,0,!0);return e.unshift(h),this._change.apply(this,e)},replaceValue:function(e,t,n){var r={};return r[e]=t,this._change(h,r,n)},_change:function(t,n,r){return r=r?e.merge(f,r):f,r.merge&&d(n)&&d(i._state)&&(n=e.merge(i._state,n)),this._resolveChanges(t,n,r),this},_fireEvents:function(e,t,n){this.fire(l,{_options:n,changed:t.changed,newVal:t.newState,prevVal:t.prevState,removed:t.removed,src:e}),r.each(t.changed,function(t,n){this._fireChangeEvent(e,n,t)},this),r.each(t.removed,function(t,n){this._fireRemoveEvent(e,n,t)},this)},_fireChangeEvent:function(e,t,n){this.fire(t+"Change",{newVal:n.newVal,prevVal:n.prevVal,src:e})},_fireRemoveEvent:function(e,t,n){this.fire(t+"Remove",{prevVal:n,src:e})},_resolveChanges:function(e,t,n){var s={},o,u=i._state,a={};t||(t={}),n||(n={}),d(t)&&d(u)?(r.each(t,function(e,t){var n=u[t];e!==n&&(s[t]={newVal:e,prevVal:n},o=!0)},this),r.each(u,function(e,n){if(!r.owns(t,n)||t[n]===null)delete t[n],a[n]=e,o=!0},this)):o=t!==u,(o||this.force)&&this._fireEvents(e,{changed:s,newState:t,prevState:u,removed:a},n)},_storeState:function(e,t){i._state=t||{}},_defChangeFn:function(e){this._storeState(e.src,e.newVal,e._options)}},!0),e.HistoryBase=p},"3.9.1",{requires:["event-custom-complex"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("history-base",function(e,t){function p(){this._init.apply(this,arguments)}function d(e){return n.type(e)==="object"}var n=e.Lang,r=e.Object,i=YUI.namespace("Env.History"),s=e.Array,o=e.config.doc,u=o.documentMode,a=e.config.win,f={merge:!0},l="change",c="add",h="replace";e.augment(p,e.EventTarget,null,null,{emitFacade:!0,prefix:"history",preventable:!1,queueable:!0}),i._state||(i._state={}),p.NAME="historyBase",p.SRC_ADD=c,p.SRC_REPLACE=h,p.html5=!!(a.history&&a.history.pushState&&a.history.replaceState&&("onpopstate"in a||e.UA.gecko>=2)&&(!e.UA.android||e.UA.android>=2.4)),p.nativeHashChange=("onhashchange"in a||"onhashchange"in o)&&(!u||u>7),e.mix(p.prototype,{_init:function(e){var t;e=this._config=e||{},this.force=!!e.force,t=this._initialState=this._initialState||e.initialState||null,this.publish(l,{broadcast:2,defaultFn:this._defChangeFn}),t&&this.replace(t)},add:function(){var e=s(arguments,0,!0);return e.unshift(c),this._change.apply(this,e)},addValue:function(e,t,n){var r={};return r[e]=t,this._change(c,r,n)},get:function(t){var n=i._state,s=d(n);return t?s&&r.owns(n,t)?n[t]:undefined:s?e.mix({},n,!0):n},replace:function(){var e=s(arguments,0,!0);return e.unshift(h),this._change.apply(this,e)},replaceValue:function(e,t,n){var r={};return r[e]=t,this._change(h,r,n)},_change:function(t,n,r){return r=r?e.merge(f,r):f,r.merge&&d(n)&&d(i._state)&&(n=e.merge(i._state,n)),this._resolveChanges(t,n,r),this},_fireEvents:function(e,t,n){this.fire(l,{_options:n,changed:t.changed,newVal:t.newState,prevVal:t.prevState,removed:t.removed,src:e}),r.each(t.changed,function(t,n){this._fireChangeEvent(e,n,t)},this),r.each(t.removed,function(t,n){this._fireRemoveEvent(e,n,t)},this)},_fireChangeEvent:function(e,t,n){this.fire(t+"Change",{newVal:n.newVal,prevVal:n.prevVal,src:e})},_fireRemoveEvent:function(e,t,n){this.fire(t+"Remove",{prevVal:n,src:e})},_resolveChanges:function(e,t,n){var s={},o,u=i._state,a={};t||(t={}),n||(n={}),d(t)&&d(u)?(r.each(t,function(e,t){var n=u[t];e!==n&&(s[t]={newVal:e,prevVal:n},o=!0)},this),r.each(u,function(e,n){if(!r.owns(t,n)||t[n]===null)delete t[n],a[n]=e,o=!0},this)):o=t!==u,(o||this.force)&&this._fireEvents(e,{changed:s,newState:t,prevState:u,removed:a},n)},_storeState:function(e,t){i._state=t||{}},_defChangeFn:function(e){this._storeState(e.src,e.newVal,e._options)}},!0),e.HistoryBase=p},"3.12.0",{requires:["event-custom-complex"]}); diff --git a/lib/yuilib/3.9.1/build/history-base/history-base.js b/lib/yuilib/3.12.0/history-base/history-base.js similarity index 99% rename from lib/yuilib/3.9.1/build/history-base/history-base.js rename to lib/yuilib/3.12.0/history-base/history-base.js index b3b108c1341..43c03c18100 100644 --- a/lib/yuilib/3.9.1/build/history-base/history-base.js +++ b/lib/yuilib/3.12.0/history-base/history-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('history-base', function (Y, NAME) { /** @@ -638,4 +644,4 @@ Y.mix(HistoryBase.prototype, { Y.HistoryBase = HistoryBase; -}, '3.9.1', {"requires": ["event-custom-complex"]}); +}, '3.12.0', {"requires": ["event-custom-complex"]}); diff --git a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js rename to lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js index 6aa8b13a1ee..489422a4533 100644 --- a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js +++ b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('history-hash-ie', function (Y, NAME) { /** @@ -136,4 +142,4 @@ if (Y.UA.ie && !Y.HistoryBase.nativeHashChange) { } -}, '3.9.1', {"requires": ["history-hash", "node-base"]}); +}, '3.12.0', {"requires": ["history-hash", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js similarity index 79% rename from lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js rename to lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js index 2cb9a5a2b4a..a3b471eafe3 100644 --- a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js +++ b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("history-hash-ie",function(e,t){if(e.UA.ie&&!e.HistoryBase.nativeHashChange){var n=e.Do,r=YUI.namespace("Env.HistoryHash"),i=e.HistoryHash,s=r._iframe,o=e.config.win;i.getIframeHash=function(){if(!s||!s.contentWindow)return"";var e=i.hashPrefix,t=s.contentWindow.location.hash.substr(1);return e&&t.indexOf(e)===0?t.replace(e,""):t},i._updateIframe=function(e,t){var n=s&&s.contentWindow&&s.contentWindow.document,r=n&&n.location;if(!n||!r)return;t?r.replace(e.charAt(0)==="#"?e:"#"+e):(n.open().close(),r.hash=e)},n.before(i._updateIframe,i,"replaceHash",i,!0),s||e.on("domready",function(){var t=i.getHash();s=r._iframe=e.Node.getDOMNode(e.Node.create('',vt.ATTRS={useARIA:{value:!0,writeOnce:!0,lazyAdd:!1,setter:function(t){var n=this.get(D),r,u,a,f;t&&(n.set(N,s),n.all("ul,li,"+$).set(N,C),n.all(d+i(o,_)).set(N,o),n.all(d+q).each(function(t){r=t,u=t.one(V),u&&(u.set(N,C),r=u.previous()),r.set(N,o),r.set("aria-haspopup",!0),a=t.next(),a&&(a.set(N,s),r=a.previous(),u=r.one(V),u&&(r=u),f=e.stamp(r),r.get(p)||r.set(p,f),a.set("aria-labelledby",f),a.set(M,!0))}))}},autoSubmenuDisplay:{value:!0,writeOnce:!0},submenuShowDelay:{value:250,writeOnce:!0},submenuHideDelay:{value:250,writeOnce:!0},mouseOutHideDelay:{value:750,writeOnce:!0}},e.extend(vt,e.Plugin.Base,{_rootMenu:null,_activeItem:null,_activeMenu:null,_hasFocus:!1,_blockMouseEvent:!1,_currentMouseX:0,_movingToSubmenu:!1,_showSubmenuTimer:null,_hideSubmenuTimer:null,_hideAllSubmenusTimer:null,_firstItem:null,initializer:function(t){var n=this,r=this.get(D),i=[],s;r&&(n._rootMenu=r,r.all("ul:first-child").addClass(T),r.all(X).addClass(F),i.push(r.on("mouseover",n._onMouseOver,n)),i.push(r.on("mouseout",n._onMouseOut,n)),i.push(r.on("mousemove",n._onMouseMove,n)),i.push(r.on(w,n._toggleSubmenuDisplay,n)),i.push(e.on("key",n._toggleSubmenuDisplay,r,"down:13",n)),i.push(r.on(S,n._toggleSubmenuDisplay,n)),i.push(r.on("keypress",n._onKeyPress,n)),i.push(r.on(E,n._onKeyDown,n)),s=r.get("ownerDocument"),i.push(s.on(w,n._onDocMouseDown,n)),i.push(s.on("focus",n._onDocFocus,n)),this._eventHandlers=i,n._initFocusManager())},destructor:function(){var t=this._eventHandlers;t&&(e.Array.each(t,function(e){e.detach()}),this._eventHandlers=null),this.get(D).unplug("focusManager")},_isRoot:function(e){return this._rootMenu.compareTo(e)},_getTopmostSubmenu:function(e){var t=this,n=ot(e),r;return n?t._isRoot(n)?r=e:r=t._getTopmostSubmenu(n):r=e,r},_clearActiveItem:function(){var e=this,t=e._activeItem;t&&t.removeClass(ht(t)),e._activeItem=null},_setActiveItem:function(e){var t=this;e&&(t._clearActiveItem(),e.addClass(ht(e)),t._activeItem=e)},_focusItem:function(e){var t=this,n,r;e&&t._hasFocus&&(n=ot(e),r=it(e),n&&!n.compareTo(t._activeMenu)&&(t._activeMenu=n,t._initFocusManager()),t._focusManager.focus(r))},_showMenu:function(t){var r=ot(t),i=t.get(a),s=i.getXY();this.get(O)&&t.set(M,!1),nt(r)?s[1]=s[1]+i.get(l):s[0]=s[0]+i.get(c),t.setXY(s),n.ie<8&&(n.ie===6&&!t.hasIFrameShim&&(t.appendChild(e.Node.create(vt.SHIM_TEMPLATE)),t.hasIFrameShim=!0),t.setStyles({height:x,width:x}),t.setStyles({height:t.get(l)+h,width:t.get(c)+h})),t.previous().addClass(U),t.removeClass(F)},_hideMenu:function(e,t){var n=this,r=e.previous(),i;r.removeClass(U),t&&(n._focusItem(r),n._setActiveItem(r)),i=e.one(d+W),i&&i.removeClass(W),e.setStyles({left:x,top:x}),e.addClass(F),n.get(O)&&e.set(M,!0)},_hideAllSubmenus:function(t){var n=this;t.all(X).each(e.bind(function(e){n._hideMenu(e)},n))},_cancelShowSubmenuTimer:function(){var e=this,t=e._showSubmenuTimer;t&&(t.cancel(),e._showSubmenuTimer=null)},_cancelHideSubmenuTimer:function(){var e=this,t=e._hideSubmenuTimer;t&&(t.cancel(),e._hideSubmenuTimer=null)},_initFocusManager:function(){var t=this,n=t._rootMenu,r=t._activeMenu||n,i=t._isRoot(r)?x:"#"+r.get("id"),s=t._focusManager,o,u,a;nt(r)?(u=i+K+","+i+Q,o={next:"down:39",previous:"down:37"}):(u=i+K,o={next:"down:40",previous:"down:38"}),s?(s.set(A,-1),s.set(k,u),s.set("keys",o)):(n.plug(e.Plugin.NodeFocusManager,{descendants:u,keys:o,circular:!0}),s=n.focusManager,a="#"+n.get("id")+X+" a,"+V,n.all(a).set("tabIndex",-1),s.on(P,this._onActiveDescendantChange,s,this),s.after(P,this._afterActiveDescendantChange,s,this),t._focusManager=s)},_onActiveDescendantChange:function(e,t){e.src===L&&t._activeMenu&&!t._movingToSubmenu&&t._hideAllSubmenus(t._activeMenu)},_afterActiveDescendantChange:function(e,t){var n;e.src===L&&(n=lt(this.get(k).item(e.newVal),!0),t._setActiveItem(n))},_onDocFocus:function(e){var t=this,n=t._activeItem,r=e.target,i;t._rootMenu.contains(r)?t._hasFocus?(i=ot(r),t._activeMenu.compareTo(i)||(t._activeMenu=i,t._initFocusManager(),t._focusManager.set(A,r),t._setActiveItem(lt(r,!0)))):(t._hasFocus=!0 -,n=lt(r,!0),n&&t._setActiveItem(n)):(t._clearActiveItem(),t._cancelShowSubmenuTimer(),t._hideAllSubmenus(t._rootMenu),t._activeMenu=t._rootMenu,t._initFocusManager(),t._focusManager.set(A,0),t._hasFocus=!1)},_onMenuMouseOver:function(e,t){var n=this,r=n._hideAllSubmenusTimer;r&&(r.cancel(),n._hideAllSubmenusTimer=null),n._cancelHideSubmenuTimer(),e&&!e.compareTo(n._activeMenu)&&(n._activeMenu=e,n._hasFocus&&n._initFocusManager()),n._movingToSubmenu&&nt(e)&&(n._movingToSubmenu=!1)},_hideAndFocusLabel:function(){var e=this,t=e._activeMenu,n;e._hideAllSubmenus(e._rootMenu),t&&(n=e._getTopmostSubmenu(t),e._focusItem(n.previous()))},_onMenuMouseOut:function(e,t){var n=this,i=n._activeMenu,s=t.relatedTarget,o=n._activeItem,u,a;i&&!i.contains(s)&&(u=ot(i),u&&!u.contains(s)?n.get(B)>0&&(n._cancelShowSubmenuTimer(),n._hideAllSubmenusTimer=r(n.get(B),n,n._hideAndFocusLabel)):o&&(a=ot(o),n._isRoot(a)||n._focusItem(a.previous())))},_onMenuLabelMouseOver:function(e,t){var n=this,i=n._activeMenu,s=n._isRoot(i),o=n.get(H)&&s||!s,u=n.get("submenuShowDelay"),a,f=function(t){n._cancelHideSubmenuTimer(),n._cancelShowSubmenuTimer(),rt(e)||(a=e.next(),a&&(n._hideAllSubmenus(i),n._showSubmenuTimer=r(t,n,n._showMenu,a)))};n._focusItem(e),n._setActiveItem(e),o&&(n._movingToSubmenu?n._hoverTimer=r(u,n,function(){f(0)}):f(u))},_onMenuLabelMouseOut:function(e,t){var n=this,i=n._isRoot(n._activeMenu),s=n.get(H)&&i||!i,o=t.relatedTarget,u=e.next(),a=n._hoverTimer;a&&a.cancel(),n._clearActiveItem(),s&&(n._movingToSubmenu&&!n._showSubmenuTimer&&u?n._hideSubmenuTimer=r(n.get("submenuHideDelay"),n,n._hideMenu,u):!n._movingToSubmenu&&u&&(!o||o&&!u.contains(o)&&!o.compareTo(u))&&(n._cancelShowSubmenuTimer(),n._hideMenu(u)))},_onMenuItemMouseOver:function(e,t){var n=this,r=n._activeMenu,i=n._isRoot(r),s=n.get(H)&&i||!i;n._focusItem(e),n._setActiveItem(e),s&&!n._movingToSubmenu&&n._hideAllSubmenus(r)},_onMenuItemMouseOut:function(e,t){this._clearActiveItem()},_onVerticalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=t._rootMenu,i=e.target,s=!1,o=e.keyCode,u,f,l,c;switch(o){case 37:f=ot(n),f&&nt(f)?(t._hideMenu(n),l=G(n.get(a)),c=lt(l),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))):t._isRoot(n)||t._hideMenu(n,!0),s=!0;break;case 39:tt(i)?(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u)))):nt(r)&&(u=t._getTopmostSubmenu(n),l=Y(u.get(a)),c=lt(l),t._hideAllSubmenus(r),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))),s=!0}s&&e.preventDefault()},_onHorizontalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=e.target,i=lt(r,!0),s=!1,o=e.keyCode,u;o===40&&(t._hideAllSubmenus(n),tt(i)&&(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))),s=!0)),s&&e.preventDefault()},_onMouseMove:function(e){var t=this;r(10,t,function(){t._currentMouseX=e.pageX})},_onMouseOver:function(e){var t=this,n,r,i,s,o;t._blockMouseEvent?t._blockMouseEvent=!1:(n=e.target,r=ut(n,!0),i=ft(n,!0),o=at(n,!0),pt(r,n)&&(t._onMenuMouseOver(r,e),r[m]=!0,r[v]=!1,s=ot(r),s&&(s[v]=!0,s[m]=!1)),pt(i,n)&&(t._onMenuLabelMouseOver(i,e),i[m]=!0,i[v]=!1),pt(o,n)&&(t._onMenuItemMouseOver(o,e),o[m]=!0,o[v]=!1))},_onMouseOut:function(e){var t=this,n=t._activeMenu,r=!1,i,s,o,u,a,f;t._movingToSubmenu=n&&!nt(n)&&e.pageX-5>t._currentMouseX,i=e.target,s=e.relatedTarget,o=ut(i,!0),u=ft(i,!0),f=at(i,!0),dt(u,s)&&(t._onMenuLabelMouseOut(u,e),u[v]=!0,u[m]=!1),dt(f,s)&&(t._onMenuItemMouseOut(f,e),f[v]=!0,f[m]=!1),u&&(a=u.next(),a&&s&&(s.compareTo(a)||a.contains(s))&&(r=!0));if(dt(o,s)||r)t._onMenuMouseOut(o,e),o[v]=!0,o[m]=!1},_toggleSubmenuDisplay:function(e){var t=this,r=e.target,i=ft(r,!0),s=e.type,o,u,a,f,l,c;if(i){o=Z(r)?r:r.ancestor(Z);if(o){a=o.getAttribute("href",2),f=a.indexOf("#"),l=a.length;if(f===0&&l>1){c=a.substr(1,l),u=i.next();if(u&&u.get(p)===c){if(s===w||s===E)(n.opera||n.gecko||n.ie)&&s===E&&!t._preventClickHandle&&(t._preventClickHandle=t._rootMenu.on("click",function(e){e.preventDefault(),t._preventClickHandle.detach(),t._preventClickHandle=null})),s==w&&(e.preventDefault(),e.stopImmediatePropagation(),t._hasFocus=!0),t._isRoot(ot(r))?rt(i)?(t._hideMenu(u),t._focusItem(i),t._setActiveItem(i)):(t._hideAllSubmenus(t._rootMenu),t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):t._activeItem==i?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):i._clickHandle||(i._clickHandle=i.on("click",function(){t._hideAllSubmenus(t._rootMenu),t._hasFocus=!1,t._clearActiveItem(),i._clickHandle.detach(),i._clickHandle=null}));s===S&&e.preventDefault()}}}}},_onKeyPress:function(e){switch(e.keyCode){case 37:case 38:case 39:case 40:e.preventDefault()}},_onKeyDown:function(e){var t=this,i=t._activeItem,s=e.target,o=ot(s),u;o&&(t._activeMenu=o,nt(o)?t._onHorizontalMenuKeyDown(e):t._onVerticalMenuKeyDown(e),e.keyCode===27&&(t._isRoot(o)?i&&(tt(i)&&rt(i)?(u=i.next(),u&&t._hideMenu(u)):(t._focusManager.blur(),t._clearActiveItem(),t._hasFocus=!1)):(n.opera?r(0,t,function(){t._hideMenu(o,!0)}):t._hideMenu(o,!0),e.stopPropagation(),t._blockMouseEvent=n.gecko?!0:!1)))},_onDocMouseDown:function(e){var t=this,r=t._rootMenu,i=e.target;!r.compareTo(i)&&!r.contains(i)&&(t._hideAllSubmenus(r),n.webkit&&(t._hasFocus=!1,t._clearActiveItem()))}}),e.namespace("Plugin"),e.Plugin.NodeMenuNav=vt},"3.9.1",{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0}); +,n=lt(r,!0),n&&t._setActiveItem(n)):(t._clearActiveItem(),t._cancelShowSubmenuTimer(),t._hideAllSubmenus(t._rootMenu),t._activeMenu=t._rootMenu,t._initFocusManager(),t._focusManager.set(A,0),t._hasFocus=!1)},_onMenuMouseOver:function(e,t){var n=this,r=n._hideAllSubmenusTimer;r&&(r.cancel(),n._hideAllSubmenusTimer=null),n._cancelHideSubmenuTimer(),e&&!e.compareTo(n._activeMenu)&&(n._activeMenu=e,n._hasFocus&&n._initFocusManager()),n._movingToSubmenu&&nt(e)&&(n._movingToSubmenu=!1)},_hideAndFocusLabel:function(){var e=this,t=e._activeMenu,n;e._hideAllSubmenus(e._rootMenu),t&&(n=e._getTopmostSubmenu(t),e._focusItem(n.previous()))},_onMenuMouseOut:function(e,t){var n=this,i=n._activeMenu,s=t.relatedTarget,o=n._activeItem,u,a;i&&!i.contains(s)&&(u=ot(i),u&&!u.contains(s)?n.get(B)>0&&(n._cancelShowSubmenuTimer(),n._hideAllSubmenusTimer=r(n.get(B),n,n._hideAndFocusLabel)):o&&(a=ot(o),n._isRoot(a)||n._focusItem(a.previous())))},_onMenuLabelMouseOver:function(e,t){var n=this,i=n._activeMenu,s=n._isRoot(i),o=n.get(H)&&s||!s,u=n.get("submenuShowDelay"),a,f=function(t){n._cancelHideSubmenuTimer(),n._cancelShowSubmenuTimer(),rt(e)||(a=e.next(),a&&(n._hideAllSubmenus(i),n._showSubmenuTimer=r(t,n,n._showMenu,a)))};n._focusItem(e),n._setActiveItem(e),o&&(n._movingToSubmenu?n._hoverTimer=r(u,n,function(){f(0)}):f(u))},_onMenuLabelMouseOut:function(e,t){var n=this,i=n._isRoot(n._activeMenu),s=n.get(H)&&i||!i,o=t.relatedTarget,u=e.next(),a=n._hoverTimer;a&&a.cancel(),n._clearActiveItem(),s&&(n._movingToSubmenu&&!n._showSubmenuTimer&&u?n._hideSubmenuTimer=r(n.get("submenuHideDelay"),n,n._hideMenu,u):!n._movingToSubmenu&&u&&(!o||o&&!u.contains(o)&&!o.compareTo(u))&&(n._cancelShowSubmenuTimer(),n._hideMenu(u)))},_onMenuItemMouseOver:function(e,t){var n=this,r=n._activeMenu,i=n._isRoot(r),s=n.get(H)&&i||!i;n._focusItem(e),n._setActiveItem(e),s&&!n._movingToSubmenu&&n._hideAllSubmenus(r)},_onMenuItemMouseOut:function(e,t){this._clearActiveItem()},_onVerticalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=t._rootMenu,i=e.target,s=!1,o=e.keyCode,u,f,l,c;switch(o){case 37:f=ot(n),f&&nt(f)?(t._hideMenu(n),l=G(n.get(a)),c=lt(l),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))):t._isRoot(n)||t._hideMenu(n,!0),s=!0;break;case 39:tt(i)?(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u)))):nt(r)&&(u=t._getTopmostSubmenu(n),l=Y(u.get(a)),c=lt(l),t._hideAllSubmenus(r),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))),s=!0}s&&e.preventDefault()},_onHorizontalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=e.target,i=lt(r,!0),s=!1,o=e.keyCode,u;o===40&&(t._hideAllSubmenus(n),tt(i)&&(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))),s=!0)),s&&e.preventDefault()},_onMouseMove:function(e){var t=this;r(10,t,function(){t._currentMouseX=e.pageX})},_onMouseOver:function(e){var t=this,n,r,i,s,o;t._blockMouseEvent?t._blockMouseEvent=!1:(n=e.target,r=ut(n,!0),i=ft(n,!0),o=at(n,!0),pt(r,n)&&(t._onMenuMouseOver(r,e),r[m]=!0,r[v]=!1,s=ot(r),s&&(s[v]=!0,s[m]=!1)),pt(i,n)&&(t._onMenuLabelMouseOver(i,e),i[m]=!0,i[v]=!1),pt(o,n)&&(t._onMenuItemMouseOver(o,e),o[m]=!0,o[v]=!1))},_onMouseOut:function(e){var t=this,n=t._activeMenu,r=!1,i,s,o,u,a,f;t._movingToSubmenu=n&&!nt(n)&&e.pageX-5>t._currentMouseX,i=e.target,s=e.relatedTarget,o=ut(i,!0),u=ft(i,!0),f=at(i,!0),dt(u,s)&&(t._onMenuLabelMouseOut(u,e),u[v]=!0,u[m]=!1),dt(f,s)&&(t._onMenuItemMouseOut(f,e),f[v]=!0,f[m]=!1),u&&(a=u.next(),a&&s&&(s.compareTo(a)||a.contains(s))&&(r=!0));if(dt(o,s)||r)t._onMenuMouseOut(o,e),o[v]=!0,o[m]=!1},_toggleSubmenuDisplay:function(e){var t=this,r=e.target,i=ft(r,!0),s=e.type,o,u,a,f,l,c;if(i){o=Z(r)?r:r.ancestor(Z);if(o){a=o.getAttribute("href",2),f=a.indexOf("#"),l=a.length;if(f===0&&l>1){c=a.substr(1,l),u=i.next();if(u&&u.get(p)===c){if(s===w||s===E)(n.opera||n.gecko||n.ie)&&s===E&&!t._preventClickHandle&&(t._preventClickHandle=t._rootMenu.on("click",function(e){e.preventDefault(),t._preventClickHandle.detach(),t._preventClickHandle=null})),s==w&&(e.preventDefault(),e.stopImmediatePropagation(),t._hasFocus=!0),t._isRoot(ot(r))?rt(i)?(t._hideMenu(u),t._focusItem(i),t._setActiveItem(i)):(t._hideAllSubmenus(t._rootMenu),t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):t._activeItem==i?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):i._clickHandle||(i._clickHandle=i.on("click",function(){t._hideAllSubmenus(t._rootMenu),t._hasFocus=!1,t._clearActiveItem(),i._clickHandle.detach(),i._clickHandle=null}));s===S&&e.preventDefault()}}}}},_onKeyPress:function(e){switch(e.keyCode){case 37:case 38:case 39:case 40:e.preventDefault()}},_onKeyDown:function(e){var t=this,i=t._activeItem,s=e.target,o=ot(s),u;o&&(t._activeMenu=o,nt(o)?t._onHorizontalMenuKeyDown(e):t._onVerticalMenuKeyDown(e),e.keyCode===27&&(t._isRoot(o)?i&&(tt(i)&&rt(i)?(u=i.next(),u&&t._hideMenu(u)):(t._focusManager.blur(),t._clearActiveItem(),t._hasFocus=!1)):(n.opera?r(0,t,function(){t._hideMenu(o,!0)}):t._hideMenu(o,!0),e.stopPropagation(),t._blockMouseEvent=n.gecko?!0:!1)))},_onDocMouseDown:function(e){var t=this,r=t._rootMenu,i=e.target;!r.compareTo(i)&&!r.contains(i)&&(t._hideAllSubmenus(r),n.webkit&&(t._hasFocus=!1,t._clearActiveItem()))}}),e.namespace("Plugin"),e.Plugin.NodeMenuNav=vt},"3.12.0",{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/node-menunav/node-menunav.js b/lib/yuilib/3.12.0/node-menunav/node-menunav.js similarity index 99% rename from lib/yuilib/3.9.1/build/node-menunav/node-menunav.js rename to lib/yuilib/3.12.0/node-menunav/node-menunav.js index d42107ec1d4..4d91f0170fc 100644 --- a/lib/yuilib/3.9.1/build/node-menunav/node-menunav.js +++ b/lib/yuilib/3.12.0/node-menunav/node-menunav.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-menunav', function (Y, NAME) { /** @@ -2186,4 +2192,4 @@ Y.namespace('Plugin'); Y.Plugin.NodeMenuNav = NodeMenuNav; -}, '3.9.1', {"requires": ["node", "classnamemanager", "plugin", "node-focusmanager"], "skinnable": true}); +}, '3.12.0', {"requires": ["node", "classnamemanager", "plugin", "node-focusmanager"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js similarity index 88% rename from lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js rename to lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js index 8627c2eb565..99cf9e6805f 100644 --- a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -40,6 +46,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -84,4 +95,4 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); diff --git a/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js new file mode 100644 index 00000000000..c4e860ab55b --- /dev/null +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-pluginhost",function(e,t){e.Node.plug=function(){var t=e.Array(arguments);return t.unshift(e.Node),e.Plugin.Host.plug.apply(e.Base,t),e.Node},e.Node.unplug=function(){var t=e.Array(arguments);return t.unshift(e.Node),e.Plugin.Host.unplug.apply(e.Base,t),e.Node},e.mix(e.Node,e.Plugin.Host,!1,null,1),e.Object.each(e.Node._instances,function(t){e.Plugin.Host.apply(t)}),e.NodeList.prototype.plug=function(){var t=arguments;return e.NodeList.each(this,function(n){e.Node.prototype.plug.apply(e.one(n),t)}),this},e.NodeList.prototype.unplug=function(){var t=arguments;return e.NodeList.each(this,function(n){e.Node.prototype.unplug.apply(e.one(n),t)}),this}},"3.12.0",{requires:["node-base","pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js similarity index 88% rename from lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js rename to lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js index 8627c2eb565..99cf9e6805f 100644 --- a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -40,6 +46,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -84,4 +95,4 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js b/lib/yuilib/3.12.0/node-screen/node-screen-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js rename to lib/yuilib/3.12.0/node-screen/node-screen-debug.js index 8f2a7551dc3..d0cf9b8370a 100644 --- a/lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-screen', function (Y, NAME) { /** @@ -227,7 +233,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -238,4 +244,4 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen-min.js b/lib/yuilib/3.12.0/node-screen/node-screen-min.js similarity index 86% rename from lib/yuilib/3.9.1/build/node-screen/node-screen-min.js rename to lib/yuilib/3.12.0/node-screen/node-screen-min.js index 5e2a58e4647..552bcbfc7c4 100644 --- a/lib/yuilib/3.9.1/build/node-screen/node-screen-min.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("node-screen",function(e,t){e.each(["winWidth","winHeight","docWidth","docHeight","docScrollX","docScrollY"],function(t){e.Node.ATTRS[t]={getter:function(){var n=Array.prototype.slice.call(arguments);return n.unshift(e.Node.getDOMNode(this)),e.DOM[t].apply(this,n)}}}),e.Node.ATTRS.scrollLeft={getter:function(){var t=e.Node.getDOMNode(this);return"scrollLeft"in t?t.scrollLeft:e.DOM.docScrollX(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollLeft"in n?n.scrollLeft=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(t,e.DOM.docScrollY(n)))}},e.Node.ATTRS.scrollTop={getter:function(){var t=e.Node.getDOMNode(this);return"scrollTop"in t?t.scrollTop:e.DOM.docScrollY(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollTop"in n?n.scrollTop=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(e.DOM.docScrollX(n),t))}},e.Node.importMethod(e.DOM,["getXY","setXY","getX","setX","getY","setY","swapXY"]),e.Node.ATTRS.region={getter:function(){var t=this.getDOMNode(),n;return t&&!t.tagName&&t.nodeType===9&&(t=t.documentElement),e.DOM.isWindow(t)?n=e.DOM.viewportRegion(t):n=e.DOM.region(t),n}},e.Node.ATTRS.viewportRegion={getter:function(){return e.DOM.viewportRegion(e.Node.getDOMNode(this))}},e.Node.importMethod(e.DOM,"inViewportRegion"),e.Node.prototype.intersect=function(t,n){var r=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.intersect(r,t,n)},e.Node.prototype.inRegion=function(t,n,r){var i=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.inRegion(i,t,n,r)}},"3.9.1",{requires:["dom-screen","node-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-screen",function(e,t){e.each(["winWidth","winHeight","docWidth","docHeight","docScrollX","docScrollY"],function(t){e.Node.ATTRS[t]={getter:function(){var n=Array.prototype.slice.call(arguments);return n.unshift(e.Node.getDOMNode(this)),e.DOM[t].apply(this,n)}}}),e.Node.ATTRS.scrollLeft={getter:function(){var t=e.Node.getDOMNode(this);return"scrollLeft"in t?t.scrollLeft:e.DOM.docScrollX(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollLeft"in n?n.scrollLeft=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(t,e.DOM.docScrollY(n)))}},e.Node.ATTRS.scrollTop={getter:function(){var t=e.Node.getDOMNode(this);return"scrollTop"in t?t.scrollTop:e.DOM.docScrollY(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollTop"in n?n.scrollTop=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(e.DOM.docScrollX(n),t))}},e.Node.importMethod(e.DOM,["getXY","setXY","getX","setX","getY","setY","swapXY"]),e.Node.ATTRS.region={getter:function(){var t=this.getDOMNode(),n;return t&&!t.tagName&&t.nodeType===9&&(t=t.documentElement),e.DOM.isWindow(t)?n=e.DOM.viewportRegion(t):n=e.DOM.region(t),n}},e.Node.ATTRS.viewportRegion={getter:function(){return e.DOM.viewportRegion(e.Node.getDOMNode(this))}},e.Node.importMethod(e.DOM,"inViewportRegion"),e.Node.prototype.intersect=function(t,n){var r=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.intersect(r,t,n)},e.Node.prototype.inRegion=function(t,n,r){var i=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.inRegion(i,t,n,r)}},"3.12.0",{requires:["dom-screen","node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen.js b/lib/yuilib/3.12.0/node-screen/node-screen.js similarity index 95% rename from lib/yuilib/3.9.1/build/node-screen/node-screen.js rename to lib/yuilib/3.12.0/node-screen/node-screen.js index c8221cd95a5..32827a28d7d 100644 --- a/lib/yuilib/3.9.1/build/node-screen/node-screen.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-screen', function (Y, NAME) { /** @@ -225,7 +231,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -236,4 +242,4 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js similarity index 67% rename from lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js rename to lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js index b995d40d559..78e55d60b8f 100644 --- a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js @@ -1,6 +1,14 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-scroll-info', function (Y, NAME) { +/*jshint onevar:false */ + /** Provides the ScrollInfo Node plugin, which exposes convenient events and methods related to scrolling. @@ -29,6 +37,9 @@ the current scroll position. @since 3.7.0 **/ +var doc = Y.config.doc, + win = Y.config.win; + /** Fired when the user scrolls within the host node. @@ -162,14 +173,53 @@ var EVT_SCROLL = 'scroll', EVT_SCROLL_TO_TOP = 'scrollToTop'; Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { + // -- Protected Properties ------------------------------------------------- + + /** + Height of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winHeight`. + + @property {Number} _height + @protected + **/ + + /** + Whether or not the host node is the `` element. + + @property {Boolean} _hostIsBody + @protected + **/ + + /** + Width of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winWidth`. + + @property {Number} _width + @protected + **/ + + /** + Height of the viewport in pixels. + + @property {Number} _winHeight + @protected + **/ + + /** + Width of the viewport in pixels. + + @property {Number} _winWidth + @protected + **/ + // -- Lifecycle Methods ---------------------------------------------------- initializer: function (config) { // Cache for quicker lookups in the critical path. - this._host = config.host; - this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; - this._scrollDelay = this.get('scrollDelay'); - this._scrollMargin = this.get('scrollMargin'); - this._scrollNode = this._getScrollNode(); + this._host = config.host; + this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; + this._scrollDelay = this.get('scrollDelay'); + this._scrollMargin = this.get('scrollMargin'); + this._scrollNode = this._getScrollNode(); this.refreshDimensions(); @@ -179,8 +229,8 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, destructor: function () { - (new Y.EventHandle(this._events)).detach(); - delete this._events; + new Y.EventHandle(this._events).detach(); + this._events = null; }, // -- Public Methods ------------------------------------------------------- @@ -205,45 +255,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return false; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return false; - } - - // If we get here, the element isn't within the viewport. - return true; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return !this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -266,45 +282,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return true; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return true; - } - - // If we get here, the element isn't within the viewport. - return false; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -351,6 +333,24 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }; }, + /** + Returns `true` if _node_ is at least partially onscreen within the host + node, `false` otherwise. + + @method isNodeOnscreen + @param {HTMLElement|Node|String} node Node or selector to check. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _node_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + isNodeOnscreen: function (node, margin) { + node = Y.one(node); + return !!(node && this._isElementOnscreen(node._node, margin)); + }, + /** Refreshes cached position, height, and width dimensions for the host node. If the host node is the body, then the viewport height and width will be @@ -365,30 +365,28 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { @method refreshDimensions **/ refreshDimensions: function () { - // WebKit only returns reliable scroll info on the body, and only - // returns reliable height/width info on the documentElement, so we - // have to special-case it (see the other special case in - // _getScrollNode()). - // + var docEl = doc.documentElement; + // On iOS devices, documentElement.clientHeight/Width aren't reliable, - // but window.innerHeight/Width are. And no, dom-screen's viewport size - // methods don't account for this, which is why we do it here. - - var hostIsBody = this._hostIsBody, - iosHack = hostIsBody && Y.UA.ios, - win = Y.config.win, - el; - - if (hostIsBody && Y.UA.webkit) { - el = Y.config.doc.documentElement; + // but window.innerHeight/Width are. The dom-screen module's viewport + // size methods don't account for this, which is why we do it here. + if (Y.UA.ios) { + this._winHeight = win.innerHeight; + this._winWidth = win.innerWidth; } else { - el = this._scrollNode; + this._winHeight = docEl.clientHeight; + this._winWidth = docEl.clientWidth; } - this._height = iosHack ? win.innerHeight : el.clientHeight; - this._left = el.offsetLeft; - this._top = el.offsetTop; - this._width = iosHack ? win.innerWidth : el.clientWidth; + if (this._hostIsBody) { + this._height = this._winHeight; + this._width = this._winWidth; + } else { + this._height = this._scrollNode.clientHeight; + this._width = this._scrollNode.clientWidth; + } + + this._refreshHostBoundingRect(); }, // -- Protected Methods ---------------------------------------------------- @@ -408,13 +406,22 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { scrollMarginChange: this._afterScrollMarginChange }), - winNode.on('windowresize', this._afterResize, this), - - // If we're attached to the body, listen for the scroll event on the - // window, since doesn't have a scroll event. - (this._hostIsBody ? winNode : this._host).after( - 'scroll', this._afterScroll, this) + winNode.on('windowresize', this._afterResize, this) ]; + + // If the host node is the body, listen for the scroll event on the + // window, since doesn't have a scroll event. + if (this._hostIsBody) { + this._events.push(winNode.after('scroll', this._afterHostScroll, this)); + } else { + // The host node is not the body, but we still need to listen for + // window scroll events so we can determine whether nodes are + // onscreen. + this._events.push( + winNode.after('scroll', this._afterWindowScroll, this), + this._host.after('scroll', this._afterHostScroll, this) + ); + } }, /** @@ -430,10 +437,73 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { _getScrollNode: function () { // WebKit returns scroll coordinates on the body element, but other // browsers don't, so we have to use the documentElement. - return this._hostIsBody && !Y.UA.webkit ? Y.config.doc.documentElement : + return this._hostIsBody && !Y.UA.webkit ? doc.documentElement : Y.Node.getDOMNode(this._host); }, + /** + Underlying element-based implementation for `isNodeOnscreen()`. + + @method _isElementOnscreen + @param {HTMLElement} el HTML element. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _el_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + _isElementOnscreen: function (el, margin) { + var hostRect = this._hostRect, + rect = el.getBoundingClientRect(); + + if (typeof margin === 'undefined') { + margin = this._scrollMargin; + } + + // Determine whether any part of _el_ is within the visible region of + // the host element or the specified margin around the visible region of + // the host element. + return !(rect.top > hostRect.bottom + margin + || rect.bottom < hostRect.top - margin + || rect.right < hostRect.left - margin + || rect.left > hostRect.right + margin); + }, + + /** + Caches the bounding rect of the host node. + + If the host node is the body, the bounding rect will be faked to represent + the dimensions of the viewport, since the actual body dimensions may extend + beyond the viewport and we only care about the visible region. + + @method _refreshHostBoundingRect + @protected + **/ + _refreshHostBoundingRect: function () { + var winHeight = this._winHeight, + winWidth = this._winWidth, + + hostRect; + + if (this._hostIsBody) { + hostRect = { + bottom: winHeight, + height: winHeight, + left : 0, + right : winWidth, + top : 0, + width : winWidth + }; + + this._isHostOnscreen = true; + } else { + hostRect = this._scrollNode.getBoundingClientRect(); + } + + this._hostRect = hostRect; + }, + /** Mixes detailed scroll information into the given DOM `scroll` event facade and fires appropriate local events. @@ -487,24 +557,13 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { // -- Protected Event Handlers --------------------------------------------- /** - Handles browser resize events. + Handles DOM `scroll` events on the host node. - @method _afterResize + @method _afterHostScroll @param {EventFacade} e @protected **/ - _afterResize: function (e) { - this.refreshDimensions(); - }, - - /** - Handles DOM `scroll` events. - - @method _afterScroll - @param {EventFacade} e - @protected - **/ - _afterScroll: function (e) { + _afterHostScroll: function (e) { var self = this; clearTimeout(this._scrollTimeout); @@ -514,6 +573,16 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, this._scrollDelay); }, + /** + Handles browser resize events. + + @method _afterResize + @protected + **/ + _afterResize: function () { + this.refreshDimensions(); + }, + /** Caches the `scrollDelay` value after that attribute changes to allow quicker lookups in critical path code. @@ -536,6 +605,17 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { **/ _afterScrollMarginChange: function (e) { this._scrollMargin = e.newVal; + }, + + /** + Handles DOM `scroll` events on the window. + + @method _afterWindowScroll + @param {EventFacade} e + @protected + **/ + _afterWindowScroll: function () { + this._refreshHostBoundingRect(); } }, { NS: 'scrollInfo', @@ -578,4 +658,4 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }); -}, '3.9.1', {"requires": ["base-build", "dom-screen", "event-resize", "node-pluginhost", "plugin"]}); +}, '3.12.0', {"requires": ["array-extras", "base-build", "event-resize", "node-pluginhost", "plugin", "selector"]}); diff --git a/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js new file mode 100644 index 00000000000..bcc0a9b18d3 --- /dev/null +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-scroll-info",function(e,t){var n=e.config.doc,r=e.config.win,i="scroll",s="scrollDown",o="scrollLeft",u="scrollRight",a="scrollUp",f="scrollToBottom",l="scrollToLeft",c="scrollToRight",h="scrollToTop";e.Plugin.ScrollInfo=e.Base.create("scrollInfoPlugin",e.Plugin.Base,[],{initializer:function(e){this._host=e.host,this._hostIsBody=this._host.get("nodeName").toLowerCase()==="body",this._scrollDelay=this.get("scrollDelay"),this._scrollMargin=this.get("scrollMargin"),this._scrollNode=this._getScrollNode(),this.refreshDimensions(),this._lastScroll=this.getScrollInfo(),this._bind()},destructor:function(){(new e.EventHandle(this._events)).detach(),this._events=null},getOffscreenNodes:function(t,n){typeof n=="undefined"&&(n=this._scrollMargin);var r=e.Selector.query(t||"*",this._host._node);return new e.NodeList(e.Array.filter(r,function(e){return!this._isElementOnscreen(e,n)},this))},getOnscreenNodes:function(t,n){typeof n=="undefined"&&(n=this._scrollMargin);var r=e.Selector.query(t||"*",this._host._node);return new e.NodeList(e.Array.filter(r,function(e){return this._isElementOnscreen(e,n)},this))},getScrollInfo:function(){var e=this._scrollNode,t=this._lastScroll,n=this._scrollMargin,r=e.scrollLeft,i=e.scrollHeight,s=e.scrollTop,o=e.scrollWidth,u=s+this._height,a=r+this._width;return{atBottom:u>i-n,atLeft:ro-n,atTop:st.scrollTop,isScrollLeft:t&&rt.scrollLeft,isScrollUp:t&&sn.bottom+t||r.bottomn.right+t)},_refreshHostBoundingRect:function(){var e=this._winHeight,t=this._winWidth,n;this._hostIsBody?(n={bottom:e,height:e,left:0,right:t,top:0,width:t},this._isHostOnscreen=!0):n=this._scrollNode.getBoundingClientRect(),this._hostRect=n},_triggerScroll:function(t){var n=this.getScrollInfo(),r=e.merge(t,n),p=this._lastScroll;this._lastScroll=n,this.fire(i,r),n.isScrollLeft?this.fire(o,r):n.isScrollRight&&this.fire(u,r),n.isScrollUp?this.fire(a,r):n.isScrollDown&&this.fire(s,r),n.atBottom&&(!p.atBottom||n.scrollHeight>p.scrollHeight)&&this.fire(f,r),n.atLeft&&!p.atLeft&&this.fire(l,r),n.atRight&&(!p.atRight||n.scrollWidth>p.scrollWidth)&&this.fire(c,r),n.atTop&&!p.atTop&&this.fire(h,r)},_afterHostScroll:function(e){var t=this;clearTimeout(this._scrollTimeout),this._scrollTimeout=setTimeout(function(){t._triggerScroll(e)},this._scrollDelay)},_afterResize:function(){this.refreshDimensions()},_afterScrollDelayChange:function(e){this._scrollDelay=e.newVal},_afterScrollMarginChange:function(e){this._scrollMargin=e.newVal},_afterWindowScroll:function(){this._refreshHostBoundingRect()}},{NS:"scrollInfo",ATTRS:{scrollDelay:{value:50},scrollMargin:{value:50}}})},"3.12.0",{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]}); diff --git a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js similarity index 67% rename from lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js rename to lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js index b995d40d559..78e55d60b8f 100644 --- a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js @@ -1,6 +1,14 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-scroll-info', function (Y, NAME) { +/*jshint onevar:false */ + /** Provides the ScrollInfo Node plugin, which exposes convenient events and methods related to scrolling. @@ -29,6 +37,9 @@ the current scroll position. @since 3.7.0 **/ +var doc = Y.config.doc, + win = Y.config.win; + /** Fired when the user scrolls within the host node. @@ -162,14 +173,53 @@ var EVT_SCROLL = 'scroll', EVT_SCROLL_TO_TOP = 'scrollToTop'; Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { + // -- Protected Properties ------------------------------------------------- + + /** + Height of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winHeight`. + + @property {Number} _height + @protected + **/ + + /** + Whether or not the host node is the `` element. + + @property {Boolean} _hostIsBody + @protected + **/ + + /** + Width of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winWidth`. + + @property {Number} _width + @protected + **/ + + /** + Height of the viewport in pixels. + + @property {Number} _winHeight + @protected + **/ + + /** + Width of the viewport in pixels. + + @property {Number} _winWidth + @protected + **/ + // -- Lifecycle Methods ---------------------------------------------------- initializer: function (config) { // Cache for quicker lookups in the critical path. - this._host = config.host; - this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; - this._scrollDelay = this.get('scrollDelay'); - this._scrollMargin = this.get('scrollMargin'); - this._scrollNode = this._getScrollNode(); + this._host = config.host; + this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; + this._scrollDelay = this.get('scrollDelay'); + this._scrollMargin = this.get('scrollMargin'); + this._scrollNode = this._getScrollNode(); this.refreshDimensions(); @@ -179,8 +229,8 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, destructor: function () { - (new Y.EventHandle(this._events)).detach(); - delete this._events; + new Y.EventHandle(this._events).detach(); + this._events = null; }, // -- Public Methods ------------------------------------------------------- @@ -205,45 +255,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return false; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return false; - } - - // If we get here, the element isn't within the viewport. - return true; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return !this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -266,45 +282,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return true; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return true; - } - - // If we get here, the element isn't within the viewport. - return false; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -351,6 +333,24 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }; }, + /** + Returns `true` if _node_ is at least partially onscreen within the host + node, `false` otherwise. + + @method isNodeOnscreen + @param {HTMLElement|Node|String} node Node or selector to check. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _node_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + isNodeOnscreen: function (node, margin) { + node = Y.one(node); + return !!(node && this._isElementOnscreen(node._node, margin)); + }, + /** Refreshes cached position, height, and width dimensions for the host node. If the host node is the body, then the viewport height and width will be @@ -365,30 +365,28 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { @method refreshDimensions **/ refreshDimensions: function () { - // WebKit only returns reliable scroll info on the body, and only - // returns reliable height/width info on the documentElement, so we - // have to special-case it (see the other special case in - // _getScrollNode()). - // + var docEl = doc.documentElement; + // On iOS devices, documentElement.clientHeight/Width aren't reliable, - // but window.innerHeight/Width are. And no, dom-screen's viewport size - // methods don't account for this, which is why we do it here. - - var hostIsBody = this._hostIsBody, - iosHack = hostIsBody && Y.UA.ios, - win = Y.config.win, - el; - - if (hostIsBody && Y.UA.webkit) { - el = Y.config.doc.documentElement; + // but window.innerHeight/Width are. The dom-screen module's viewport + // size methods don't account for this, which is why we do it here. + if (Y.UA.ios) { + this._winHeight = win.innerHeight; + this._winWidth = win.innerWidth; } else { - el = this._scrollNode; + this._winHeight = docEl.clientHeight; + this._winWidth = docEl.clientWidth; } - this._height = iosHack ? win.innerHeight : el.clientHeight; - this._left = el.offsetLeft; - this._top = el.offsetTop; - this._width = iosHack ? win.innerWidth : el.clientWidth; + if (this._hostIsBody) { + this._height = this._winHeight; + this._width = this._winWidth; + } else { + this._height = this._scrollNode.clientHeight; + this._width = this._scrollNode.clientWidth; + } + + this._refreshHostBoundingRect(); }, // -- Protected Methods ---------------------------------------------------- @@ -408,13 +406,22 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { scrollMarginChange: this._afterScrollMarginChange }), - winNode.on('windowresize', this._afterResize, this), - - // If we're attached to the body, listen for the scroll event on the - // window, since doesn't have a scroll event. - (this._hostIsBody ? winNode : this._host).after( - 'scroll', this._afterScroll, this) + winNode.on('windowresize', this._afterResize, this) ]; + + // If the host node is the body, listen for the scroll event on the + // window, since doesn't have a scroll event. + if (this._hostIsBody) { + this._events.push(winNode.after('scroll', this._afterHostScroll, this)); + } else { + // The host node is not the body, but we still need to listen for + // window scroll events so we can determine whether nodes are + // onscreen. + this._events.push( + winNode.after('scroll', this._afterWindowScroll, this), + this._host.after('scroll', this._afterHostScroll, this) + ); + } }, /** @@ -430,10 +437,73 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { _getScrollNode: function () { // WebKit returns scroll coordinates on the body element, but other // browsers don't, so we have to use the documentElement. - return this._hostIsBody && !Y.UA.webkit ? Y.config.doc.documentElement : + return this._hostIsBody && !Y.UA.webkit ? doc.documentElement : Y.Node.getDOMNode(this._host); }, + /** + Underlying element-based implementation for `isNodeOnscreen()`. + + @method _isElementOnscreen + @param {HTMLElement} el HTML element. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _el_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + _isElementOnscreen: function (el, margin) { + var hostRect = this._hostRect, + rect = el.getBoundingClientRect(); + + if (typeof margin === 'undefined') { + margin = this._scrollMargin; + } + + // Determine whether any part of _el_ is within the visible region of + // the host element or the specified margin around the visible region of + // the host element. + return !(rect.top > hostRect.bottom + margin + || rect.bottom < hostRect.top - margin + || rect.right < hostRect.left - margin + || rect.left > hostRect.right + margin); + }, + + /** + Caches the bounding rect of the host node. + + If the host node is the body, the bounding rect will be faked to represent + the dimensions of the viewport, since the actual body dimensions may extend + beyond the viewport and we only care about the visible region. + + @method _refreshHostBoundingRect + @protected + **/ + _refreshHostBoundingRect: function () { + var winHeight = this._winHeight, + winWidth = this._winWidth, + + hostRect; + + if (this._hostIsBody) { + hostRect = { + bottom: winHeight, + height: winHeight, + left : 0, + right : winWidth, + top : 0, + width : winWidth + }; + + this._isHostOnscreen = true; + } else { + hostRect = this._scrollNode.getBoundingClientRect(); + } + + this._hostRect = hostRect; + }, + /** Mixes detailed scroll information into the given DOM `scroll` event facade and fires appropriate local events. @@ -487,24 +557,13 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { // -- Protected Event Handlers --------------------------------------------- /** - Handles browser resize events. + Handles DOM `scroll` events on the host node. - @method _afterResize + @method _afterHostScroll @param {EventFacade} e @protected **/ - _afterResize: function (e) { - this.refreshDimensions(); - }, - - /** - Handles DOM `scroll` events. - - @method _afterScroll - @param {EventFacade} e - @protected - **/ - _afterScroll: function (e) { + _afterHostScroll: function (e) { var self = this; clearTimeout(this._scrollTimeout); @@ -514,6 +573,16 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, this._scrollDelay); }, + /** + Handles browser resize events. + + @method _afterResize + @protected + **/ + _afterResize: function () { + this.refreshDimensions(); + }, + /** Caches the `scrollDelay` value after that attribute changes to allow quicker lookups in critical path code. @@ -536,6 +605,17 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { **/ _afterScrollMarginChange: function (e) { this._scrollMargin = e.newVal; + }, + + /** + Handles DOM `scroll` events on the window. + + @method _afterWindowScroll + @param {EventFacade} e + @protected + **/ + _afterWindowScroll: function () { + this._refreshHostBoundingRect(); } }, { NS: 'scrollInfo', @@ -578,4 +658,4 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }); -}, '3.9.1', {"requires": ["base-build", "dom-screen", "event-resize", "node-pluginhost", "plugin"]}); +}, '3.12.0', {"requires": ["array-extras", "base-build", "event-resize", "node-pluginhost", "plugin", "selector"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style-debug.js b/lib/yuilib/3.12.0/node-style/node-style-debug.js similarity index 93% rename from lib/yuilib/3.9.1/build/node-style/node-style-debug.js rename to lib/yuilib/3.12.0/node-style/node-style-debug.js index beb15a29542..024cd86bcbb 100644 --- a/lib/yuilib/3.9.1/build/node-style/node-style-debug.js +++ b/lib/yuilib/3.12.0/node-style/node-style-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -104,4 +110,4 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style-min.js b/lib/yuilib/3.12.0/node-style/node-style-min.js similarity index 60% rename from lib/yuilib/3.9.1/build/node-style/node-style-min.js rename to lib/yuilib/3.12.0/node-style/node-style-min.js index 76a5501a1a4..cfbea608e1d 100644 --- a/lib/yuilib/3.9.1/build/node-style/node-style-min.js +++ b/lib/yuilib/3.12.0/node-style/node-style-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("node-style",function(e,t){(function(e){e.mix(e.Node.prototype,{setStyle:function(t,n){return e.DOM.setStyle(this._node,t,n),this},setStyles:function(t){return e.DOM.setStyles(this._node,t),this},getStyle:function(t){return e.DOM.getStyle(this._node,t)},getComputedStyle:function(t){return e.DOM.getComputedStyle(this._node,t)}}),e.NodeList.importMethod(e.Node.prototype,["getStyle","getComputedStyle","setStyle","setStyles"])})(e)},"3.9.1",{requires:["dom-style","node-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-style",function(e,t){(function(e){e.mix(e.Node.prototype,{setStyle:function(t,n){return e.DOM.setStyle(this._node,t,n),this},setStyles:function(t){return e.DOM.setStyles(this._node,t),this},getStyle:function(t){return e.DOM.getStyle(this._node,t)},getComputedStyle:function(t){return e.DOM.getComputedStyle(this._node,t)}}),e.NodeList.importMethod(e.Node.prototype,["getStyle","getComputedStyle","setStyle","setStyles"])})(e)},"3.12.0",{requires:["dom-style","node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style.js b/lib/yuilib/3.12.0/node-style/node-style.js similarity index 93% rename from lib/yuilib/3.9.1/build/node-style/node-style.js rename to lib/yuilib/3.12.0/node-style/node-style.js index beb15a29542..024cd86bcbb 100644 --- a/lib/yuilib/3.9.1/build/node-style/node-style.js +++ b/lib/yuilib/3.12.0/node-style/node-style.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -104,4 +110,4 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop-debug.js b/lib/yuilib/3.12.0/oop/oop-debug.js similarity index 76% rename from lib/yuilib/3.9.1/build/oop/oop-debug.js rename to lib/yuilib/3.12.0/oop/oop-debug.js index a4c603c4007..5a9beb94de9 100644 --- a/lib/yuilib/3.9.1/build/oop/oop-debug.js +++ b/lib/yuilib/3.12.0/oop/oop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('oop', function (Y, NAME) { /** @@ -234,56 +240,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -314,23 +330,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -348,7 +361,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -399,4 +411,4 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop-min.js b/lib/yuilib/3.12.0/oop/oop-min.js similarity index 52% rename from lib/yuilib/3.9.1/build/oop/oop-min.js rename to lib/yuilib/3.12.0/oop/oop-min.js index 6738b9be8a6..6e327432e0f 100644 --- a/lib/yuilib/3.9.1/build/oop/oop-min.js +++ b/lib/yuilib/3.12.0/oop/oop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function(e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){if(!n.isObject(t))return t;if(e.instanceOf(t,YUI))return t;var f,l=a||{},c,h=e.each;switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return!t.addEventListener&&!t.attachEvent&&h(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function(e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){var f,l,c;if(!n.isObject(t)||e.instanceOf(t,YUI)||t.addEventListener||t.attachEvent)return t;l=a||{};switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return e.each(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop.js b/lib/yuilib/3.12.0/oop/oop.js similarity index 76% rename from lib/yuilib/3.9.1/build/oop/oop.js rename to lib/yuilib/3.12.0/oop/oop.js index a4c603c4007..5a9beb94de9 100644 --- a/lib/yuilib/3.9.1/build/oop/oop.js +++ b/lib/yuilib/3.12.0/oop/oop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('oop', function (Y, NAME) { /** @@ -234,56 +240,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -314,23 +330,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -348,7 +361,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -399,4 +411,4 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css b/lib/yuilib/3.12.0/overlay/assets/overlay-core.css similarity index 54% rename from lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css rename to lib/yuilib/3.12.0/overlay/assets/overlay-core.css index 954af0825c3..b94d63e5580 100644 --- a/lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css +++ b/lib/yuilib/3.12.0/overlay/assets/overlay-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay { position:absolute; } diff --git a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css similarity index 96% rename from lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css rename to lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css index e92595678e2..c5b7c85f0c6 100644 --- a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css +++ b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night{ background-color:#000; font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; diff --git a/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css new file mode 100644 index 00000000000..f62197e4fa1 --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}.yui3-skin-night{background-color:#000;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#fff}.yui3-skin-night .yui3-overlay-content ul,ol,li{margin:0;padding:0;list-style:none;zoom:1}.yui3-skin-night .yui3-overlay-content li{*float:left}.yui3-skin-night .yui3-overlay-content{background-color:#6d6e6e;-moz-box-shadow:0 0 17px rgba(0,0,0,0.58);-webkit-box-shadow:0 0 17px rgba(0,0,0,0.58);box-shadow:0 0 17px rgba(0,0,0,0.58);-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-overlay-content .yui3-widget-hd{background-color:#6d6e6e;-moz-border-radius:7px 7px 0 0;-webkit-border-radius:7px 7px 0 0;border-radius:7px 7px 0 0;color:#fff;margin:0;padding:20px 22px 0;font-size:147%}.yui3-skin-night .yui3-overlay-content .yui3-widget-bd{padding:11px 22px 17px;font-size:92%}.yui3-skin-night .yui3-overlay .yui3-widget-bd li{margin:.04em}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft{background-color:#575858;border-top:solid 1px #494a4a;-moz-border-radius:0 0 7px 7px;-webkit-border-radius:0 0 7px 7px;border-radius:0 0 7px 7px;padding:17px 25px 20px;text-align:center}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li{margin:3px;display:inline-block}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li a{border:solid 1px #1b1c1c;border-radius:6px;-moz-box-shadow:0 1px #677478;-webkit-box-shadow:0 1px #677478;box-shadow:0 1px #677478;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:first-child{margin-left:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child{margin-right:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child a{border:solid 1px #520e00;-moz-box-shadow:0 1px #7d5d57;-webkit-box-shadow:0 1px #7d5d57;box-shadow:0 1px #7d5d57;background-color:#901704;background:-moz-linear-gradient(100% 0 270deg,#ab1c0b,#7b1400);background:-webkit-gradient(linear,left top,left bottom,from(#ab1c0b),to(#7b1400));margin-right:0}#yui3-widget-mask{background-color:#000;opacity:.5}#yui3-css-stamp.skin-night-overlay{display:none} diff --git a/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css new file mode 100644 index 00000000000..ab09cf0948f --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css @@ -0,0 +1,7 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + diff --git a/lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css similarity index 57% rename from lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css rename to lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css index c2a201aad81..142828f28ee 100644 --- a/lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css +++ b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}#yui3-css-stamp.skin-sam-overlay{display:none} diff --git a/lib/yuilib/3.9.1/build/overlay/overlay-debug.js b/lib/yuilib/3.12.0/overlay/overlay-debug.js similarity index 88% rename from lib/yuilib/3.9.1/build/overlay/overlay-debug.js rename to lib/yuilib/3.12.0/overlay/overlay-debug.js index ffa19cba05d..886ed3bd177 100644 --- a/lib/yuilib/3.9.1/build/overlay/overlay-debug.js +++ b/lib/yuilib/3.12.0/overlay/overlay-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('overlay', function (Y, NAME) { /** @@ -27,7 +33,7 @@ YUI.add('overlay', function (Y, NAME) { Y.Overlay = Y.Base.create("overlay", Y.Widget, [Y.WidgetStdMod, Y.WidgetPosition, Y.WidgetStack, Y.WidgetPositionAlign, Y.WidgetPositionConstrain]); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-stdmod", diff --git a/lib/yuilib/3.12.0/overlay/overlay-min.js b/lib/yuilib/3.12.0/overlay/overlay-min.js new file mode 100644 index 00000000000..c5d32265eb8 --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/overlay-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("overlay",function(e,t){e.Overlay=e.Base.create("overlay",e.Widget,[e.WidgetStdMod,e.WidgetPosition,e.WidgetStack,e.WidgetPositionAlign,e.WidgetPositionConstrain])},"3.12.0",{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/overlay/overlay.js b/lib/yuilib/3.12.0/overlay/overlay.js similarity index 88% rename from lib/yuilib/3.9.1/build/overlay/overlay.js rename to lib/yuilib/3.12.0/overlay/overlay.js index ffa19cba05d..886ed3bd177 100644 --- a/lib/yuilib/3.9.1/build/overlay/overlay.js +++ b/lib/yuilib/3.12.0/overlay/overlay.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('overlay', function (Y, NAME) { /** @@ -27,7 +33,7 @@ YUI.add('overlay', function (Y, NAME) { Y.Overlay = Y.Base.create("overlay", Y.Widget, [Y.WidgetStdMod, Y.WidgetPosition, Y.WidgetStack, Y.WidgetPositionAlign, Y.WidgetPositionConstrain]); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-stdmod", diff --git a/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js b/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js new file mode 100644 index 00000000000..4f726b86a23 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js @@ -0,0 +1,153 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-core', function (Y, NAME) { + +/** + Paginator's core functionality consists of keeping track of the current page + being displayed and providing information for previous and next pages. + + @module paginator + @submodule paginator-core + @since 3.11.0 + */ + +/** + _API docs for this extension are included in the Paginator class._ + + Class extension providing the core API and structure for the Paginator module. + + Use this class extension with Widget or another Base-based superclass to + create the basic Paginator model API and composing class structure. + + @class Paginator.Core + @for Paginator + @since 3.11.0 + */ + +var PaginatorCore = Y.namespace('Paginator').Core = function () {}; + +PaginatorCore.ATTRS = { + /** + Current page count. First page is 1. + + @attribute page + @type Number + @default 1 + **/ + page: { + value: 1 + }, + + /** + Total number of pages to display + + @readOnly + @attribute totalPages + @type Number + **/ + totalPages: { + readOnly: true, + getter: '_getTotalPagesFn' + }, + + /** + Maximum number of items per page. A value of negative one (-1) indicates + all items on one page. + + @attribute itemsPerPage + @type Number + @default 10 + **/ + itemsPerPage: { + value: 10 + }, + + /** + Total number of items in all pages. + + @attribute totalItems + @type Number + @default 0 + **/ + totalItems: { + value: 0 + } +}; + +Y.mix(PaginatorCore.prototype, { + /** + Sets the page to the previous page in the set, if there is a previous page. + @method prevPage + @chainable + */ + prevPage: function () { + if (this.hasPrevPage()) { + this.set('page', this.get('page') - 1); + } + + return this; + }, + + /** + Sets the page to the next page in the set, if there is a next page. + + @method nextPage + @chainable + */ + nextPage: function () { + if (this.hasNextPage()) { + this.set('page', this.get('page') + 1); + } + + return this; + }, + + /** + Returns True if there is a previous page in the set. + + @method hasPrevPage + @return {Boolean} `true` if there is a previous page, `false` otherwise. + */ + hasPrevPage: function () { + return this.get('page') > 1; + }, + + /** + Returns True if there is a next page in the set. + + If totalItems isn't set, assume there is always next page. + + @method hasNextPage + @return {Boolean} `true` if there is a next page, `false` otherwise. + */ + hasNextPage: function () { + return (!this.get('totalItems') || this.get('page') < this.get('totalPages')); + }, + + + //--- P R O T E C T E D + + /** + Returns the total number of pages based on the total number of + items provided and the number of items per page + + @protected + @method _getTotalPagesFn + @return {Number} Total number of pages based on total number of items and + items per page or one if itemsPerPage is less than one + */ + _getTotalPagesFn: function () { + var itemsPerPage = this.get('itemsPerPage'); + + return (itemsPerPage < 1) ? 1 : Math.ceil(this.get('totalItems') / itemsPerPage); + } +}); + + + +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js b/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js new file mode 100644 index 00000000000..0a2a53a271e --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator-core",function(e,t){var n=e.namespace("Paginator").Core=function(){};n.ATTRS={page:{value:1},totalPages:{readOnly:!0,getter:"_getTotalPagesFn"},itemsPerPage:{value:10},totalItems:{value:0}},e.mix(n.prototype,{prevPage:function(){return this.hasPrevPage()&&this.set("page",this.get("page")-1),this},nextPage:function(){return this.hasNextPage()&&this.set("page",this.get("page")+1),this},hasPrevPage:function(){return this.get("page")>1},hasNextPage:function(){return!this.get("totalItems")||this.get("page") 1; + }, + + /** + Returns True if there is a next page in the set. + + If totalItems isn't set, assume there is always next page. + + @method hasNextPage + @return {Boolean} `true` if there is a next page, `false` otherwise. + */ + hasNextPage: function () { + return (!this.get('totalItems') || this.get('page') < this.get('totalPages')); + }, + + + //--- P R O T E C T E D + + /** + Returns the total number of pages based on the total number of + items provided and the number of items per page + + @protected + @method _getTotalPagesFn + @return {Number} Total number of pages based on total number of items and + items per page or one if itemsPerPage is less than one + */ + _getTotalPagesFn: function () { + var itemsPerPage = this.get('itemsPerPage'); + + return (itemsPerPage < 1) ? 1 : Math.ceil(this.get('totalItems') / itemsPerPage); + } +}); + + + +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js b/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js new file mode 100644 index 00000000000..aad4a037e12 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js @@ -0,0 +1,74 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-url', function (Y, NAME) { + +/** + Adds in URL options for paginator links. + + @module paginator + @submodule paginator-url + @class Paginator.Url + @since 3.10.0 + */ + +function PaginatorUrl () {} + +PaginatorUrl.ATTRS = { + /** + URL to return formatted with the page number. URL uses `Y.Lang.sub` for page number stubstitutions. + + For example, if the page number is `3`, setting the `pageUrl` to `"?pg={page}"`, will result in `?pg=3` + + @attribute pageUrl + @type String + **/ + pageUrl: {} +}; + +PaginatorUrl.prototype = { + /** + Returns a formated URL for the previous page. + @method prevPageUrl + @return {String | null} Formatted URL for the previous page, or `null` if there is no previous page. + */ + prevPageUrl: function () { + return (this.hasPrevPage() && this.formatPageUrl(this.get('page') - 1)) || null; + }, + + /** + Returns a formated URL for the next page. + @method nextPageUrl + @return {String | null} Formatted URL for the next page or `null` if there is no next page. + */ + nextPageUrl: function () { + return (this.hasNextPage() && this.formatPageUrl(this.get('page') + 1)) || null; + }, + + /** + Returns a formated URL for the provided page number. + @method formatPageUrl + @param {Number} [page] Page value to be used in the formatted URL. If empty, page will be the value of the `page` ATTRS. + @return {String | null} Formatted URL for the page or `null` if there is not a `pageUrl` set. + */ + formatPageUrl: function (page) { + var pageUrl = this.get('pageUrl'); + if (pageUrl) { + return Y.Lang.sub(pageUrl, { + page: page || this.get('page') + }); + } + return null; + } +}; + +Y.namespace('Paginator').Url = PaginatorUrl; + +Y.Base.mix(Y.Paginator, [PaginatorUrl]); + + +}, '3.12.0', {"requires": ["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js b/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js new file mode 100644 index 00000000000..03dc569f6f0 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator-url",function(e,t){function n(){}n.ATTRS={pageUrl:{}},n.prototype={prevPageUrl:function(){return this.hasPrevPage()&&this.formatPageUrl(this.get("page")-1)||null},nextPageUrl:function(){return this.hasNextPage()&&this.formatPageUrl(this.get("page")+1)||null},formatPageUrl:function(t){var n=this.get("pageUrl");return n?e.Lang.sub(n,{page:t||this.get("page")}):null}},e.namespace("Paginator").Url=n,e.Base.mix(e.Paginator,[n])},"3.12.0",{requires:["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url.js b/lib/yuilib/3.12.0/paginator-url/paginator-url.js new file mode 100644 index 00000000000..aad4a037e12 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url.js @@ -0,0 +1,74 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-url', function (Y, NAME) { + +/** + Adds in URL options for paginator links. + + @module paginator + @submodule paginator-url + @class Paginator.Url + @since 3.10.0 + */ + +function PaginatorUrl () {} + +PaginatorUrl.ATTRS = { + /** + URL to return formatted with the page number. URL uses `Y.Lang.sub` for page number stubstitutions. + + For example, if the page number is `3`, setting the `pageUrl` to `"?pg={page}"`, will result in `?pg=3` + + @attribute pageUrl + @type String + **/ + pageUrl: {} +}; + +PaginatorUrl.prototype = { + /** + Returns a formated URL for the previous page. + @method prevPageUrl + @return {String | null} Formatted URL for the previous page, or `null` if there is no previous page. + */ + prevPageUrl: function () { + return (this.hasPrevPage() && this.formatPageUrl(this.get('page') - 1)) || null; + }, + + /** + Returns a formated URL for the next page. + @method nextPageUrl + @return {String | null} Formatted URL for the next page or `null` if there is no next page. + */ + nextPageUrl: function () { + return (this.hasNextPage() && this.formatPageUrl(this.get('page') + 1)) || null; + }, + + /** + Returns a formated URL for the provided page number. + @method formatPageUrl + @param {Number} [page] Page value to be used in the formatted URL. If empty, page will be the value of the `page` ATTRS. + @return {String | null} Formatted URL for the page or `null` if there is not a `pageUrl` set. + */ + formatPageUrl: function (page) { + var pageUrl = this.get('pageUrl'); + if (pageUrl) { + return Y.Lang.sub(pageUrl, { + page: page || this.get('page') + }); + } + return null; + } +}; + +Y.namespace('Paginator').Url = PaginatorUrl; + +Y.Base.mix(Y.Paginator, [PaginatorUrl]); + + +}, '3.12.0', {"requires": ["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator-debug.js b/lib/yuilib/3.12.0/paginator/paginator-debug.js new file mode 100644 index 00000000000..aebd6fe09a6 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator-debug.js @@ -0,0 +1,81 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator', function (Y, NAME) { + +/** + The Paginator utility allows you to display an item or a group of items + depending on the number of items you wish to display at one time. + + Paginator's primary functionality is contained in `paginator-core` and is mixed + into `paginator` to allow `paginator` to have extra functionality added to it + while leaving the core functionality untouched. This allows `paginator-core` to + remain available for use later on or used in isolation if it is the only piece + you need. + + Due to the vast number of interfaces a paginator could possibly consist of, + `Paginator` does not contain any ready to use UIs. However, `Paginator` is + ready to be used in any Based-based, module such as a Widget, by extending your + desired class and mixing in `Paginator`. This is displayed in the following + example: + +
    
    + YUI().use('paginator-url', 'widget', function (Y){
    +     var MyPaginator = Y.Base.create('my-paginator', Y.Widget, [Y.Paginator], {
    +
    +        renderUI: function () {
    +            var numbers = '',
    +                i, numberOfPages = this.get('totalPages');
    +
    +            for (i = 1; i <= numberOfPages; i++) {
    +                // use paginator-url's formatUrl method
    +                numbers += '<a href="' + this.formatUrl(i) + '">' + i + '</a>';
    +            }
    +
    +            this.get('boundingBox').append(numbers);
    +        },
    +
    +        bindUI: function () {
    +            this.get('boundingBox').delegate('click', function (e) {
    +                // let's not go to the page, just update internally
    +                e.preventDefault();
    +                this.set('page', parseInt(e.currentTarget.getContent(), 10));
    +            }, 'a', this);
    +
    +            this.after('pageChange', function (e) {
    +                // mark the link selected when it's the page being displayed
    +                var bb = this.get('boundingBox'),
    +                    activeClass = 'selected';
    +
    +                bb.all('a').removeClass(activeClass).item(e.newVal).addClass(activeClass);
    +            });
    +        }
    +
    +     });
    +
    +     var myPg = new MyPaginator({
    +                    totalItems: 100,
    +                    pageUrl: '?pg={page}'
    +                });
    +
    +     myPg.render();
    + });
    + 
    + + @module paginator + @main paginator + @class Paginator + @constructor + @since 3.11.0 + */ + +Y.Paginator = Y.mix( + Y.Base.create('pagiantor', Y.Base, [Y.Paginator.Core]), + Y.Paginator +); + +}, '3.12.0', {"requires": ["paginator-core"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator-min.js b/lib/yuilib/3.12.0/paginator/paginator-min.js new file mode 100644 index 00000000000..8adb407d152 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator",function(e,t){e.Paginator=e.mix(e.Base.create("pagiantor",e.Base,[e.Paginator.Core]),e.Paginator)},"3.12.0",{requires:["paginator-core"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator.js b/lib/yuilib/3.12.0/paginator/paginator.js new file mode 100644 index 00000000000..aebd6fe09a6 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator.js @@ -0,0 +1,81 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator', function (Y, NAME) { + +/** + The Paginator utility allows you to display an item or a group of items + depending on the number of items you wish to display at one time. + + Paginator's primary functionality is contained in `paginator-core` and is mixed + into `paginator` to allow `paginator` to have extra functionality added to it + while leaving the core functionality untouched. This allows `paginator-core` to + remain available for use later on or used in isolation if it is the only piece + you need. + + Due to the vast number of interfaces a paginator could possibly consist of, + `Paginator` does not contain any ready to use UIs. However, `Paginator` is + ready to be used in any Based-based, module such as a Widget, by extending your + desired class and mixing in `Paginator`. This is displayed in the following + example: + +
    
    + YUI().use('paginator-url', 'widget', function (Y){
    +     var MyPaginator = Y.Base.create('my-paginator', Y.Widget, [Y.Paginator], {
    +
    +        renderUI: function () {
    +            var numbers = '',
    +                i, numberOfPages = this.get('totalPages');
    +
    +            for (i = 1; i <= numberOfPages; i++) {
    +                // use paginator-url's formatUrl method
    +                numbers += '<a href="' + this.formatUrl(i) + '">' + i + '</a>';
    +            }
    +
    +            this.get('boundingBox').append(numbers);
    +        },
    +
    +        bindUI: function () {
    +            this.get('boundingBox').delegate('click', function (e) {
    +                // let's not go to the page, just update internally
    +                e.preventDefault();
    +                this.set('page', parseInt(e.currentTarget.getContent(), 10));
    +            }, 'a', this);
    +
    +            this.after('pageChange', function (e) {
    +                // mark the link selected when it's the page being displayed
    +                var bb = this.get('boundingBox'),
    +                    activeClass = 'selected';
    +
    +                bb.all('a').removeClass(activeClass).item(e.newVal).addClass(activeClass);
    +            });
    +        }
    +
    +     });
    +
    +     var myPg = new MyPaginator({
    +                    totalItems: 100,
    +                    pageUrl: '?pg={page}'
    +                });
    +
    +     myPg.render();
    + });
    + 
    + + @module paginator + @main paginator + @class Paginator + @constructor + @since 3.11.0 + */ + +Y.Paginator = Y.mix( + Y.Base.create('pagiantor', Y.Base, [Y.Paginator.Core]), + Y.Paginator +); + +}, '3.12.0', {"requires": ["paginator-core"]}); diff --git a/lib/yuilib/3.9.1/build/panel/assets/panel-core.css b/lib/yuilib/3.12.0/panel/assets/panel-core.css similarity index 75% rename from lib/yuilib/3.9.1/build/panel/assets/panel-core.css rename to lib/yuilib/3.12.0/panel/assets/panel-core.css index 284e1e6b633..108e8d35e03 100644 --- a/lib/yuilib/3.9.1/build/panel/assets/panel-core.css +++ b/lib/yuilib/3.12.0/panel/assets/panel-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-panel { position: absolute; } diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css b/lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css similarity index 96% rename from lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css rename to lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css index 92a46b48c16..2f571bb5a8f 100644 --- a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css +++ b/lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-panel { color: #FFFFFF; font-family: HelveticaNeue, arial, helvetica, clean, sans-serif; diff --git a/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css b/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css new file mode 100644 index 00000000000..f460b5b7cd3 --- /dev/null +++ b/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-night .yui3-panel{color:#fff;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-panel-content{background:#6d6e6e;-webkit-box-shadow:0 0 20px #000;-moz-box-shadow:0 0 20px #000;box-shadow:0 0 20px #000;border:1px solid black;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-hd{padding:11px 57px 11px 22px;min-height:17px;_height:17px;-webkit-border-top-left-radius:7px;-webkit-border-top-right-radius:7px;-moz-border-radius-topleft:7px;-moz-border-radius-topright:7px;border-top-left-radius:7px;border-top-right-radius:7px;font-weight:bold;color:white;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:11px}.yui3-skin-night .yui3-panel .yui3-widget-bd{padding:11px 22px 17px}.yui3-skin-night .yui3-panel .yui3-widget-ft{background-color:#575858;border-top:1px solid #494a4a;padding:6px 16px 8px;text-align:center;-webkit-border-bottom-right-radius:7px;-webkit-border-bottom-left-radius:7px;-moz-border-radius-bottomright:7px;-moz-border-radius-bottomleft:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-widget-buttons{bottom:0;position:relative;right:auto;width:100%;text-align:center;padding-bottom:0;margin-left:-5px;margin-right:-5px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-button{margin:5px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:22px;height:17px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat center 3px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:hover{background-color:#333}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:22px;margin:3px 0 0 1px}.yui3-skin-night .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-night-panel{display:none} diff --git a/lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png b/lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png new file mode 100644 index 00000000000..34fd6cdc644 Binary files /dev/null and b/lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png differ diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel-skin.css b/lib/yuilib/3.12.0/panel/assets/skins/sam/panel-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel-skin.css rename to lib/yuilib/3.12.0/panel/assets/skins/sam/panel-skin.css index a59f6c15a30..b8443a20dc2 100644 --- a/lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel-skin.css +++ b/lib/yuilib/3.12.0/panel/assets/skins/sam/panel-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-panel-content { -webkit-box-shadow: 0 0 5px #333; -moz-box-shadow: 0 0 5px #333; diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/panel.css b/lib/yuilib/3.12.0/panel/assets/skins/sam/panel.css similarity index 92% rename from lib/yuilib/3.9.1/build/assets/skins/sam/panel.css rename to lib/yuilib/3.12.0/panel/assets/skins/sam/panel.css index 335861933c1..2d05f89bc8e 100644 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/panel.css +++ b/lib/yuilib/3.12.0/panel/assets/skins/sam/panel.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-sam .yui3-panel-content{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333;border:1px solid black;background:white}.yui3-skin-sam .yui3-panel .yui3-widget-hd{padding:8px 28px 8px 8px;min-height:13px;_height:13px;color:white;background-color:#3961c5;background:-moz-linear-gradient(0% 100% 90deg,#2647a0 7%,#3d67ce 50%,#426fd9 100%);background:-webkit-gradient(linear,left bottom,left top,from(#2647a0),color-stop(0.07,#2647a0),color-stop(0.5,#3d67ce),to(#426fd9))}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:8px}.yui3-skin-sam .yui3-panel .yui3-widget-bd{padding:10px}.yui3-skin-sam .yui3-panel .yui3-widget-ft{background:#edf5ff;padding:8px;text-align:right}.yui3-skin-sam .yui3-panel .yui3-widget-ft .yui3-button{margin-left:8px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:13px;height:13px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat 1px 1px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:13px;margin:1px 0 0 1px}.yui3-skin-sam .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-sam-panel{display:none} diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/sam/sprite_icons.png b/lib/yuilib/3.12.0/panel/assets/skins/sam/sprite_icons.png similarity index 100% rename from lib/yuilib/3.9.1/build/panel/assets/skins/sam/sprite_icons.png rename to lib/yuilib/3.12.0/panel/assets/skins/sam/sprite_icons.png diff --git a/lib/yuilib/3.9.1/build/panel/panel-debug.js b/lib/yuilib/3.12.0/panel/panel-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/panel/panel-debug.js rename to lib/yuilib/3.12.0/panel/panel-debug.js index 8d735e3ea18..073edfad7fb 100644 --- a/lib/yuilib/3.9.1/build/panel/panel-debug.js +++ b/lib/yuilib/3.12.0/panel/panel-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('panel', function (Y, NAME) { // TODO: Change this description! @@ -97,7 +103,7 @@ Y.Panel = Y.Base.create('panel', Y.Widget, [ }); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-autohide", diff --git a/lib/yuilib/3.9.1/build/panel/panel-min.js b/lib/yuilib/3.12.0/panel/panel-min.js similarity index 50% rename from lib/yuilib/3.9.1/build/panel/panel-min.js rename to lib/yuilib/3.12.0/panel/panel-min.js index 122c5ccbe79..1a009119b90 100644 --- a/lib/yuilib/3.9.1/build/panel/panel-min.js +++ b/lib/yuilib/3.12.0/panel/panel-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("panel",function(e,t){var n=e.ClassNameManager.getClassName;e.Panel=e.Base.create("panel",e.Widget,[e.WidgetPosition,e.WidgetStdMod,e.WidgetAutohide,e.WidgetButtons,e.WidgetModality,e.WidgetPositionAlign,e.WidgetPositionConstrain,e.WidgetStack],{BUTTONS:{close:{label:"Close",action:"hide",section:"header",template:'
    * *
    form
    @@ -18950,7 +19807,7 @@ Y.mix(Y.IO.prototype, { -}, '3.9.1', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); +}, '3.12.0', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); YUI.add('json-parse', function (Y, NAME) { var _JSON = Y.config.global.JSON; @@ -18960,7 +19817,7 @@ Y.namespace('JSON').parse = function (obj, reviver, space) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition', function (Y, NAME) { /** @@ -19712,7 +20569,7 @@ Y.mix(Transition.toggles, { }); -}, '3.9.1', {"requires": ["node-style"]}); +}, '3.12.0', {"requires": ["node-style"]}); YUI.add('selector-css2', function (Y, NAME) { /** @@ -19775,13 +20632,15 @@ var PARENT_NODE = 'parentNode', _bruteQuery: function(selector, root, firstOnly) { var ret = [], nodes = [], + visited, tokens = Selector._tokenize(selector), token = tokens[tokens.length - 1], rootDoc = Y.DOM._getDoc(root), child, id, className, - tagName; + tagName, + isUniversal; if (token) { // prefilter nodes @@ -19802,16 +20661,30 @@ var PARENT_NODE = 'parentNode', } } else { // brute getElementsByTagName() + visited = []; child = root.firstChild; + isUniversal = tagName === "*"; while (child) { - // only collect HTMLElements - // match tag to supplement missing getElementsByTagName - if (child.tagName && (tagName === '*' || child.tagName === tagName)) { - nodes.push(child); + while (child) { + // IE 6-7 considers comment nodes as element nodes, and gives them the tagName "!". + // We can filter them out by checking if its tagName is > "@". + // This also avoids a superflous nodeType === 1 check. + if (child.tagName > "@" && (isUniversal || child.tagName === tagName)) { + nodes.push(child); + } + + // We may need to traverse back up the tree to find more unvisited subtrees. + visited.push(child); + child = child.firstChild; + } + + // Find the most recently visited node who has a next sibling. + while (visited.length > 0 && !child) { + child = visited.pop().nextSibling; } - child = child.nextSibling || child.firstChild; } } + if (nodes.length) { ret = Selector._filterNodes(nodes, tokens, firstOnly); } @@ -20156,8 +21029,7 @@ if (Y.Selector.useNative && Y.config.doc.querySelector) { } - -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('selector-css3', function (Y, NAME) { /** @@ -20309,7 +21181,7 @@ Y.Selector.combinators['~'] = { }; -}, '3.9.1', {"requires": ["selector-native", "selector-css2"]}); +}, '3.12.0', {"requires": ["selector-native", "selector-css2"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -20325,9 +21197,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -20349,7 +21221,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -20368,6 +21240,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -20420,7 +21301,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dump', function (Y, NAME) { /** @@ -20525,7 +21406,7 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition-timer', function (Y, NAME) { /** @@ -20859,14 +21740,14 @@ Transition.behaviors.top = Transition.behaviors.bottom = Transition.behaviors.ri Y.Transition = Transition; -}, '3.9.1', {"requires": ["transition"]}); +}, '3.12.0', {"requires": ["transition"]}); YUI.add('yui', function (Y, NAME) { // empty -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui", "oop", diff --git a/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js new file mode 100644 index 00000000000..227ce043494 --- /dev/null +++ b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js @@ -0,0 +1,34 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[ +],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" +}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name +:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.12.0",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM +,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*
    "}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.12.0",{requires:["dom-core"]}),YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n.toLowerCase()],i=t;return r&&e.Color[r]&&(i=e.Color[r](t)),i},toHex:function(t){var n=e.Color._convertTo(t,"hex"),r=n.toLowerCase()==="transparent";return n.charAt(0)!=="#"&&!r&&(n="#"+n),r?n.toLowerCase():n.toUpperCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,n==="HEX3"&&(i[0]+=i[0],i[1]+=i[1],i[2]+=i[2]),o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType +:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){if(t==="transparent")return t;var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"3.12.0",{requires:["yui-base"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e)},"3.12.0",{requires:["dom-base","color-base"]}),YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function( +){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.12.0",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.12.0",{requires:["dom-base","dom-style"]}),YUI.add("selector-native" +,function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;if(s)for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);if(o)for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){this.log(this.type+"->"+"sub: "+e.id);var r;return r=e.notify(t,this),!1===r||this.stopped>1?(this.log(this.type+" cancelled by subscriber"),!1):!0},log:function(e,t){},fire:function(){var e=[];return e.push.apply(e,arguments),this._fire(e)},_fire:function(e){return this.fireOnce&&this.fired?(this.log("fireOnce event: "+this.type+" already fired"),!0):(this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e))},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this.broadcast&&this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return this.log("Missing event-custom-complex needed to emit a facade for: "+this.type),e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e},w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n==="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=this._yuievt,r;n||(n=this._yuievt={events:{},targets:null,config:{host:this,context:this},chain:e.config.chain}),r=n.config,t&&(h(r,t,!0),t.chain!==undefined&&(n.chain=t.chain),t.prefix&&(r.prefix=t.prefix))};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o), +u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.12.0",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return g.log("queue "+g.type),E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g.log("Firing "+g.type),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n +.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"3.12.0",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),r=this,i;return e[0]&&e[0]._node&&(e[0]=e[0]._node),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(r._node),i=t.apply(n||r,e),i&&(i=c.scrubVal(i,r)),typeof i!="undefined"||(i=r),i})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t= +this._node;return e&&e._node&&(e=e._node),t===e},inDoc:function(e){var t=this._node;e=e?e._node||e:t[s];if(e.documentElement)return l.contains(e.documentElement,t)},getById:function(t){var n=this._node,r=l.byId(t,n[s]);return r&&l.contains(n,r)?r=e.one(r):r=null,r},ancestor:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.one(l.ancestor(this._node,h(t),n,h(r)))},ancestors:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.all(l.ancestors(this._node,h(t),n,h(r)))},previous:function(t,n){return e.one(l.elementByAxis(this._node,"previousSibling",h(t),n))},next:function(t,n){return e.one(l.elementByAxis(this._node,"nextSibling",h(t),n))},siblings:function(t){return e.all(l.siblings(this._node,h(t)))},one:function(t){return e.one(e.Selector.query(t,this._node,!0))},all:function(t){var n;return this._node&&(n=e.all(e.Selector.query(t,this._node)),n._query=t,n._queryRoot=this._node),n||e.all([])},test:function(t){return e.Selector.test(this._node,t)},remove:function(e){var t=this._node;return t&&t.parentNode&&t.parentNode.removeChild(t),e&&this.destroy(),this},replace:function(e){var t=this._node;return typeof e=="string"&&(e=c.create(e)),t.parentNode.replaceChild(c.getDOMNode(e),t),this},replaceChild:function(t,n){return typeof t=="string"&&(t=l.create(t)),e.one(this._node.replaceChild(c.getDOMNode(t),c.getDOMNode(n)))},destroy:function(t){var n=e.config.doc.uniqueID?"uniqueID":"_yuid",r;this.purge(),this.unplug&&this.unplug(),this.clearData(),t&&e.NodeList.each(this.all("*"),function(t){r=c._instances[t[n]],r?r.destroy():e.Event.purgeElement(t)}),this._node=null,this._stateProxy=null,delete c._instances[this._yuid]},invoke:function(e,t,n,r,i,s){var o=this._node,u;return t&&t._node&&(t=t._node),n&&n._node&&(n=n._node),u=o[e](t,n,r,i,s),c.scrubVal(u,this)},swap:e.config.doc.documentElement.swapNode?function(e){this._node.swapNode(c.getDOMNode(e))}:function(e){e=c.getDOMNode(e);var t=this._node,n=e.parentNode,r=e.nextSibling;return r===t?n.insertBefore(t,e):e===t.nextSibling?n.insertBefore(e,t):(t.parentNode.replaceChild(e,t),l.addHTML(n,t,r)),this},hasMethod:function(e){var t=this._node;return!(!(t&&e in t&&typeof t[e]!="unknown")||typeof t[e]!="function"&&String(t[e]).indexOf("function")!==1)},isFragment:function(){return this.get("nodeType")===11},empty:function(){return this.get("childNodes").remove().destroy(!0),this},getDOMNode:function(){return this._node}},!0),e.Node=c,e.one=c.one;var p=function(t){var n=[];t&&(typeof t=="string"?(this._query=t,t=e.Selector.query(t)):t.nodeType||l.isWindow(t)?t=[t]:t._node?t=[t._node]:t[0]&&t[0]._node?(e.Array.each(t,function(e){e._node&&n.push(e._node)}),t=n):t=e.Array(t,0,!0)),this._nodes=t||[]};p.NAME="NodeList",p.getDOMNodes=function(e){return e&&e._nodes?e._nodes:e},p.each=function(t,n,r){var i=t._nodes;i&&i.length&&e.Array.each(i,n,r||t)},p.addMethod=function(t,n,r){t&&n&&(p.prototype[t]=function(){var t=[],i=arguments;return e.Array.each(this._nodes,function(s){var o=s.uniqueID&&s.nodeType!==9?"uniqueID":"_yuid",u=e.Node._instances[s[o]],a,f;u||(u=p._getTempNode(s)),a=r||u,f=n.apply(a,i),f!==undefined&&f!==u&&(t[t.length]=f)}),t.length?t:this})},p.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,p.addMethod(n,t[n])):e.Array.each(n,function(e){p.importMethod(t,e)})},p._getTempNode=function(t){var n=p._tempNode;return n||(n=e.Node.create("
    "),p._tempNode=n),n._node=t,n._stateProxy=t,n},e.mix(p.prototype,{_invoke:function(e,t,n){var r=n?[]:this;return this.each(function(i){var s=i[e].apply(i,t);n&&r.push(s)}),r},item:function(t){return e.one((this._nodes||[])[t])},each:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){return i=e.one(i),t.call(n||i,i,s,r)}),r},batch:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){var o=e.Node._instances[i[u]];return o||(o=p._getTempNode(i)),t.call(n||o,o,s,r)}),r},some:function(t,n){var r=this;return e.Array.some(this._nodes,function(i,s){return i=e.one(i),n=n||i,t.call(n,i,s,r)})},toFrag:function(){return e.one(e.DOM._nl2frag(this._nodes))},indexOf:function(t){return e.Array.indexOf(this._nodes,e.Node.getDOMNode(t))},filter:function(t){return e.all(e.Selector.filter(this._nodes,t))},modulus:function(t,n){n=n||0;var r=[];return p.each(this,function(e,i){i%t===n&&r.push(e)}),e.all(r)},odd:function(){return this.modulus(2,1)},even:function(){return this.modulus(2)},destructor:function(){},refresh:function(){var t,n=this._nodes,r=this._query,i=this._queryRoot;return r&&(i||n&&n[0]&&n[0].ownerDocument&&(i=n[0].ownerDocument),this._nodes=e.Selector.query(r,i)),this},size:function(){return this._nodes.length},isEmpty:function(){return this._nodes.length<1},toString:function(){var e="",t=this[u]+": not bound to any nodes",n=this._nodes,i;return n&&n[0]&&(i=n[0],e+=i[r],i.id&&(e+="#"+i.id),i.className&&(e+="."+i.className.replace(" ",".")),n.length>1&&(e+="...["+n.length+" items]")),e||t},getDOMNodes:function(){return this._nodes}},!0),p.importMethod(e.Node.prototype,["destroy","empty","remove","set"]),p.prototype.get=function(t){var n=[],r=this._nodes,i=!1,s=p._getTempNode,o,u;return r[0]&&(o=e.Node._instances[r[0]._yuid]||s(r[0]),u=o._get(t),u&&u.nodeType&&(i=!0)),e.Array.each(r,function(r){o=e.Node._instances[r._yuid],o||(o=s(r)),u=o._get(t),i||(u=e.Node.scrubVal(u,o)),n.push(u)}),i?e.all(n):n},e.NodeList=p,e.all=function(e){return new p(e)},e.Node.all=e.all;var d=e.NodeList,v=Array.prototype,m={concat:1,pop:0,push:0,shift:0,slice:1,splice:1,unshift:0};e.Object.each(m,function(t,n){d.prototype[n]=function(){var r=[],i=0,s,o;while(typeof (s=arguments[i++])!="undefined")r.push(s._node||s._nodes||s);return o=v[n].apply(this._nodes,r),t?o=e.all(o):o=e.Node.scrubVal(o),o}}),e.Array.each(["removeChild","hasChildNodes","cloneNode","hasAttribute","scrollIntoView","getElementsByTagName","focus","blur","submit","reset","select","createCaption"],function(t){e.Node.prototype[t]=function( +e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"3.12.0",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(){var e=this;return e._node.nodeType===11&&(e=e.create("
    ").append(e.cloneNode(!0))),e.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"3.12.0",{requires:["event-base","node-core","dom-base","dom-style"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.12.0",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, +/*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ +self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.12.0",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username||null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u"@"&&(v||c.tagName===d)&&s.push(c),o.push(c),c=c.firstChild;while(o.length>0&&!c)c=o.pop().nextSibling}}s.length&&(i=u._filterNodes(s,a,r))}return i},_filterNodes:function(t,n,r){var i=0,s,o=n.length,a=o-1,f=[],l=t[0],c=l,h=e.Selector.getters,p,d,v,m,g,y,b,w;for(i=0;c=l=t[i++];){a=o-1,m=null;e:while(c&&c.tagName){v=n[a],b=v.tests,s=b.length;if(s&&!g)while(w=b[--s]){p=w[1],h[w[0]]?y=h[w[0]](c,w[0]):(y=c[w[0]],w[0]==="tagName"&&!u._isXML&&(y=y.toUpperCase()),typeof y!="string"&&y!==undefined&&y.toString?y=y.toString():y===undefined&&c.getAttribute&&(y=c.getAttribute(w[0],2)));if(p==="="&&y!==w[2]||typeof p!="string"&&p.test&&!p.test(y)||!p.test&&typeof p=="function"&&!p(c,w[0],w[2])){if(c=c[m])while(c&&(!c.tagName||v.tagName&&v.tagName!==c.tagName))c=c[m];continue e}}a--;if(!!g||!(d=v.combinator)){f.push(l);if(r)return f;break}m=d.axis,c=c[m];while(c&&!c.tagName)c=c[m];d.direct&&(m=null)}}return l=c=null,f},combinators:{" ":{axis:"parentNode"},">":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function(e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"3.12.0",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector +._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"3.12.0",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.12.0",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t=this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n +._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"3.12.0",{requires:["transition"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); diff --git a/lib/yuilib/3.9.1/build/simpleyui/simpleyui.js b/lib/yuilib/3.12.0/simpleyui/simpleyui.js similarity index 93% rename from lib/yuilib/3.9.1/build/simpleyui/simpleyui.js rename to lib/yuilib/3.12.0/simpleyui/simpleyui.js index d92d286ea37..4df14f54345 100644 --- a/lib/yuilib/3.9.1/build/simpleyui/simpleyui.js +++ b/lib/yuilib/3.12.0/simpleyui/simpleyui.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -4917,7 +4977,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5325,7 +5385,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5413,7 +5473,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5429,9 +5489,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5453,7 +5513,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5472,6 +5532,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5524,7 +5593,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5602,8 +5671,8 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"requires": ["yui-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('oop', function (Y, NAME) { /** @@ -5839,56 +5908,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -5919,23 +5998,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -5953,7 +6029,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -6004,7 +6079,7 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -6412,7 +6487,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -6801,7 +6876,7 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); YUI.add('dom-base', function (Y, NAME) { /** @@ -7485,7 +7560,499 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); +YUI.add('color-base', function (Y, NAME) { + +/** +Color provides static methods for color conversion. + + Y.Color.toRGB('f00'); // rgb(255, 0, 0) + + Y.Color.toHex('rgb(255, 255, 0)'); // #ffff00 + +@module color +@submodule color-base +@class Color +@since 3.8.0 +**/ + +var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/, + REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/, + REGEX_RGB = /rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/, + TYPES = { 'HEX': 'hex', 'RGB': 'rgb', 'RGBA': 'rgba' }, + CONVERTS = { 'hex': 'toHex', 'rgb': 'toRGB', 'rgba': 'toRGBA' }; + + +Y.Color = { + /** + @static + @property KEYWORDS + @type Object + @since 3.8.0 + **/ + KEYWORDS: { + 'black': '000', 'silver': 'c0c0c0', 'gray': '808080', 'white': 'fff', + 'maroon': '800000', 'red': 'f00', 'purple': '800080', 'fuchsia': 'f0f', + 'green': '008000', 'lime': '0f0', 'olive': '808000', 'yellow': 'ff0', + 'navy': '000080', 'blue': '00f', 'teal': '008080', 'aqua': '0ff' + }, + + /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + + @static + @property REGEX_HEX + @type RegExp + @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})(\ufffe)?/ + @since 3.8.0 + **/ + REGEX_HEX: REGEX_HEX, + + /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + + @static + @property REGEX_HEX3 + @type RegExp + @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})(\ufffe)?/ + @since 3.8.0 + **/ + REGEX_HEX3: REGEX_HEX3, + + /** + @static + @property REGEX_RGB + @type RegExp + @default /rgba?\(([0-9]{1,3}), ?([0-9]{1,3}), ?([0-9]{1,3}),? ?([.0-9]{1,3})?\)/ + @since 3.8.0 + **/ + REGEX_RGB: REGEX_RGB, + + re_RGB: REGEX_RGB, + + re_hex: REGEX_HEX, + + re_hex3: REGEX_HEX3, + + /** + @static + @property STR_HEX + @type String + @default #{*}{*}{*} + @since 3.8.0 + **/ + STR_HEX: '#{*}{*}{*}', + + /** + @static + @property STR_RGB + @type String + @default rgb({*}, {*}, {*}) + @since 3.8.0 + **/ + STR_RGB: 'rgb({*}, {*}, {*})', + + /** + @static + @property STR_RGBA + @type String + @default rgba({*}, {*}, {*}, {*}) + @since 3.8.0 + **/ + STR_RGBA: 'rgba({*}, {*}, {*}, {*})', + + /** + @static + @property TYPES + @type Object + @default {'rgb':'rgb', 'rgba':'rgba'} + @since 3.8.0 + **/ + TYPES: TYPES, + + /** + @static + @property CONVERTS + @type Object + @default {} + @since 3.8.0 + **/ + CONVERTS: CONVERTS, + + /** + Converts the provided string to the provided type. + You can use the `Y.Color.TYPES` to get a valid `to` type. + If the color cannot be converted, the original color will be returned. + + @public + @method convert + @param {String} str + @param {String} to + @return {String} + @since 3.8.0 + **/ + convert: function (str, to) { + var convert = Y.Color.CONVERTS[to.toLowerCase()], + clr = str; + + if (convert && Y.Color[convert]) { + clr = Y.Color[convert](str); + } + + return clr; + }, + + /** + Converts provided color value to a hex value string + + @public + @method toHex + @param {String} str Hex or RGB value string + @return {String} returns array of values or CSS string if options.css is true + @since 3.8.0 + **/ + toHex: function (str) { + var clr = Y.Color._convertTo(str, 'hex'), + isTransparent = clr.toLowerCase() === 'transparent'; + + if (clr.charAt(0) !== '#' && !isTransparent) { + clr = '#' + clr; + } + + return isTransparent ? clr.toLowerCase() : clr.toUpperCase(); + }, + + /** + Converts provided color value to an RGB value string + @public + @method toRGB + @param {String} str Hex or RGB value string + @return {String} + @since 3.8.0 + **/ + toRGB: function (str) { + var clr = Y.Color._convertTo(str, 'rgb'); + return clr.toLowerCase(); + }, + + /** + Converts provided color value to an RGB value string + @public + @method toRGBA + @param {String} str Hex or RGB value string + @return {String} + @since 3.8.0 + **/ + toRGBA: function (str) { + var clr = Y.Color._convertTo(str, 'rgba' ); + return clr.toLowerCase(); + }, + + /** + Converts the provided color string to an array of values where the + last value is the alpha value. Will return an empty array if + the provided string is not able to be parsed. + + NOTE: `(\ufffe)?` is added to `HEX` and `HEX3` Regular Expressions to + carve out a place for the alpha channel that is returned from + toArray without compromising any usage of the Regular Expression + + Y.Color.toArray('fff'); // ['ff', 'ff', 'ff', 1] + Y.Color.toArray('rgb(0, 0, 0)'); // ['0', '0', '0', 1] + Y.Color.toArray('rgba(0, 0, 0, 0)'); // ['0', '0', '0', 1] + + + + @public + @method toArray + @param {String} str + @return {Array} + @since 3.8.0 + **/ + toArray: function(str) { + // parse with regex and return "matches" array + var type = Y.Color.findType(str).toUpperCase(), + regex, + arr, + length, + lastItem; + + if (type === 'HEX' && str.length < 5) { + type = 'HEX3'; + } + + if (type.charAt(type.length - 1) === 'A') { + type = type.slice(0, -1); + } + + regex = Y.Color['REGEX_' + type]; + + if (regex) { + arr = regex.exec(str) || []; + length = arr.length; + + if (length) { + + arr.shift(); + length--; + + if (type === 'HEX3') { + arr[0] += arr[0]; + arr[1] += arr[1]; + arr[2] += arr[2]; + } + + lastItem = arr[length - 1]; + if (!lastItem) { + arr[length - 1] = 1; + } + } + } + + return arr; + + }, + + /** + Converts the array of values to a string based on the provided template. + @public + @method fromArray + @param {Array} arr + @param {String} template + @return {String} + @since 3.8.0 + **/ + fromArray: function(arr, template) { + arr = arr.concat(); + + if (typeof template === 'undefined') { + return arr.join(', '); + } + + var replace = '{*}'; + + template = Y.Color['STR_' + template.toUpperCase()]; + + if (arr.length === 3 && template.match(/\{\*\}/g).length === 4) { + arr.push(1); + } + + while ( template.indexOf(replace) >= 0 && arr.length > 0) { + template = template.replace(replace, arr.shift()); + } + + return template; + }, + + /** + Finds the value type based on the str value provided. + @public + @method findType + @param {String} str + @return {String} + @since 3.8.0 + **/ + findType: function (str) { + if (Y.Color.KEYWORDS[str]) { + return 'keyword'; + } + + var index = str.indexOf('('), + key; + + if (index > 0) { + key = str.substr(0, index); + } + + if (key && Y.Color.TYPES[key.toUpperCase()]) { + return Y.Color.TYPES[key.toUpperCase()]; + } + + return 'hex'; + + }, // return 'keyword', 'hex', 'rgb' + + /** + Retrives the alpha channel from the provided string. If no alpha + channel is present, `1` will be returned. + @protected + @method _getAlpha + @param {String} clr + @return {Number} + @since 3.8.0 + **/ + _getAlpha: function (clr) { + var alpha, + arr = Y.Color.toArray(clr); + + if (arr.length > 3) { + alpha = arr.pop(); + } + + return +alpha || 1; + }, + + /** + Returns the hex value string if found in the KEYWORDS object + @protected + @method _keywordToHex + @param {String} clr + @return {String} + @since 3.8.0 + **/ + _keywordToHex: function (clr) { + var keyword = Y.Color.KEYWORDS[clr]; + + if (keyword) { + return keyword; + } + }, + + /** + Converts the provided color string to the value type provided as `to` + @protected + @method _convertTo + @param {String} clr + @param {String} to + @return {String} + @since 3.8.0 + **/ + _convertTo: function(clr, to) { + + if (clr === 'transparent') { + return clr; + } + + var from = Y.Color.findType(clr), + originalTo = to, + needsAlpha, + alpha, + method, + ucTo; + + if (from === 'keyword') { + clr = Y.Color._keywordToHex(clr); + from = 'hex'; + } + + if (from === 'hex' && clr.length < 5) { + if (clr.charAt(0) === '#') { + clr = clr.substr(1); + } + + clr = '#' + clr.charAt(0) + clr.charAt(0) + + clr.charAt(1) + clr.charAt(1) + + clr.charAt(2) + clr.charAt(2); + } + + if (from === to) { + return clr; + } + + if (from.charAt(from.length - 1) === 'a') { + from = from.slice(0, -1); + } + + needsAlpha = (to.charAt(to.length - 1) === 'a'); + if (needsAlpha) { + to = to.slice(0, -1); + alpha = Y.Color._getAlpha(clr); + } + + ucTo = to.charAt(0).toUpperCase() + to.substr(1).toLowerCase(); + method = Y.Color['_' + from + 'To' + ucTo ]; + + // check to see if need conversion to rgb first + // check to see if there is a direct conversion method + // convertions are: hex <-> rgb <-> hsl + if (!method) { + if (from !== 'rgb' && to !== 'rgb') { + clr = Y.Color['_' + from + 'ToRgb'](clr); + from = 'rgb'; + method = Y.Color['_' + from + 'To' + ucTo ]; + } + } + + if (method) { + clr = ((method)(clr, needsAlpha)); + } + + // process clr from arrays to strings after conversions if alpha is needed + if (needsAlpha) { + if (!Y.Lang.isArray(clr)) { + clr = Y.Color.toArray(clr); + } + clr.push(alpha); + clr = Y.Color.fromArray(clr, originalTo.toUpperCase()); + } + + return clr; + }, + + /** + Processes the hex string into r, g, b values. Will return values as + an array, or as an rgb string. + @protected + @method _hexToRgb + @param {String} str + @param {Boolean} [toArray] + @return {String|Array} + @since 3.8.0 + **/ + _hexToRgb: function (str, toArray) { + var r, g, b; + + /*jshint bitwise:false*/ + if (str.charAt(0) === '#') { + str = str.substr(1); + } + + str = parseInt(str, 16); + + r = str >> 16; + g = str >> 8 & 0xFF; + b = str & 0xFF; + + if (toArray) { + return [r, g, b]; + } + + return 'rgb(' + r + ', ' + g + ', ' + b + ')'; + }, + + /** + Processes the rgb string into r, g, b values. Will return values as + an array, or as a hex string. + @protected + @method _rgbToHex + @param {String} str + @param {Boolean} [toArray] + @return {String|Array} + @since 3.8.0 + **/ + _rgbToHex: function (str) { + /*jshint bitwise:false*/ + var rgb = Y.Color.toArray(str), + hex = rgb[2] | (rgb[1] << 8) | (rgb[0] << 16); + + hex = (+hex).toString(16); + + while (hex.length < 6) { + hex = '0' + hex; + } + + return '#' + hex; + } + +}; + + + +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dom-style', function (Y, NAME) { (function(Y) { @@ -7749,83 +8316,9 @@ Y_DOM.CUSTOM_STYLES.transformOrigin = { })(Y); -(function(Y) { -var PARSE_INT = parseInt, - RE = RegExp; - -Y.Color = { - KEYWORDS: { - black: '000', - silver: 'c0c0c0', - gray: '808080', - white: 'fff', - maroon: '800000', - red: 'f00', - purple: '800080', - fuchsia: 'f0f', - green: '008000', - lime: '0f0', - olive: '808000', - yellow: 'ff0', - navy: '000080', - blue: '00f', - teal: '008080', - aqua: '0ff' - }, - - re_RGB: /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i, - re_hex: /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i, - re_hex3: /([0-9A-F])/gi, - - toRGB: function(val) { - if (!Y.Color.re_RGB.test(val)) { - val = Y.Color.toHex(val); - } - - if(Y.Color.re_hex.exec(val)) { - val = 'rgb(' + [ - PARSE_INT(RE.$1, 16), - PARSE_INT(RE.$2, 16), - PARSE_INT(RE.$3, 16) - ].join(', ') + ')'; - } - return val; - }, - - toHex: function(val) { - val = Y.Color.KEYWORDS[val] || val; - if (Y.Color.re_RGB.exec(val)) { - val = [ - Number(RE.$1).toString(16), - Number(RE.$2).toString(16), - Number(RE.$3).toString(16) - ]; - - for (var i = 0; i < val.length; i++) { - if (val[i].length < 2) { - val[i] = '0' + val[i]; - } - } - - val = val.join(''); - } - - if (val.length < 6) { - val = val.replace(Y.Color.re_hex3, '$1$1'); - } - - if (val !== 'transparent' && val.indexOf('#') < 0) { - val = '#' + val; - } - - return val.toUpperCase(); - } -}; -})(Y); - -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base", "color-base"]}); YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -8128,7 +8621,7 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -8733,7 +9226,7 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); YUI.add('selector-native', function (Y, NAME) { (function(Y) { @@ -8974,8 +9467,11 @@ var Selector = { }, _nativeQuery: function(selector, root, one) { - if (Y.UA.webkit && selector.indexOf(':checked') > -1 && - (Y.Selector.pseudos && Y.Selector.pseudos.checked)) { // webkit (chrome, safari) fails to pick up "selected" with "checked" + if ( + (Y.UA.webkit || Y.UA.opera) && // webkit (chrome, safari) and Opera + selector.indexOf(':checked') > -1 && // fail to pick up "selected" with ":checked" + (Y.Selector.pseudos && Y.Selector.pseudos.checked) + ) { return Y.Selector.query(selector, root, one, true); // redo with skipNative true to try brute query } try { @@ -9103,12 +9599,12 @@ Y.mix(Y.Selector, Selector, true); })(Y); -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base"]}); YUI.add('selector', function (Y, NAME) { -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('event-custom-base', function (Y, NAME) { /** @@ -9146,12 +9642,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -9285,9 +9781,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -9413,10 +9906,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -9501,9 +9994,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -9541,7 +10031,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -9550,7 +10040,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -9564,258 +10054,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - // this.log("Creating " + this.type); - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -9834,6 +10135,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -9842,15 +10306,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -9878,12 +10362,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -9899,7 +10418,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -9914,24 +10433,41 @@ Y.CustomEvent.prototype = { if (!fn) { this.log('Invalid callback for CE: ' + this.type); } - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -9952,7 +10488,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -10002,25 +10538,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -10090,13 +10630,34 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { this.log('fireOnce event: ' + this.type + ' already fired'); return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -10130,7 +10691,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -10162,7 +10725,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -10189,7 +10752,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -10228,12 +10791,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -10287,7 +10853,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -10391,12 +10957,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -10514,14 +11080,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -10550,7 +11116,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -10561,39 +11127,38 @@ var L = Y.Lang, ET = function(opts) { + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -10789,6 +11354,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -10827,8 +11397,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -11019,53 +11592,102 @@ ET.prototype = { * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -11105,23 +11727,23 @@ ET.prototype = { } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -11130,30 +11752,63 @@ ET.prototype = { * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -11164,8 +11819,12 @@ ET.prototype = { // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -11173,17 +11832,15 @@ ET.prototype = { getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -11200,6 +11857,7 @@ ET.prototype = { */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -11298,7 +11956,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -11324,7 +11984,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -11409,7 +12069,7 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); YUI.add('event-custom-complex', function (Y, NAME) { @@ -11422,10 +12082,11 @@ YUI.add('event-custom-complex', function (Y, NAME) { var FACADE, FACADE_KEYS, + YObject = Y.Object, key, EMPTY = {}, CEProto = Y.CustomEvent.prototype, - ETProto = Y.EventTarget.prototype, + ETProto = Y.EventTarget.prototype, mixFacadeProps = function(facade, payload) { var p; @@ -11447,7 +12108,9 @@ var FACADE, Y.EventFacade = function(e, currentTarget) { - e = e || EMPTY; + if (!e) { + e = EMPTY; + } this._event = e; @@ -11546,151 +12209,209 @@ Y.mix(Y.EventFacade.prototype, { CEProto.fireComplex = function(args) { - var es, ef, q, queue, ce, ret, events, subs, postponed, - self = this, host = self.host || self, next, oldbubble; + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { - if (self.stack) { // queue this event if the current item in the queue bubbles - if (self.queuable && self.type != self.stack.next.type) { + if (self.queuable && self.type !== stack.next.type) { self.log('queue ' + self.type); - self.stack.queue.push([self, args]); + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + return true; } } - es = self.stack || { - // id of the first event in the stack - id: self.id, - next: self, - silent: self.silent, - stopped: 0, - prevented: 0, - bubbling: null, - type: self.type, - // defaultFnQueue: new Y.Queue(), - afterQueue: new Y.Queue(), - defaultTargetOnly: self.defaultTargetOnly, - queue: [] - }; - - subs = self.getSubs(); - - self.stopped = (self.type !== es.type) ? 0 : es.stopped; - self.prevented = (self.type !== es.type) ? 0 : es.prevented; + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; self.target = self.target || host; - - if (self.stoppedFn) { - events = new Y.EventTarget({ - fireOnce: true, - context: host - }); - - self.events = events; - - events.on('stopped', self.stoppedFn); - } - self.currentTarget = host; - self.details = args.slice(); // original arguments in the details + self.details = args.concat(); - // self.log("Firing " + self + ", " + "args: " + args); - self.log("Firing " + self.type); + if (hasPotentialSubscribers) { - self._facade = null; // kill facade to eliminate stale properties + es = stack || { - ef = self._getFacade(args); + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly - if (Y.Lang.isObject(args[0])) { - args[0] = ef; - } else { - args.unshift(ef); - } + }; - if (subs[0]) { - self._procSubs(subs[0], args, ef); - } + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; - // bubble if this is hosted in an event target and propagation has not been stopped - if (self.bubbles && host.bubble && !self.stopped) { + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; - oldbubble = es.bubbling; - - es.bubbling = self.type; - - if (es.type != self.type) { - es.stopped = 0; - es.prevented = 0; + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); } - ret = host.bubble(self, args, null, es); + // self.log("Firing " + self + ", " + "args: " + args); + self.log("Firing " + self.type); - self.stopped = Math.max(self.stopped, es.stopped); - self.prevented = Math.max(self.prevented, es.prevented); + self._facade = null; // kill facade to eliminate stale properties - es.bubbling = oldbubble; - } + ef = self._createFacade(args); - if (self.prevented) { - if (self.preventedFn) { - self.preventedFn.apply(host, args); + if (ons) { + self._procSubs(ons, args, ef); } - } else if (self.defaultFn && - ((!self.defaultTargetOnly && !es.defaultTargetOnly) || - host === ef.target)) { - self.defaultFn.apply(host, args); - } - // broadcast listeners are fired as discreet events on the - // YUI instance and potentially the YUI global. - self._broadcast(args); + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; - // Queue the after - if (subs[1] && !self.prevented && self.stopped < 2) { - if (es.id === self.id || self.type != host._yuievt.bubbling) { - self._procSubs(subs[1], args, ef); - while ((next = es.afterQueue.last())) { - next(); + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); } } else { - postponed = subs[1]; - if (es.execDefaultCnt) { - postponed = Y.merge(postponed); - Y.each(postponed, function(s) { - s.postponed = true; + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); }); } - es.afterQueue.add(function() { - self._procSubs(postponed, args, ef); - }); - } - } - - self.target = null; - - if (es.id === self.id) { - queue = es.queue; - - while (queue.length) { - q = queue.pop(); - ce = q[0]; - // set up stack to allow the next item to be processed - es.next = ce; - ce.fire.apply(ce, q[1]); } - self.stack = null; - } + self.target = null; - ret = !(self.stopped); + if (es.id === self.id) { - if (self.type != host._yuievt.bubbling) { - es.stopped = 0; - es.prevented = 0; - self.stopped = 0; - self.prevented = 0; + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } } // Kill the cached facade to free up memory. @@ -11700,31 +12421,62 @@ CEProto.fireComplex = function(args) { return ret; }; -CEProto._getFacade = function() { +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; - var ef = this._facade, o, - args = this.details; +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; if (!ef) { ef = new Y.EventFacade(this, this.currentTarget); } - // if the first argument is an object literal, apply the - // properties to the event facade - o = args && args[0]; - - if (Y.Lang.isObject(o, true)) { - + if (firstArgIsObj) { // protect the event facade properties - mixFacadeProps(ef, o); + mixFacadeProps(ef, firstArg); - // Allow the event type to be faked - // http://yuilibrary.com/projects/yui3/ticket/2528376 - ef.type = o.type || ef.type; + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } } // update the details field with the arguments - // ef.type = this.type; ef.details = this.details; // use the original target when the event bubbled to this target @@ -11739,6 +12491,23 @@ CEProto._getFacade = function() { return this._facade; }; +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + /** * Stop propagation to bubble targets * @for CustomEvent @@ -11812,8 +12581,14 @@ CEProto.halt = function(immediate) { * @for EventTarget */ ETProto.addTarget = function(o) { - this._yuievt.targets[Y.stamp(o)] = o; - this._yuievt.hasTargets = true; + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; }; /** @@ -11822,7 +12597,8 @@ ETProto.addTarget = function(o) { * @return EventTarget[] */ ETProto.getTargets = function() { - return Y.Object.values(this._yuievt.targets); + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; }; /** @@ -11832,7 +12608,15 @@ ETProto.getTargets = function() { * @for EventTarget */ ETProto.removeTarget = function(o) { - delete this._yuievt.targets[Y.stamp(o)]; + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } }; /** @@ -11844,8 +12628,14 @@ ETProto.removeTarget = function(o) { */ ETProto.bubble = function(evt, args, target, es) { - var targs = this._yuievt.targets, ret = true, - t, type = evt && evt.type, ce, i, bc, ce2, + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, originalTarget = target || (evt && evt.target) || this, oldbubble; @@ -11853,9 +12643,14 @@ ETProto.bubble = function(evt, args, target, es) { for (i in targs) { if (targs.hasOwnProperty(i)) { + t = targs[i]; - ce = t.getEvent(type, true); - ce2 = t.getSibling(type, ce); + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } if (ce2 && !ce) { ce = t.publish(type); @@ -11872,10 +12667,11 @@ ETProto.bubble = function(evt, args, target, es) { } } else { - ce.sibling = ce2; + if (ce2) { + ce.sibling = ce2; + } - // set the original target to that the target payload on the - // facade is correct. + // set the original target to that the target payload on the facade is correct. ce.target = originalTarget; ce.originalTarget = originalTarget; ce.currentTarget = t; @@ -11888,7 +12684,13 @@ ETProto.bubble = function(evt, args, target, es) { ce.stack = es; + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? ret = ret && ce.fire.apply(ce, args || evt.details || []); + ce.broadcast = bc; ce.originalTarget = null; @@ -11906,6 +12708,25 @@ ETProto.bubble = function(evt, args, target, es) { return ret; }; +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + FACADE = new Y.EventFacade(); FACADE_KEYS = {}; @@ -11914,7 +12735,8 @@ for (key in FACADE) { FACADE_KEYS[key] = true; } -}, '3.9.1', {"requires": ["event-custom-base"]}); + +}, '3.12.0', {"requires": ["event-custom-base"]}); YUI.add('node-core', function (Y, NAME) { /** @@ -12124,7 +12946,7 @@ Y_Node.addMethod = function(name, fn, context) { } args.unshift(node._node); - ret = fn.apply(node, args); + ret = fn.apply(context || node, args); if (ret) { // scrub truthy ret = Y_Node.scrubVal(ret, node); @@ -12552,10 +13374,15 @@ Y.mix(Y_Node.prototype, { * @return {NodeList} A NodeList instance for the matching HTMLCollection/Array. */ all: function(selector) { - var nodelist = Y.all(Y.Selector.query(selector, this._node)); - nodelist._query = selector; - nodelist._queryRoot = this._node; - return nodelist; + var nodelist; + + if (this._node) { + nodelist = Y.all(Y.Selector.query(selector, this._node)); + nodelist._query = selector; + nodelist._queryRoot = this._node; + } + + return nodelist || Y.all([]); }, // TODO: allow fn test @@ -13214,7 +14041,7 @@ var Y_NodeList = Y.NodeList, /** Removes the last from the NodeList and returns it. * @for NodeList * @method pop - * @return {Node} The last item in the NodeList. + * @return {Node | null} The last item in the NodeList, or null if the list is empty. */ 'pop': 0, /** Adds the given Node(s) to the end of the NodeList. @@ -13226,7 +14053,7 @@ var Y_NodeList = Y.NodeList, /** Removes the first item from the NodeList and returns it. * @for NodeList * @method shift - * @return {Node} The first item in the NodeList. + * @return {Node | null} The first item in the NodeList, or null if the NodeList is empty. */ 'shift': 0, /** Returns a new NodeList comprising the Nodes in the given range. @@ -13512,7 +14339,7 @@ Y.NodeList.importMethod(Y.Node.prototype, [ ]); -}, '3.9.1', {"requires": ["dom-core", "selector"]}); +}, '3.12.0', {"requires": ["dom-core", "selector"]}); YUI.add('node-base', function (Y, NAME) { /** @@ -13776,8 +14603,17 @@ Y.mix(Y_Node.prototype, { * @deprecated Use getHTML * @return {String} The current content */ - getContent: function(content) { - return this.get('innerHTML'); + getContent: function() { + var node = this; + + if (node._node.nodeType === 11) { // 11 === Node.DOCUMENT_FRAGMENT_NODE + // "this", when it is a document fragment, must be cloned because + // the nodes contained in the fragment actually disappear once + // the fragment is appended anywhere + node = node.create("
    ").append(node.cloneNode(true)); + } + + return node.get("innerHTML"); } }); @@ -14315,18 +15151,23 @@ Y.mix(Y_Node.prototype, { /** * The implementation for showing nodes. - * Default is to toggle the style.display property. + * Default is to remove the hidden attribute and reset the CSS style.display property. * @method _show * @protected * @chainable */ _show: function() { + this.removeAttribute('hidden'); + + // For back-compat we need to leave this in for browsers that + // do not visually hide a node via the hidden attribute + // and for users that check visibility based on style display. this.setStyle('display', ''); }, _isHidden: function() { - return Y.DOM.getStyle(this._node, 'display') === 'none'; + return this.hasAttribute('hidden') || Y.DOM.getComputedStyle(this._node, 'display') === 'none'; }, /** @@ -14385,12 +15226,17 @@ Y.mix(Y_Node.prototype, { /** * The implementation for hiding nodes. - * Default is to toggle the style.display property. + * Default is to set the hidden attribute to true and set the CSS style.display to 'none'. * @method _hide * @protected * @chainable */ _hide: function() { + this.setAttribute('hidden', ''); + + // For back-compat we need to leave this in for browsers that + // do not visually hide a node via the hidden attribute + // and for users that check visibility based on style display. this.setStyle('display', 'none'); } }); @@ -14669,7 +15515,7 @@ Y.mix(Y.NodeList.prototype, { }); -}, '3.9.1', {"requires": ["event-base", "node-core", "dom-base"]}); +}, '3.12.0', {"requires": ["event-base", "node-core", "dom-base", "dom-style"]}); (function () { var GLOBAL_ENV = YUI.Env; @@ -14829,7 +15675,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -15048,6 +15894,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -15069,8 +15916,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -15093,7 +15939,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { return false; } @@ -15376,6 +16222,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -15460,7 +16307,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -15574,7 +16421,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -15648,7 +16495,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -15755,7 +16602,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { executeItem(el, item); @@ -15772,7 +16619,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -15967,11 +16814,17 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + } + } } Event.Custom = Y.CustomEvent; @@ -16037,7 +16890,7 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); (function() { var stateChangeListener, @@ -16259,7 +17112,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -16274,7 +17127,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -16335,12 +17188,12 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); YUI.add('pluginhost-base', function (Y, NAME) { /** @@ -16521,7 +17374,7 @@ YUI.add('pluginhost-base', function (Y, NAME) { Y.namespace("Plugin").Host = PluginHost; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('pluginhost-config', function (Y, NAME) { /** @@ -16651,7 +17504,7 @@ YUI.add('pluginhost-config', function (Y, NAME) { }; -}, '3.9.1', {"requires": ["pluginhost-base"]}); +}, '3.12.0', {"requires": ["pluginhost-base"]}); YUI.add('event-delegate', function (Y, NAME) { /** @@ -16998,7 +17851,7 @@ delegate._applyFilter = function (filter, args, ce) { Y.delegate = Y.Event.delegate = delegate; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); YUI.add('node-event-delegate', function (Y, NAME) { /** @@ -17052,7 +17905,7 @@ Y.Node.prototype.delegate = function(type) { }; -}, '3.9.1', {"requires": ["node-base", "event-delegate"]}); +}, '3.12.0', {"requires": ["node-base", "event-delegate"]}); YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -17094,6 +17947,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -17138,7 +17996,7 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); YUI.add('node-screen', function (Y, NAME) { /** @@ -17365,7 +18223,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -17376,7 +18234,7 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -17482,7 +18340,7 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); YUI.add('querystring-stringify-simple', function (Y, NAME) { /*global Y */ @@ -17526,7 +18384,7 @@ QueryString.stringify = function (obj, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('io-base', function (Y, NAME) { /** @@ -18085,6 +18943,8 @@ IO.prototype = { *
    dataType
    *
    Set the value to 'XML' if that is the expected response * content type.
    + *
    credentials
    + *
    Set the value to 'true' to set XHR.withCredentials property to true.
    * * *
    form
    @@ -18532,7 +19392,7 @@ Y.mix(Y.IO.prototype, { -}, '3.9.1', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); +}, '3.12.0', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); YUI.add('json-parse', function (Y, NAME) { var _JSON = Y.config.global.JSON; @@ -18542,7 +19402,7 @@ Y.namespace('JSON').parse = function (obj, reviver, space) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition', function (Y, NAME) { /** @@ -19292,7 +20152,7 @@ Y.mix(Transition.toggles, { }); -}, '3.9.1', {"requires": ["node-style"]}); +}, '3.12.0', {"requires": ["node-style"]}); YUI.add('selector-css2', function (Y, NAME) { /** @@ -19355,13 +20215,15 @@ var PARENT_NODE = 'parentNode', _bruteQuery: function(selector, root, firstOnly) { var ret = [], nodes = [], + visited, tokens = Selector._tokenize(selector), token = tokens[tokens.length - 1], rootDoc = Y.DOM._getDoc(root), child, id, className, - tagName; + tagName, + isUniversal; if (token) { // prefilter nodes @@ -19382,16 +20244,30 @@ var PARENT_NODE = 'parentNode', } } else { // brute getElementsByTagName() + visited = []; child = root.firstChild; + isUniversal = tagName === "*"; while (child) { - // only collect HTMLElements - // match tag to supplement missing getElementsByTagName - if (child.tagName && (tagName === '*' || child.tagName === tagName)) { - nodes.push(child); + while (child) { + // IE 6-7 considers comment nodes as element nodes, and gives them the tagName "!". + // We can filter them out by checking if its tagName is > "@". + // This also avoids a superflous nodeType === 1 check. + if (child.tagName > "@" && (isUniversal || child.tagName === tagName)) { + nodes.push(child); + } + + // We may need to traverse back up the tree to find more unvisited subtrees. + visited.push(child); + child = child.firstChild; + } + + // Find the most recently visited node who has a next sibling. + while (visited.length > 0 && !child) { + child = visited.pop().nextSibling; } - child = child.nextSibling || child.firstChild; } } + if (nodes.length) { ret = Selector._filterNodes(nodes, tokens, firstOnly); } @@ -19735,8 +20611,7 @@ if (Y.Selector.useNative && Y.config.doc.querySelector) { } - -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('selector-css3', function (Y, NAME) { /** @@ -19888,7 +20763,7 @@ Y.Selector.combinators['~'] = { }; -}, '3.9.1', {"requires": ["selector-native", "selector-css2"]}); +}, '3.12.0', {"requires": ["selector-native", "selector-css2"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -19904,9 +20779,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -19928,7 +20803,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -19947,6 +20822,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -19999,7 +20883,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dump', function (Y, NAME) { /** @@ -20104,7 +20988,7 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition-timer', function (Y, NAME) { /** @@ -20438,14 +21322,14 @@ Transition.behaviors.top = Transition.behaviors.bottom = Transition.behaviors.ri Y.Transition = Transition; -}, '3.9.1', {"requires": ["transition"]}); +}, '3.12.0', {"requires": ["transition"]}); YUI.add('yui', function (Y, NAME) { // empty -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui", "oop", diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-x.png similarity index 74% rename from lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-x.png index bc0aa14ce4d..4cd29b45b9a 100644 Binary files a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-x.png differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-y.png similarity index 74% rename from lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-y.png index bc0aa14ce4d..9bcd2128baf 100644 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css index 6ae98e0a28a..1a3100dedda 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css new file mode 100644 index 00000000000..83f42bc7832 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail{height:35px;background-position:0 7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb{height:35px;width:19px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:13px;left:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:13px;right:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-3px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-43px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail{width:35px;background-position:7px 0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb{width:35px;height:19px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:13px;top:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:13px;bottom:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-image{left:-3px;top:0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-shadow{left:-43px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-audio-light-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css index 6ae98e0a28a..1a3100dedda 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png new file mode 100644 index 00000000000..f9f69a8ca92 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png new file mode 100644 index 00000000000..20120d34b92 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-x.png similarity index 74% rename from lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-x.png index bc0aa14ce4d..dc37bb24906 100644 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-x.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-y.png similarity index 74% rename from lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-y.png index 20f126029f1..7bb0d90e3d3 100644 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base-skin.css index 6fba7671bec..b7ffc9d2c98 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base.css new file mode 100644 index 00000000000..8e8644a3280 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail,.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail{height:35px;background-position:0 7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb{height:35px;width:19px}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:13px;left:-5px;width:5px;top:7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:13px;right:-5px;width:5px;top:7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-3px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-43px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail,.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail{width:35px;background-position:7px 0}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb{width:35px;height:19px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:13px;top:-5px;height:5px;left:7px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:13px;bottom:-5px;height:5px;left:7px}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-image{left:-3px;top:0}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-shadow{left:-43px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-audio-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-skin.css index 6fba7671bec..b7ffc9d2c98 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-x.png new file mode 100644 index 00000000000..e0fbfb2a39b Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-y.png new file mode 100644 index 00000000000..38dfc3f006a Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-y.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png new file mode 100644 index 00000000000..453fb64f38c Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-lines.png new file mode 100644 index 00000000000..8a3c981bbdf Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png new file mode 100644 index 00000000000..f1aa290eec7 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png new file mode 100644 index 00000000000..0555b19d613 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png new file mode 100644 index 00000000000..178aa85e139 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png new file mode 100644 index 00000000000..a47997f2557 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css index f8b2d51b56b..e4b5473ee6c 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css new file mode 100644 index 00000000000..39be9d731f2 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css index f8b2d51b56b..e4b5473ee6c 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png new file mode 100644 index 00000000000..bfdbe0db89e Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png new file mode 100644 index 00000000000..abed0253316 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png new file mode 100644 index 00000000000..037dca38de3 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y.png new file mode 100644 index 00000000000..e968ed42eb2 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png new file mode 100644 index 00000000000..b3f65d49968 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png new file mode 100644 index 00000000000..26374dfad07 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x.png new file mode 100644 index 00000000000..f257ec0006c Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png new file mode 100644 index 00000000000..798c2ce3c7e Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png new file mode 100644 index 00000000000..798c2ce3c7e Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png new file mode 100644 index 00000000000..d20d3c3e991 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css index ab74df9da99..ff007068459 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css new file mode 100644 index 00000000000..212baf54b64 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x;background-repeat:repeat-x}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y;background-repeat:repeat-y}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css index ab74df9da99..ff007068459 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png new file mode 100644 index 00000000000..849a4548c0e Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png new file mode 100644 index 00000000000..09baa964b83 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-line.png new file mode 100644 index 00000000000..153c65b1c08 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-line.png differ diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png similarity index 74% rename from lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png index 20f126029f1..4421d7027a7 100644 Binary files a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png new file mode 100644 index 00000000000..4040ee3522e Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png new file mode 100644 index 00000000000..4e5a4407015 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x.png new file mode 100644 index 00000000000..7079de67fb6 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png new file mode 100644 index 00000000000..af2bc24808b Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png new file mode 100644 index 00000000000..bc096bc773c Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css index bbeab1cd5b6..417ccdad646 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/night/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css new file mode 100644 index 00000000000..49692f374e5 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-night .yui3-slider-x .yui3-slider-rail,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-night .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb{height:26px;width:21px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-night .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb{width:26px;height:21px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-night-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css index 51483e63f12..c95e9a2e53a 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png new file mode 100644 index 00000000000..2045257c2d7 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png new file mode 100644 index 00000000000..5ea57f08ee0 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png new file mode 100644 index 00000000000..ce0ee5024fa Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png new file mode 100644 index 00000000000..7fedc219cef Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css index 913da7da0e4..3d691819aa3 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css new file mode 100644 index 00000000000..392ab65089d --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail{height:25px;background-position:0 3px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb{height:26px;width:24px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -17px;height:20px;left:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -37px;height:20px;right:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-7px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-47px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail{width:25px;background-position:3px 0}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb{width:26px;height:24px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-17px 0;width:20px;top:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-37px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-image{top:0;left:-7px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-shadow{top:0;left:-47px;opacity:.15;filter:alpha(opacity=15)}#yui3-css-stamp.skin-round-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css index 913da7da0e4..3d691819aa3 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png new file mode 100644 index 00000000000..858964b82f0 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x.png new file mode 100644 index 00000000000..df181708ffd Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png new file mode 100644 index 00000000000..2773a4a9f97 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y.png new file mode 100644 index 00000000000..8ed649cc7dc Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png new file mode 100644 index 00000000000..62a4e92d6cd Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png new file mode 100644 index 00000000000..86f0b8ca290 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base-skin.css index f548b9da5ea..8c68a48217d 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base.css new file mode 100644 index 00000000000..6b7e7af4765 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-round .yui3-slider-x .yui3-slider-rail,.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-round .yui3-slider-x .yui3-slider-rail{height:25px;background-position:0 3px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb{height:26px;width:24px}.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -17px;height:20px;left:-2px;width:5px}.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -37px;height:20px;right:-2px;width:5px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-7px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-47px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail,.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-round .yui3-slider-y .yui3-slider-rail{width:25px;background-position:3px 0}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb{width:26px;height:24px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-17px 0;width:20px;top:-2px;height:5px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-37px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-image{top:0;left:-8px}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-shadow{top:0;left:-48px;opacity:.15;filter:alpha(opacity=15)}#yui3-css-stamp.skin-round-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-skin.css similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-skin.css index f548b9da5ea..8c68a48217d 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x-grip.png new file mode 100644 index 00000000000..b80b8ac79de Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x-grip.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x.png new file mode 100644 index 00000000000..22ac2a5b94a Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png new file mode 100644 index 00000000000..1bf7ff3e444 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png new file mode 100644 index 00000000000..a8a0c620233 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png similarity index 74% rename from lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png index 20f126029f1..39ac404cc35 100644 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x.png new file mode 100644 index 00000000000..bdbc07cddce Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png new file mode 100644 index 00000000000..0553faa9a55 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y.png new file mode 100644 index 00000000000..a2913427e68 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base-skin.css index 44bc110b4cb..00829e427ef 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base.css new file mode 100644 index 00000000000..8d15d556107 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-skin.css index 44bc110b4cb..00829e427ef 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-x.png new file mode 100644 index 00000000000..3526ffc1536 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-x.png differ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-y.png new file mode 100644 index 00000000000..9aad18b5723 Binary files /dev/null and b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-y.png differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x-lines.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x-lines.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y-lines.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y-lines.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css index f07d1f7a977..878b84991c8 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css similarity index 93% rename from lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css index 91327390bc9..f1510ef323c 100644 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css index f07d1f7a977..878b84991c8 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-x.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-x.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-y.png similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-y.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css b/lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css similarity index 80% rename from lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css rename to lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css index 0bd472112f7..be540f68d4e 100644 --- a/lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css +++ b/lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider, .yui3-slider-rail { /* xbrowser inline-block styles */ diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css b/lib/yuilib/3.12.0/slider-base/assets/slider-core.css similarity index 80% rename from lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css rename to lib/yuilib/3.12.0/slider-base/assets/slider-core.css index 0bd472112f7..be540f68d4e 100644 --- a/lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css +++ b/lib/yuilib/3.12.0/slider-base/assets/slider-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider, .yui3-slider-rail { /* xbrowser inline-block styles */ diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong-dark.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2-dark.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong-dark.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2-dark.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2.png similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2.png diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js b/lib/yuilib/3.12.0/slider-base/slider-base-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js rename to lib/yuilib/3.12.0/slider-base/slider-base-debug.js index 5c77211bfff..a5408d459a8 100644 --- a/lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-base', function (Y, NAME) { /** @@ -760,4 +766,4 @@ Y.SliderBase = Y.extend( SliderBase, Y.Widget, { }); -}, '3.9.1', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); +}, '3.12.0', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base-min.js b/lib/yuilib/3.12.0/slider-base/slider-base-min.js similarity index 96% rename from lib/yuilib/3.9.1/build/slider-base/slider-base-min.js rename to lib/yuilib/3.12.0/slider-base/slider-base-min.js index 06a3135ba5a..0e1c726b98a 100644 --- a/lib/yuilib/3.9.1/build/slider-base/slider-base-min.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("slider-base",function(e,t){function r(){r.superclass.constructor.apply(this,arguments)}var n=e.Attribute.INVALID_VALUE;e.SliderBase=e.extend(r,e.Widget,{initializer:function(){this.axis=this.get("axis"),this._key={dim:this.axis==="y"?"height":"width",minEdge:this.axis==="y"?"top":"left",maxEdge:this.axis==="y"?"bottom":"right",xyIndex:this.axis==="y"?1:0},this.publish("thumbMove",{defaultFn:this._defThumbMoveFn,queuable:!0})},renderUI:function(){var e=this.get("contentBox");this.rail=this.renderRail(),this._uiSetRailLength(this.get("length")),this.thumb=this.renderThumb(),this.rail.appendChild(this.thumb),e.appendChild(this.rail),e.addClass(this.getClassName(this.axis))},renderRail:function(){var t=this.getClassName("rail","cap",this._key.minEdge),n=this.getClassName("rail","cap",this._key.maxEdge);return e.Node.create(e.Lang.sub(this.RAIL_TEMPLATE,{railClass:this.getClassName("rail"),railMinCapClass:t,railMaxCapClass:n}))},_uiSetRailLength:function(e){this.rail.setStyle(this._key.dim,e)},renderThumb:function(){this._initThumbUrl();var t=this.get("thumbUrl");return e.Node.create(e.Lang.sub(this.THUMB_TEMPLATE,{thumbClass:this.getClassName("thumb"),thumbShadowClass:this.getClassName("thumb","shadow"),thumbImageClass:this.getClassName("thumb","image"),thumbShadowUrl:t,thumbImageUrl:t,thumbAriaLabelId:this.getClassName("label",e.guid())}))},_onThumbClick:function(e){this.thumb.focus()},bindUI:function(){var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta";t.on("key",this._onDirectionKey,r,this),t.on("key",this._onLeftRightKey,i,this),t.on("key",this._onLeftRightKeyMeta,s,this),this.thumb.on("click",this._onThumbClick,this),this._bindThumbDD(),this._bindValueLogic(),this.after("disabledChange",this._afterDisabledChange),this.after("lengthChange",this._afterLengthChange)},_incrMinor:function(){this.set("value",this.get("value")+this.get("minorStep"))},_decrMinor:function(){this.set("value",this.get("value")-this.get("minorStep"))},_incrMajor:function(){this.set("value",this.get("value")+this.get("majorStep"))},_decrMajor:function(){this.set("value",this.get("value")-this.get("majorStep"))},_setToMin:function(e){this.set("value",this.get("min"))},_setToMax:function(e){this.set("value",this.get("max"))},_onDirectionKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 38:this._incrMinor();break;case 40:this._decrMinor();break;case 36:this._setToMin();break;case 35:this._setToMax();break;case 33:this._incrMajor();break;case 34:this._decrMajor()}},_onLeftRightKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._decrMinor();break;case 39:this._incrMinor()}},_onLeftRightKeyMeta:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._setToMin();break;case 39:this._setToMax()}},_bindThumbDD:function(){var t={constrain:this.rail};t["stick"+this.axis.toUpperCase()]=!0,this._dd=new e.DD.Drag({node:this.thumb,bubble:!1,on:{"drag:start":e.bind(this._onDragStart,this)},after:{"drag:drag":e.bind(this._afterDrag,this),"drag:end":e.bind(this._afterDragEnd,this)}}),this._dd.plug(e.Plugin.DDConstrained,t)},_bindValueLogic:function(){},_uiMoveThumb:function(e,t){this.thumb&&(this.thumb.setStyle(this._key.minEdge,e+"px"),t||(t={}),t.offset=e,this.fire("thumbMove",t))},_onDragStart:function(e){this.fire("slideStart",{ddEvent:e,originEvent:e})},_afterDrag:function(e){var t=e.info.xy[this._key.xyIndex],n=e.target.con._regionCache[this._key.minEdge];this.fire("thumbMove",{offset:t-n,ddEvent:e,originEvent:e})},_afterDragEnd:function(e){this.fire("slideEnd",{ddEvent:e,originEvent:e})},_afterDisabledChange:function(e){this._dd.set("lock",e.newVal)},_afterLengthChange:function(e){this.get("rendered")&&(this._uiSetRailLength(e.newVal),this.syncUI())},syncUI:function(){this._dd.con.resetCache(),this._syncThumbPosition(),this.thumb.set("aria-valuemin",this.get("min")),this.thumb.set("aria-valuemax",this.get("max")),this._dd.set("lock",this.get("disabled"))},_syncThumbPosition:function(){},_setAxis:function(e){return e=(e+"").toLowerCase(),e==="x"||e==="y"?e:n},_setLength:function(e){e=(e+"").toLowerCase();var t=parseFloat(e,10),r=e.replace(/[\d\.\-]/g,"")||this.DEF_UNIT;return t>0?t+r:n},_initThumbUrl:function(){if(!this.get("thumbUrl")){var t=this.getSkinName()||"sam",n=e.config.base;n.indexOf("http://yui.yahooapis.com/combo")===0&&(n="http://yui.yahooapis.com/"+e.version+"/build/"),this.set("thumbUrl",n+"slider-base/assets/skins/"+t+"/thumb-"+this.axis+".png")}},BOUNDING_TEMPLATE:"",CONTENT_TEMPLATE:"",RAIL_TEMPLATE:'',THUMB_TEMPLATE:'Slider thumb shadowSlider thumb'},{NAME:"sliderBase",ATTRS:{axis:{value:"x",writeOnce:!0,setter:"_setAxis",lazyAdd:!1},length:{value:"150px",setter:"_setLength"},thumbUrl:{value:null,validator:e.Lang.isString}}})},"3.9.1",{requires:["widget","dd-constrain","event-key"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("slider-base",function(e,t){function r(){r.superclass.constructor.apply(this,arguments)}var n=e.Attribute.INVALID_VALUE;e.SliderBase=e.extend(r,e.Widget,{initializer:function(){this.axis=this.get("axis"),this._key={dim:this.axis==="y"?"height":"width",minEdge:this.axis==="y"?"top":"left",maxEdge:this.axis==="y"?"bottom":"right",xyIndex:this.axis==="y"?1:0},this.publish("thumbMove",{defaultFn:this._defThumbMoveFn,queuable:!0})},renderUI:function(){var e=this.get("contentBox");this.rail=this.renderRail(),this._uiSetRailLength(this.get("length")),this.thumb=this.renderThumb(),this.rail.appendChild(this.thumb),e.appendChild(this.rail),e.addClass(this.getClassName(this.axis))},renderRail:function(){var t=this.getClassName("rail","cap",this._key.minEdge),n=this.getClassName("rail","cap",this._key.maxEdge);return e.Node.create(e.Lang.sub(this.RAIL_TEMPLATE,{railClass:this.getClassName("rail"),railMinCapClass:t,railMaxCapClass:n}))},_uiSetRailLength:function(e){this.rail.setStyle(this._key.dim,e)},renderThumb:function(){this._initThumbUrl();var t=this.get("thumbUrl");return e.Node.create(e.Lang.sub(this.THUMB_TEMPLATE,{thumbClass:this.getClassName("thumb"),thumbShadowClass:this.getClassName("thumb","shadow"),thumbImageClass:this.getClassName("thumb","image"),thumbShadowUrl:t,thumbImageUrl:t,thumbAriaLabelId:this.getClassName("label",e.guid())}))},_onThumbClick:function(e){this.thumb.focus()},bindUI:function(){var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta";t.on("key",this._onDirectionKey,r,this),t.on("key",this._onLeftRightKey,i,this),t.on("key",this._onLeftRightKeyMeta,s,this),this.thumb.on("click",this._onThumbClick,this),this._bindThumbDD(),this._bindValueLogic(),this.after("disabledChange",this._afterDisabledChange),this.after("lengthChange",this._afterLengthChange)},_incrMinor:function(){this.set("value",this.get("value")+this.get("minorStep"))},_decrMinor:function(){this.set("value",this.get("value")-this.get("minorStep"))},_incrMajor:function(){this.set("value",this.get("value")+this.get("majorStep"))},_decrMajor:function(){this.set("value",this.get("value")-this.get("majorStep"))},_setToMin:function(e){this.set("value",this.get("min"))},_setToMax:function(e){this.set("value",this.get("max"))},_onDirectionKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 38:this._incrMinor();break;case 40:this._decrMinor();break;case 36:this._setToMin();break;case 35:this._setToMax();break;case 33:this._incrMajor();break;case 34:this._decrMajor()}},_onLeftRightKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._decrMinor();break;case 39:this._incrMinor()}},_onLeftRightKeyMeta:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._setToMin();break;case 39:this._setToMax()}},_bindThumbDD:function(){var t={constrain:this.rail};t["stick"+this.axis.toUpperCase()]=!0,this._dd=new e.DD.Drag({node:this.thumb,bubble:!1,on:{"drag:start":e.bind(this._onDragStart,this)},after:{"drag:drag":e.bind(this._afterDrag,this),"drag:end":e.bind(this._afterDragEnd,this)}}),this._dd.plug(e.Plugin.DDConstrained,t)},_bindValueLogic:function(){},_uiMoveThumb:function(e,t){this.thumb&&(this.thumb.setStyle(this._key.minEdge,e+"px"),t||(t={}),t.offset=e,this.fire("thumbMove",t))},_onDragStart:function(e){this.fire("slideStart",{ddEvent:e,originEvent:e})},_afterDrag:function(e){var t=e.info.xy[this._key.xyIndex],n=e.target.con._regionCache[this._key.minEdge];this.fire("thumbMove",{offset:t-n,ddEvent:e,originEvent:e})},_afterDragEnd:function(e){this.fire("slideEnd",{ddEvent:e,originEvent:e})},_afterDisabledChange:function(e){this._dd.set("lock",e.newVal)},_afterLengthChange:function(e){this.get("rendered")&&(this._uiSetRailLength(e.newVal),this.syncUI())},syncUI:function(){this._dd.con.resetCache(),this._syncThumbPosition(),this.thumb.set("aria-valuemin",this.get("min")),this.thumb.set("aria-valuemax",this.get("max")),this._dd.set("lock",this.get("disabled"))},_syncThumbPosition:function(){},_setAxis:function(e){return e=(e+"").toLowerCase(),e==="x"||e==="y"?e:n},_setLength:function(e){e=(e+"").toLowerCase();var t=parseFloat(e,10),r=e.replace(/[\d\.\-]/g,"")||this.DEF_UNIT;return t>0?t+r:n},_initThumbUrl:function(){if(!this.get("thumbUrl")){var t=this.getSkinName()||"sam",n=e.config.base;n.indexOf("http://yui.yahooapis.com/combo")===0&&(n="http://yui.yahooapis.com/"+e.version+"/build/"),this.set("thumbUrl",n+"slider-base/assets/skins/"+t+"/thumb-"+this.axis+".png")}},BOUNDING_TEMPLATE:"",CONTENT_TEMPLATE:"",RAIL_TEMPLATE:'',THUMB_TEMPLATE:'Slider thumb shadowSlider thumb'},{NAME:"sliderBase",ATTRS:{axis:{value:"x",writeOnce:!0,setter:"_setAxis",lazyAdd:!1},length:{value:"150px",setter:"_setLength"},thumbUrl:{value:null,validator:e.Lang.isString}}})},"3.12.0",{requires:["widget","dd-constrain","event-key"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base.js b/lib/yuilib/3.12.0/slider-base/slider-base.js similarity index 99% rename from lib/yuilib/3.9.1/build/slider-base/slider-base.js rename to lib/yuilib/3.12.0/slider-base/slider-base.js index e60f1f8fdc8..de489f313c8 100644 --- a/lib/yuilib/3.9.1/build/slider-base/slider-base.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-base', function (Y, NAME) { /** @@ -758,4 +764,4 @@ Y.SliderBase = Y.extend( SliderBase, Y.Widget, { }); -}, '3.9.1', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); +}, '3.12.0', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js index e5caa8142d8..984eb044287 100644 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-value-range', function (Y, NAME) { /** @@ -417,4 +423,4 @@ Y.SliderValueRange = Y.mix( SliderValueRange, { }, true ); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js similarity index 89% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js index e3a54a31384..d63e0d1d475 100644 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("slider-value-range",function(e,t){function o(){this._initSliderValueRange()}var n="min",r="max",i="value",s=Math.round;e.SliderValueRange=e.mix(o,{prototype:{_factor:1,_initSliderValueRange:function(){},_bindValueLogic:function(){this.after({minChange:this._afterMinChange,maxChange:this._afterMaxChange,valueChange:this._afterValueChange})},_syncThumbPosition:function(){this._calculateFactor(),this._setPosition(this.get(i))},_calculateFactor:function(){var e=this.get("length"),t=this.thumb.getStyle(this._key.dim),i=this.get(n),s=this.get(r);e=parseFloat(e)||150,t=parseFloat(t)||15,this._factor=(s-i)/(e-t)},_defThumbMoveFn:function(e){e.source!=="set"&&this.set(i,this._offsetToValue(e.offset))},_offsetToValue:function(e){var t=s(e*this._factor)+this.get(n);return s(this._nearestValue(t))},_valueToOffset:function(e){var t=s((e-this.get(n))/this._factor);return t},getValue:function(){return this.get(i)},setValue:function(e){return this.set(i,e)},_afterMinChange:function(e){this._verifyValue(),this._syncThumbPosition()},_afterMaxChange:function(e){this._verifyValue(),this._syncThumbPosition()},_verifyValue:function(){var e=this.get(i),t=this._nearestValue(e);e!==t&&this.set(i,t)},_afterValueChange:function(e){var t=e.newVal;this._setPosition(t,{source:"set"})},_setPosition:function(e,t){this._uiMoveThumb(this._valueToOffset(e),t),this.thumb.set("aria-valuenow",e),this.thumb.set("aria-valuetext",e)},_validateNewMin:function(t){return e.Lang.isNumber(t)},_validateNewMax:function(t){return e.Lang.isNumber(t)},_setNewValue:function(e){return s(this._nearestValue(e))},_nearestValue:function(e){var t=this.get(n),i=this.get(r),s;return s=i>t?i:t,t=i>t?t:i,i=s,ei?i:e}},ATTRS:{min:{value:0,validator:"_validateNewMin"},max:{value:100,validator:"_validateNewMax"},minorStep:{value:1},majorStep:{value:10},value:{value:0,setter:"_setNewValue"}}},!0)},"3.9.1",{requires:["slider-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("slider-value-range",function(e,t){function o(){this._initSliderValueRange()}var n="min",r="max",i="value",s=Math.round;e.SliderValueRange=e.mix(o,{prototype:{_factor:1,_initSliderValueRange:function(){},_bindValueLogic:function(){this.after({minChange:this._afterMinChange,maxChange:this._afterMaxChange,valueChange:this._afterValueChange})},_syncThumbPosition:function(){this._calculateFactor(),this._setPosition(this.get(i))},_calculateFactor:function(){var e=this.get("length"),t=this.thumb.getStyle(this._key.dim),i=this.get(n),s=this.get(r);e=parseFloat(e)||150,t=parseFloat(t)||15,this._factor=(s-i)/(e-t)},_defThumbMoveFn:function(e){e.source!=="set"&&this.set(i,this._offsetToValue(e.offset))},_offsetToValue:function(e){var t=s(e*this._factor)+this.get(n);return s(this._nearestValue(t))},_valueToOffset:function(e){var t=s((e-this.get(n))/this._factor);return t},getValue:function(){return this.get(i)},setValue:function(e){return this.set(i,e)},_afterMinChange:function(e){this._verifyValue(),this._syncThumbPosition()},_afterMaxChange:function(e){this._verifyValue(),this._syncThumbPosition()},_verifyValue:function(){var e=this.get(i),t=this._nearestValue(e);e!==t&&this.set(i,t)},_afterValueChange:function(e){var t=e.newVal;this._setPosition(t,{source:"set"})},_setPosition:function(e,t){this._uiMoveThumb(this._valueToOffset(e),t),this.thumb.set("aria-valuenow",e),this.thumb.set("aria-valuetext",e)},_validateNewMin:function(t){return e.Lang.isNumber(t)},_validateNewMax:function(t){return e.Lang.isNumber(t)},_setNewValue:function(e){return s(this._nearestValue(e))},_nearestValue:function(e){var t=this.get(n),i=this.get(r),s;return s=i>t?i:t,t=i>t?t:i,i=s,ei?i:e}},ATTRS:{min:{value:0,validator:"_validateNewMin"},max:{value:100,validator:"_validateNewMax"},minorStep:{value:1},majorStep:{value:10},value:{value:0,setter:"_setNewValue"}}},!0)},"3.12.0",{requires:["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range.js similarity index 98% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range.js index c3e9c80f63d..2204fbfb0f3 100644 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-value-range', function (Y, NAME) { /** @@ -413,4 +419,4 @@ Y.SliderValueRange = Y.mix( SliderValueRange, { }, true ); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js similarity index 88% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js index 11863f3fed1..a3197e48667 100644 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable-scroll', function (Y, NAME) { @@ -65,4 +71,4 @@ YUI.add('sortable-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-scroll", "sortable"]}); +}, '3.12.0', {"requires": ["dd-scroll", "sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js similarity index 66% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js index b3af3efcd9e..5c3a11b7fa0 100644 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("sortable-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(){var t=this.get("host");t.plug(e.Plugin.DDNodeScroll,{node:t.get("container")}),t.delegate.on("drop:over",function(t){this.dd.nodescroll&&t.drag.nodescroll&&t.drag.nodescroll.set("parentScroll",e.one(this.get("container")))})}},{ATTRS:{host:{value:""}},NAME:"SortScroll",NS:"scroll"}),e.namespace("Y.Plugin"),e.Plugin.SortableScroll=n},"3.9.1",{requires:["dd-scroll","sortable"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("sortable-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(){var t=this.get("host");t.plug(e.Plugin.DDNodeScroll,{node:t.get("container")}),t.delegate.on("drop:over",function(t){this.dd.nodescroll&&t.drag.nodescroll&&t.drag.nodescroll.set("parentScroll",e.one(this.get("container")))})}},{ATTRS:{host:{value:""}},NAME:"SortScroll",NS:"scroll"}),e.namespace("Y.Plugin"),e.Plugin.SortableScroll=n},"3.12.0",{requires:["dd-scroll","sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js similarity index 88% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js index 11863f3fed1..a3197e48667 100644 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable-scroll', function (Y, NAME) { @@ -65,4 +71,4 @@ YUI.add('sortable-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-scroll", "sortable"]}); +}, '3.12.0', {"requires": ["dd-scroll", "sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable-debug.js b/lib/yuilib/3.12.0/sortable/sortable-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/sortable/sortable-debug.js rename to lib/yuilib/3.12.0/sortable/sortable-debug.js index 9e24842eb16..33d56dec9a2 100644 --- a/lib/yuilib/3.9.1/build/sortable/sortable-debug.js +++ b/lib/yuilib/3.12.0/sortable/sortable-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable', function (Y, NAME) { @@ -530,4 +536,4 @@ YUI.add('sortable', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); +}, '3.12.0', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable-min.js b/lib/yuilib/3.12.0/sortable/sortable-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/sortable/sortable-min.js rename to lib/yuilib/3.12.0/sortable/sortable-min.js index 171c143ae39..2d87053b4c3 100644 --- a/lib/yuilib/3.9.1/build/sortable/sortable-min.js +++ b/lib/yuilib/3.12.0/sortable/sortable-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("sortable",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="currentNode",i="opacityNode",s="container",o="id",u="zIndex",a="opacity",f="parentNode",l="nodes",c="node";e.extend(n,e.Base,{delegate:null,drop:null,initializer:function(){var t="sortable-"+e.guid(),r={container:this.get(s),nodes:this.get(l),target:!0,invalid:this.get("invalid"),dragConfig:{groups:[t]}},i;this.get("handles")&&(r.handles=this.get("handles")),i=new e.DD.Delegate(r),this.set(o,t),i.dd.plug(e.Plugin.DDProxy,{moveOnEnd:!1,cloneNode:!0}),this.drop=new e.DD.Drop({node:this.get(s),bubbleTarget:i,groups:i.dd.get("groups")}),this.drop.on("drop:enter",e.bind(this._onDropEnter,this)),i.on({"drag:start":e.bind(this._onDragStart,this),"drag:end":e.bind(this._onDragEnd,this),"drag:over":e.bind(this._onDragOver,this),"drag:drag":e.bind(this._onDrag,this)}),this.delegate=i,n.reg(this,t)},_up:null,_y:null,_onDrag:function(e){e.pageYthis._y&&(this._up=!1),this._y=e.pageY},_onDropEnter:function(e){var t=e.drop.get(c),n=e.drag.get(c);!t.test(this.get(l))&&!n.get(f).compareTo(t)&&t.append(n)},_onDragOver:function(t){if(!t.drop.get(c).test(this.get(l)))return;if(t.drag.get(c)===t.drop.get(c))return;if(t.drag.get(c).contains(t.drop.get(c)))return;var n=!1,r,i,u,a,h,p=this.get("moveType").toLowerCase();t.drag.get(c).get(f).contains(t.drop.get(c))&&(n=!0),n&&p==="move"&&(p="insert");switch(p){case"insert":r=this._up?"before":"after",h=t.drop.get(c),e.Sortable._test(h,this.get(s))?h.append(t.drag.get(c)):h.insert(t.drag.get(c),r);break;case"swap":e.DD.DDM.swapNode(t.drag,t.drop);break;case"move":case"copy":a=e.Sortable.getSortable(t.drop.get(c).get(f));if(!a)return;e.DD.DDM.getDrop(t.drag.get(c)).addToGroup(a.get(o)),n?e.DD.DDM.swapNode(t.drag,t.drop):(this.get("moveType")==="copy"&&(i=t.drag.get(c),u=i.cloneNode(!0),u.set(o,""),t.drag.set(c,u),a.delegate.createDrop(u,[a.get(o)]),i.setStyles({top:"",left:""})),t.drop.get(c).insert(t.drag.get(c),"before"))}this.fire(p,{same:n,drag:t.drag,drop:t.drop}),this.fire("moved",{same:n,drag:t.drag,drop:t.drop})},_onDragStart:function(){var e=this.delegate,t=e.get("lastNode");t&&t.getDOMNode()&&t.setStyle(u,""),e.get(this.get(i)).setStyle(a,this.get(a)),e.get(r).setStyle(u,"999")},_onDragEnd:function(){this.delegate.get(this.get(i)).setStyle(a,1),this.delegate.get(r).setStyles({top:"",left:""}),this.sync()},plug:function(e,t){return e&&e.NAME.substring(0,4).toLowerCase()==="sort"?this.constructor.superclass.plug.call(this,e,t):this.delegate.dd.plug(e,t),this},sync:function(){return this.delegate.syncTargets(),this},destructor:function(){this.drop.destroy(),this.delegate.destroy(),n.unreg(this,this.get(o))},join:function(t,n){if(t instanceof e.Sortable){n||(n="full"),n=n.toLowerCase();var r="_join_"+n;return this[r]&&this[r](t),this}return e.error("Sortable: join needs a Sortable Instance"),this},_join_none:function(e){this.delegate.dd.removeFromGroup(e.get(o)),e.delegate.dd.removeFromGroup(this.get(o))},_join_full:function(e){this.delegate.dd.addToGroup(e.get(o)),e.delegate.dd.addToGroup(this.get(o))},_join_outer:function(e){this.delegate.dd.addToGroup(e.get(o))},_join_inner:function(e){e.delegate.dd.addToGroup(this.get(o))},getOrdering:function(t){var n=[];return e.Lang.isFunction(t)||(t=function(e){return e}),e.one(this.get(s)).all(this.get(l)).each(function(e){n.push(t(e))}),n}},{NAME:"sortable",ATTRS:{handles:{value:!1},container:{value:"body"},nodes:{value:".dd-draggable"},opacity:{value:".75"},opacityNode:{value:"currentNode"},id:{value:null},moveType:{value:"insert"},invalid:{value:""}},_sortables:{},_test:function(t,n){var r;return n instanceof e.Node?r=n===t:r=t.test(n),r},getSortable:function(t){var n=null,r=null;return t=e.one(t),r=t.get(o),r&&e.Sortable._sortables[r]?e.Sortable._sortables[r]:(e.Object.each(e.Sortable._sortables,function(r){e.Sortable._test(t,r.get(s))&&(n=r)}),n)},reg:function(t,n){n||(n=t.get(o)),e.Sortable._sortables[n]=t},unreg:function(t,r){r||(r=t.get(o));if(r&&e.Sortable._sortables[r]){delete e.Sortable._sortables[r];return}e.Object.each(e.Sortable._sortables,function(e,r){e===t&&delete n._sortables[r]})}}),e.Sortable=n},"3.9.1",{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("sortable",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="currentNode",i="opacityNode",s="container",o="id",u="zIndex",a="opacity",f="parentNode",l="nodes",c="node";e.extend(n,e.Base,{delegate:null,drop:null,initializer:function(){var t="sortable-"+e.guid(),r={container:this.get(s),nodes:this.get(l),target:!0,invalid:this.get("invalid"),dragConfig:{groups:[t]}},i;this.get("handles")&&(r.handles=this.get("handles")),i=new e.DD.Delegate(r),this.set(o,t),i.dd.plug(e.Plugin.DDProxy,{moveOnEnd:!1,cloneNode:!0}),this.drop=new e.DD.Drop({node:this.get(s),bubbleTarget:i,groups:i.dd.get("groups")}),this.drop.on("drop:enter",e.bind(this._onDropEnter,this)),i.on({"drag:start":e.bind(this._onDragStart,this),"drag:end":e.bind(this._onDragEnd,this),"drag:over":e.bind(this._onDragOver,this),"drag:drag":e.bind(this._onDrag,this)}),this.delegate=i,n.reg(this,t)},_up:null,_y:null,_onDrag:function(e){e.pageYthis._y&&(this._up=!1),this._y=e.pageY},_onDropEnter:function(e){var t=e.drop.get(c),n=e.drag.get(c);!t.test(this.get(l))&&!n.get(f).compareTo(t)&&t.append(n)},_onDragOver:function(t){if(!t.drop.get(c).test(this.get(l)))return;if(t.drag.get(c)===t.drop.get(c))return;if(t.drag.get(c).contains(t.drop.get(c)))return;var n=!1,r,i,u,a,h,p=this.get("moveType").toLowerCase();t.drag.get(c).get(f).contains(t.drop.get(c))&&(n=!0),n&&p==="move"&&(p="insert");switch(p){case"insert":r=this._up?"before":"after",h=t.drop.get(c),e.Sortable._test(h,this.get(s))?h.append(t.drag.get(c)):h.insert(t.drag.get(c),r);break;case"swap":e.DD.DDM.swapNode(t.drag,t.drop);break;case"move":case"copy":a=e.Sortable.getSortable(t.drop.get(c).get(f));if(!a)return;e.DD.DDM.getDrop(t.drag.get(c)).addToGroup(a.get(o)),n?e.DD.DDM.swapNode(t.drag,t.drop):(this.get("moveType")==="copy"&&(i=t.drag.get(c),u=i.cloneNode(!0),u.set(o,""),t.drag.set(c,u),a.delegate.createDrop(u,[a.get(o)]),i.setStyles({top:"",left:""})),t.drop.get(c).insert(t.drag.get(c),"before"))}this.fire(p,{same:n,drag:t.drag,drop:t.drop}),this.fire("moved",{same:n,drag:t.drag,drop:t.drop})},_onDragStart:function(){var e=this.delegate,t=e.get("lastNode");t&&t.getDOMNode()&&t.setStyle(u,""),e.get(this.get(i)).setStyle(a,this.get(a)),e.get(r).setStyle(u,"999")},_onDragEnd:function(){this.delegate.get(this.get(i)).setStyle(a,1),this.delegate.get(r).setStyles({top:"",left:""}),this.sync()},plug:function(e,t){return e&&e.NAME.substring(0,4).toLowerCase()==="sort"?this.constructor.superclass.plug.call(this,e,t):this.delegate.dd.plug(e,t),this},sync:function(){return this.delegate.syncTargets(),this},destructor:function(){this.drop.destroy(),this.delegate.destroy(),n.unreg(this,this.get(o))},join:function(t,n){if(t instanceof e.Sortable){n||(n="full"),n=n.toLowerCase();var r="_join_"+n;return this[r]&&this[r](t),this}return e.error("Sortable: join needs a Sortable Instance"),this},_join_none:function(e){this.delegate.dd.removeFromGroup(e.get(o)),e.delegate.dd.removeFromGroup(this.get(o))},_join_full:function(e){this.delegate.dd.addToGroup(e.get(o)),e.delegate.dd.addToGroup(this.get(o))},_join_outer:function(e){this.delegate.dd.addToGroup(e.get(o))},_join_inner:function(e){e.delegate.dd.addToGroup(this.get(o))},getOrdering:function(t){var n=[];return e.Lang.isFunction(t)||(t=function(e){return e}),e.one(this.get(s)).all(this.get(l)).each(function(e){n.push(t(e))}),n}},{NAME:"sortable",ATTRS:{handles:{value:!1},container:{value:"body"},nodes:{value:".dd-draggable"},opacity:{value:".75"},opacityNode:{value:"currentNode"},id:{value:null},moveType:{value:"insert"},invalid:{value:""}},_sortables:{},_test:function(t,n){var r;return n instanceof e.Node?r=n===t:r=t.test(n),r},getSortable:function(t){var n=null,r=null;return t=e.one(t),r=t.get(o),r&&e.Sortable._sortables[r]?e.Sortable._sortables[r]:(e.Object.each(e.Sortable._sortables,function(r){e.Sortable._test(t,r.get(s))&&(n=r)}),n)},reg:function(t,n){n||(n=t.get(o)),e.Sortable._sortables[n]=t},unreg:function(t,r){r||(r=t.get(o));if(r&&e.Sortable._sortables[r]){delete e.Sortable._sortables[r];return}e.Object.each(e.Sortable._sortables,function(e,r){e===t&&delete n._sortables[r]})}}),e.Sortable=n},"3.12.0",{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable.js b/lib/yuilib/3.12.0/sortable/sortable.js similarity index 98% rename from lib/yuilib/3.9.1/build/sortable/sortable.js rename to lib/yuilib/3.12.0/sortable/sortable.js index 1cd79b7d69a..bc8a0999e80 100644 --- a/lib/yuilib/3.9.1/build/sortable/sortable.js +++ b/lib/yuilib/3.12.0/sortable/sortable.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable', function (Y, NAME) { @@ -529,4 +535,4 @@ YUI.add('sortable', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); +}, '3.12.0', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js b/lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js index 3fe38e7f036..0bc704f933c 100644 --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('stylesheet', function (Y, NAME) { /** @@ -640,4 +646,4 @@ NOTES -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js b/lib/yuilib/3.12.0/stylesheet/stylesheet-min.js similarity index 94% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet-min.js index 8052307c8a7..b2ec0d9742a 100644 --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("stylesheet",function(e,t){function v(t,r){var o,a,f,l={},h,p,m,g,y,b;if(!e.instanceOf(this,v))return new v(t,r);if(t){if(e.Node&&t instanceof e.Node)a=t._node;else if(t.nodeName)a=t;else if(s(t)){if(t&&u[t])return u[t];a=n.getElementById(t.replace(/^#/,d))}if(a&&u[e.stamp(a)])return u[e.stamp(a)]}if(!a||!/^(?:style|link)$/i.test(a.nodeName))a=n.createElement("style"),a.type="text/css";s(t)&&(t.indexOf("{")!=-1?a.styleSheet?a.styleSheet.cssText=t:a.appendChild(n.createTextNode(t)):r||(r=t));if(!a.parentNode||a.parentNode.nodeName.toLowerCase()!=="head")o=(a.ownerDocument||n).getElementsByTagName("head")[0],o.appendChild(a);f=a.sheet||a.styleSheet,h=f&&"cssRules"in f?"cssRules":"rules",m="deleteRule"in f?function(e){f.deleteRule(e)}:function(e){f.removeRule(e)},p="insertRule"in f?function(e,t,n){f.insertRule(e+" {"+t+"}",n)}:function(e,t,n){f.addRule(e,t,n)};for(g=f[h].length-1;g>=0;--g)y=f[h][g],b=y.selectorText,l[b]?(l[b].style.cssText+=";"+y.style.cssText,m(g)):l[b]=y;v.register(e.stamp(a),this),r&&v.register(r,this),e.mix(this,{getId:function(){return e.stamp(a)},enable:function(){return f.disabled=!1,this},disable:function(){return f.disabled=!0,this},isEnabled:function(){return!f.disabled},set:function(e,t){var n=l[e],r=e.split(/\s*,\s*/),i,s;if(r.length>1){for(i=r.length-1;i>=0;--i)this.set(r[i],t);return this}return v.isValidSelector(e)?(n?n.style.cssText=v.toCssText(t,n.style.cssText):(s=f[h].length,t=v.toCssText(t),t&&(p(e,t,s),l[e]=f[h][s])),this):this},unset:function(t,n){var r=l[t],s=t.split(/\s*,\s*/),o=!n,u,a;if(s.length>1){for(a=s.length-1;a>=0;--a)this.unset(s[a],n);return this}if(r){if(!o){n=e.Array(n),i.cssText=r.style.cssText;for(a=n.length-1;a>=0;--a)c(i,n[a]);i.cssText?r.style.cssText=i.cssText:o=!0}if(o){u=f[h];for(a=u.length-1;a>=0;--a)if(u[a]===r){delete l[t],m(a);break}}}return this},getCssText:function(e){var t,n,r;if(s(e))return t=l[e.split(/\s*,\s*/)[0]],t?t.style.cssText:null;n=[];for(r in l)l.hasOwnProperty(r)&&(t=l[r],n.push(t.selectorText+" {"+t.style.cssText+"}"));return n.join("\n")}})}var n=e.config.doc,r=n.createElement("p"),i=r.style,s=e.Lang.isString,o={},u={},a="cssFloat"in i?"cssFloat":"styleFloat",f,l,c,h="opacity",p="float",d="";l=h in i?function(e){e.opacity=d}:function(e){e.filter=d},i.border="1px solid red",i.border=d,c=i.borderLeft?function(e,t){var n;t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a);if(s(e[t]))switch(t){case h:case"filter":l(e);break;case"font":e.font=e.fontStyle=e.fontVariant=e.fontWeight=e.fontSize=e.lineHeight=e.fontFamily=d;break;default:for(n in e)n.indexOf(t)===0&&(e[n]=d)}}:function(e,t){t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a),s(e[t])&&(t===h?l(e):e[t]=d)},f=function(t,s){var o=t.styleFloat||t.cssFloat||t[p],u=e.Lang.trim,f;try{i.cssText=s||d}catch(l){r=n.createElement("p"),i=r.style,i.cssText=s||d}o&&!t[a]&&(t=e.merge(t),delete t.styleFloat,delete t.cssFloat,delete t[p],t[a]=o);for(f in t)if(t.hasOwnProperty(f))try{i[f]=u(t[f])}catch(c){}return i.cssText},e.mix(v,{toCssText:h in i?f:function(t,n){return h in t&&(t=e.merge(t,{filter:"alpha(opacity="+t.opacity*100+")"}),delete t.opacity),f(t,n)},register:function(e,t){return!!(e&&t instanceof v&&!u[e]&&(u[e]=t))},isValidSelector:function(e){var t=!1;return e&&s(e)&&(o.hasOwnProperty(e)||(o[e]=!/\S/.test(e.replace(/\s+|\s*[+~>]\s*/g," ").replace(/([^ ])\[.*?\]/g,"$1").replace(/([^ ])::?[a-z][a-z\-]+[a-z](?:\(.*?\))?/ig,"$1").replace(/(?:^| )[a-z0-6]+/ig," ").replace(/\\./g,d).replace(/[.#]\w[\w\-]*/g,d))),t=o[e]),t}},!0),e.StyleSheet=v},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("stylesheet",function(e,t){function v(t,r){var o,a,f,l={},h,p,m,g,y,b;if(!e.instanceOf(this,v))return new v(t,r);if(t){if(e.Node&&t instanceof e.Node)a=t._node;else if(t.nodeName)a=t;else if(s(t)){if(t&&u[t])return u[t];a=n.getElementById(t.replace(/^#/,d))}if(a&&u[e.stamp(a)])return u[e.stamp(a)]}if(!a||!/^(?:style|link)$/i.test(a.nodeName))a=n.createElement("style"),a.type="text/css";s(t)&&(t.indexOf("{")!=-1?a.styleSheet?a.styleSheet.cssText=t:a.appendChild(n.createTextNode(t)):r||(r=t));if(!a.parentNode||a.parentNode.nodeName.toLowerCase()!=="head")o=(a.ownerDocument||n).getElementsByTagName("head")[0],o.appendChild(a);f=a.sheet||a.styleSheet,h=f&&"cssRules"in f?"cssRules":"rules",m="deleteRule"in f?function(e){f.deleteRule(e)}:function(e){f.removeRule(e)},p="insertRule"in f?function(e,t,n){f.insertRule(e+" {"+t+"}",n)}:function(e,t,n){f.addRule(e,t,n)};for(g=f[h].length-1;g>=0;--g)y=f[h][g],b=y.selectorText,l[b]?(l[b].style.cssText+=";"+y.style.cssText,m(g)):l[b]=y;v.register(e.stamp(a),this),r&&v.register(r,this),e.mix(this,{getId:function(){return e.stamp(a)},enable:function(){return f.disabled=!1,this},disable:function(){return f.disabled=!0,this},isEnabled:function(){return!f.disabled},set:function(e,t){var n=l[e],r=e.split(/\s*,\s*/),i,s;if(r.length>1){for(i=r.length-1;i>=0;--i)this.set(r[i],t);return this}return v.isValidSelector(e)?(n?n.style.cssText=v.toCssText(t,n.style.cssText):(s=f[h].length,t=v.toCssText(t),t&&(p(e,t,s),l[e]=f[h][s])),this):this},unset:function(t,n){var r=l[t],s=t.split(/\s*,\s*/),o=!n,u,a;if(s.length>1){for(a=s.length-1;a>=0;--a)this.unset(s[a],n);return this}if(r){if(!o){n=e.Array(n),i.cssText=r.style.cssText;for(a=n.length-1;a>=0;--a)c(i,n[a]);i.cssText?r.style.cssText=i.cssText:o=!0}if(o){u=f[h];for(a=u.length-1;a>=0;--a)if(u[a]===r){delete l[t],m(a);break}}}return this},getCssText:function(e){var t,n,r;if(s(e))return t=l[e.split(/\s*,\s*/)[0]],t?t.style.cssText:null;n=[];for(r in l)l.hasOwnProperty(r)&&(t=l[r],n.push(t.selectorText+" {"+t.style.cssText+"}"));return n.join("\n")}})}var n=e.config.doc,r=n.createElement("p"),i=r.style,s=e.Lang.isString,o={},u={},a="cssFloat"in i?"cssFloat":"styleFloat",f,l,c,h="opacity",p="float",d="";l=h in i?function(e){e.opacity=d}:function(e){e.filter=d},i.border="1px solid red",i.border=d,c=i.borderLeft?function(e,t){var n;t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a);if(s(e[t]))switch(t){case h:case"filter":l(e);break;case"font":e.font=e.fontStyle=e.fontVariant=e.fontWeight=e.fontSize=e.lineHeight=e.fontFamily=d;break;default:for(n in e)n.indexOf(t)===0&&(e[n]=d)}}:function(e,t){t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a),s(e[t])&&(t===h?l(e):e[t]=d)},f=function(t,s){var o=t.styleFloat||t.cssFloat||t[p],u=e.Lang.trim,f;try{i.cssText=s||d}catch(l){r=n.createElement("p"),i=r.style,i.cssText=s||d}o&&!t[a]&&(t=e.merge(t),delete t.styleFloat,delete t.cssFloat,delete t[p],t[a]=o);for(f in t)if(t.hasOwnProperty(f))try{i[f]=u(t[f])}catch(c){}return i.cssText},e.mix(v,{toCssText:h in i?f:function(t,n){return h in t&&(t=e.merge(t,{filter:"alpha(opacity="+t.opacity*100+")"}),delete t.opacity),f(t,n)},register:function(e,t){return!!(e&&t instanceof v&&!u[e]&&(u[e]=t))},isValidSelector:function(e){var t=!1;return e&&s(e)&&(o.hasOwnProperty(e)||(o[e]=!/\S/.test(e.replace(/\s+|\s*[+~>]\s*/g," ").replace(/([^ ])\[.*?\]/g,"$1").replace(/([^ ])::?[a-z][a-z\-]+[a-z](?:\(.*?\))?/ig,"$1").replace(/(?:^| )[a-z0-6]+/ig," ").replace(/\\./g,d).replace(/[.#]\w[\w\-]*/g,d))),t=o[e]),t}},!0),e.StyleSheet=v},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet.js b/lib/yuilib/3.12.0/stylesheet/stylesheet.js similarity index 99% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet.js index 1bdd84dbd89..3478dea7607 100644 --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('stylesheet', function (Y, NAME) { /** @@ -636,4 +642,4 @@ NOTES -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute-debug.js b/lib/yuilib/3.12.0/substitute/substitute-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/substitute/substitute-debug.js rename to lib/yuilib/3.12.0/substitute/substitute-debug.js index c2d6e25a655..83ff9bbfab1 100644 --- a/lib/yuilib/3.9.1/build/substitute/substitute-debug.js +++ b/lib/yuilib/3.12.0/substitute/substitute-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('substitute', function (Y, NAME) { /** @@ -168,4 +174,4 @@ to `Y.dump(...)`, e.g. "{someObject 2}". See the -}, '3.9.1', {"requires": ["yui-base"], "optional": ["dump"]}); +}, '3.12.0', {"requires": ["yui-base"], "optional": ["dump"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute-min.js b/lib/yuilib/3.12.0/substitute/substitute-min.js similarity index 76% rename from lib/yuilib/3.9.1/build/substitute/substitute-min.js rename to lib/yuilib/3.12.0/substitute/substitute-min.js index 2a1550b5e95..b4979925466 100644 --- a/lib/yuilib/3.9.1/build/substitute/substitute-min.js +++ b/lib/yuilib/3.12.0/substitute/substitute-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("substitute",function(e,t){var n=e.Lang,r="dump",i=" ",s="{",o="}",u=/(~-(\d+)-~)/g,a=/\{LBRACE\}/g,f=/\{RBRACE\}/g,l=function(t,l,c,h){var p,d,v,m,g,y,b=[],w,E,S=t.length;for(;;){p=t.lastIndexOf(s,S);if(p<0)break;d=t.indexOf(o,p);if(p+1>=d)break;w=t.substring(p+1,d),m=w,y=null,v=m.indexOf(i),v>-1&&(y=m.substring(v+1),m=m.substring(0,v)),g=l[m],c&&(g=c(m,g,y)),n.isObject(g)?e.dump?n.isArray(g)?g=e.dump(g,parseInt(y,10)):(y=y||"",E=y.indexOf(r),E>-1&&(y=y.substring(4)),g.toString===Object.prototype.toString||E>-1?g=e.dump(g,parseInt(y,10)):g=g.toString()):g=g.toString():n.isUndefined(g)&&(g="~-"+b.length+"-~",b.push(w)),t=t.substring(0,p)+g+t.substring(d+1),h||(S=p-1)}return t.replace(u,function(e,t,n){return s+b[parseInt(n,10)]+o}).replace(a,s).replace(f,o)};e.substitute=l,n.substitute=l},"3.9.1",{requires:["yui-base"],optional:["dump"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("substitute",function(e,t){var n=e.Lang,r="dump",i=" ",s="{",o="}",u=/(~-(\d+)-~)/g,a=/\{LBRACE\}/g,f=/\{RBRACE\}/g,l=function(t,l,c,h){var p,d,v,m,g,y,b=[],w,E,S=t.length;for(;;){p=t.lastIndexOf(s,S);if(p<0)break;d=t.indexOf(o,p);if(p+1>=d)break;w=t.substring(p+1,d),m=w,y=null,v=m.indexOf(i),v>-1&&(y=m.substring(v+1),m=m.substring(0,v)),g=l[m],c&&(g=c(m,g,y)),n.isObject(g)?e.dump?n.isArray(g)?g=e.dump(g,parseInt(y,10)):(y=y||"",E=y.indexOf(r),E>-1&&(y=y.substring(4)),g.toString===Object.prototype.toString||E>-1?g=e.dump(g,parseInt(y,10)):g=g.toString()):g=g.toString():n.isUndefined(g)&&(g="~-"+b.length+"-~",b.push(w)),t=t.substring(0,p)+g+t.substring(d+1),h||(S=p-1)}return t.replace(u,function(e,t,n){return s+b[parseInt(n,10)]+o}).replace(a,s).replace(f,o)};e.substitute=l,n.substitute=l},"3.12.0",{requires:["yui-base"],optional:["dump"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute.js b/lib/yuilib/3.12.0/substitute/substitute.js similarity index 96% rename from lib/yuilib/3.9.1/build/substitute/substitute.js rename to lib/yuilib/3.12.0/substitute/substitute.js index c2d6e25a655..83ff9bbfab1 100644 --- a/lib/yuilib/3.9.1/build/substitute/substitute.js +++ b/lib/yuilib/3.12.0/substitute/substitute.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('substitute', function (Y, NAME) { /** @@ -168,4 +174,4 @@ to `Y.dump(...)`, e.g. "{someObject 2}". See the -}, '3.9.1', {"requires": ["yui-base"], "optional": ["dump"]}); +}, '3.12.0', {"requires": ["yui-base"], "optional": ["dump"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf-debug.js b/lib/yuilib/3.12.0/swf/swf-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/swf/swf-debug.js rename to lib/yuilib/3.12.0/swf/swf-debug.js index 6259a7c1f91..101905ef5c0 100644 --- a/lib/yuilib/3.9.1/build/swf/swf-debug.js +++ b/lib/yuilib/3.12.0/swf/swf-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swf', function (Y, NAME) { /** @@ -201,4 +207,4 @@ Y.augment(SWF, Y.EventTarget); Y.SWF = SWF; -}, '3.9.1', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); +}, '3.12.0', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf-min.js b/lib/yuilib/3.12.0/swf/swf-min.js similarity index 89% rename from lib/yuilib/3.9.1/build/swf/swf-min.js rename to lib/yuilib/3.12.0/swf/swf-min.js index f9bd8ff48d3..4891f331fd1 100644 --- a/lib/yuilib/3.9.1/build/swf/swf-min.js +++ b/lib/yuilib/3.12.0/swf/swf-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("swf",function(e,t){function d(t,n,d){this._id=e.guid("yuiswf");var v=this._id,m=o.one(t),d=d||{},g=d.version||l,y=(g+"").split("."),b=r.isFlashVersionAtLeast(parseInt(y[0],10),parseInt(y[1],10),parseInt(y[2],10)),w=r.isFlashVersionAtLeast(8,0,0),E=w&&!b&&d.useExpressInstall,S=E?c:n,x="',s.ie&&(x+='');for(var k in d.fixedAttributes)p.hasOwnProperty(k)&&(x+='');for(var L in d.flashVars){var A=d.flashVars[L];i.isString(A)&&(C+="&"+u.html(L)+"="+u.html(encodeURIComponent(A)))}C&&(x+=''),x+="",m.set("innerHTML",x),this._swf=o.one("#"+v)}else{var O={};O.type="wrongflashversion",this.publish("wrongflashversion",{fireOnce:!0}),this.fire("wrongflashversion",O)}}var n=e.Event,r=e.SWFDetect,i=e.Lang,s=e.UA,o=e.Node,u=e.Escape,a="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",f="application/x-shockwave-flash",l="10.0.22",c="http://fpdownload.macromedia.com/pub/flashplayer/update/current/swf/autoUpdater.swf?"+Math.random(),h="SWF.eventHandler",p={align:"",allowFullScreen:"",allowNetworking:"",allowScriptAccess:"",base:"",bgcolor:"",loop:"",menu:"",name:"",play:"",quality:"",salign:"",scale:"",tabindex:"",wmode:""};d._instances=d._instances||{},d.eventHandler=function(e,t){d._instances[e]._eventHandler(t)},d.prototype={_eventHandler:function(e){e.type==="swfReady"?(this.publish("swfReady",{fireOnce:!0}),this.fire("swfReady",e)):e.type!=="log"&&this.fire(e.type,e)},callSWF:function(e,t){return t||(t=[]),this._swf._node[e]?this._swf._node[e].apply(this._swf._node,t):null},toString:function(){return"SWF "+this._id}},e.augment(d,e.EventTarget),e.SWF=d},"3.9.1",{requires:["event-custom","node","swfdetect","escape"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("swf",function(e,t){function d(t,n,d){this._id=e.guid("yuiswf");var v=this._id,m=o.one(t),d=d||{},g=d.version||l,y=(g+"").split("."),b=r.isFlashVersionAtLeast(parseInt(y[0],10),parseInt(y[1],10),parseInt(y[2],10)),w=r.isFlashVersionAtLeast(8,0,0),E=w&&!b&&d.useExpressInstall,S=E?c:n,x="',s.ie&&(x+='');for(var k in d.fixedAttributes)p.hasOwnProperty(k)&&(x+='');for(var L in d.flashVars){var A=d.flashVars[L];i.isString(A)&&(C+="&"+u.html(L)+"="+u.html(encodeURIComponent(A)))}C&&(x+=''),x+="",m.set("innerHTML",x),this._swf=o.one("#"+v)}else{var O={};O.type="wrongflashversion",this.publish("wrongflashversion",{fireOnce:!0}),this.fire("wrongflashversion",O)}}var n=e.Event,r=e.SWFDetect,i=e.Lang,s=e.UA,o=e.Node,u=e.Escape,a="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",f="application/x-shockwave-flash",l="10.0.22",c="http://fpdownload.macromedia.com/pub/flashplayer/update/current/swf/autoUpdater.swf?"+Math.random(),h="SWF.eventHandler",p={align:"",allowFullScreen:"",allowNetworking:"",allowScriptAccess:"",base:"",bgcolor:"",loop:"",menu:"",name:"",play:"",quality:"",salign:"",scale:"",tabindex:"",wmode:""};d._instances=d._instances||{},d.eventHandler=function(e,t){d._instances[e]._eventHandler(t)},d.prototype={_eventHandler:function(e){e.type==="swfReady"?(this.publish("swfReady",{fireOnce:!0}),this.fire("swfReady",e)):e.type!=="log"&&this.fire(e.type,e)},callSWF:function(e,t){return t||(t=[]),this._swf._node[e]?this._swf._node[e].apply(this._swf._node,t):null},toString:function(){return"SWF "+this._id}},e.augment(d,e.EventTarget),e.SWF=d},"3.12.0",{requires:["event-custom","node","swfdetect","escape"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf.js b/lib/yuilib/3.12.0/swf/swf.js similarity index 96% rename from lib/yuilib/3.9.1/build/swf/swf.js rename to lib/yuilib/3.12.0/swf/swf.js index bc56946feda..a46720c3106 100644 --- a/lib/yuilib/3.9.1/build/swf/swf.js +++ b/lib/yuilib/3.12.0/swf/swf.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swf', function (Y, NAME) { /** @@ -200,4 +206,4 @@ Y.augment(SWF, Y.EventTarget); Y.SWF = SWF; -}, '3.9.1', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); +}, '3.12.0', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); diff --git a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js b/lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js similarity index 94% rename from lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js rename to lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js index c6d0b0326b5..41d2ec527b2 100644 --- a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js +++ b/lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swfdetect', function (Y, NAME) { /** @@ -114,4 +120,4 @@ Y.SWFDetect = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js b/lib/yuilib/3.12.0/swfdetect/swfdetect-min.js similarity index 78% rename from lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js rename to lib/yuilib/3.12.0/swfdetect/swfdetect-min.js index c08de19bc67..c0aa024dfe0 100644 --- a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js +++ b/lib/yuilib/3.12.0/swfdetect/swfdetect-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("swfdetect",function(e,t){function c(e){return parseInt(e,10)}function h(e){i.isNumber(c(e[0]))&&(r.flashMajor=e[0]),i.isNumber(c(e[1]))&&(r.flashMinor=e[1]),i.isNumber(c(e[2]))&&(r.flashRev=e[2])}var n=0,r=e.UA,i=e.Lang,s="ShockwaveFlash",o,u,a,f,l;if(r.gecko||r.webkit||r.opera){if(o=navigator.mimeTypes["application/x-shockwave-flash"])if(u=o.enabledPlugin)a=u.description.replace(/\s[rd]/g,".").replace(/[A-Za-z\s]+/g,"").split("."),h(a)}else if(r.ie){try{f=new ActiveXObject(s+"."+s+".6"),f.AllowScriptAccess="always"}catch(p){f!==null&&(n=6)}if(n===0)try{l=new ActiveXObject(s+"."+s),a=l.GetVariable("$version").replace(/[A-Za-z\s]+/g,"").split(","),h(a)}catch(d){}}e.SWFDetect={getFlashVersion:function(){return String(r.flashMajor)+"."+String(r.flashMinor)+"."+String(r.flashRev)},isFlashVersionAtLeast:function(e,t,n){var i=c(r.flashMajor),s=c(r.flashMinor),o=c(r.flashRev);return e=c(e||0),t=c(t||0),n=c(n||0),e===i?t===s?n<=o:t ul', - tab: '> ul > li', - tabLabel: '> ul > li > a', - tabviewPanel: '> div', - tabPanel: '> div > div', - selectedTab: '> ul > ' + DOT + _classNames.selectedTab, - selectedPanel: '> div ' + DOT + _classNames.selectedPanel - }, - TabviewBase = function() { this.init.apply(this, arguments); }; TabviewBase.NAME = 'tabviewBase'; -TabviewBase._queries = _queries; -TabviewBase._classNames = _classNames; +TabviewBase._classNames = { + tabview: getClassName(TABVIEW), + tabviewPanel: getClassName(TABVIEW, PANEL), + tabviewList: getClassName(TABVIEW, 'list'), + tab: getClassName(TAB), + tabLabel: getClassName(TAB, 'label'), + tabPanel: getClassName(TAB, PANEL), + selectedTab: getClassName(TAB, SELECTED), + selectedPanel: getClassName(TAB, PANEL, SELECTED) +}; +TabviewBase._queries = { + tabview: DOT + TabviewBase._classNames.tabview, + tabviewList: '> ul', + tab: '> ul > li', + tabLabel: '> ul > li > a', + tabviewPanel: '> div', + tabPanel: '> div > div', + selectedTab: '> ul > ' + DOT + TabviewBase._classNames.selectedTab, + selectedPanel: '> div ' + DOT + TabviewBase._classNames.selectedPanel +}; Y.mix(TabviewBase.prototype, { init: function(config) { @@ -48,11 +50,13 @@ Y.mix(TabviewBase.prototype, { }, initClassNames: function(index) { - Y.Object.each(_queries, function(query, name) { + var _classNames = Y.TabviewBase._classNames; + + Y.Object.each(Y.TabviewBase._queries, function(query, name) { // this === tabview._node if (_classNames[name]) { var result = this.all(query); - + if (index !== undefined) { result = result.item(index); } @@ -67,7 +71,9 @@ Y.mix(TabviewBase.prototype, { }, _select: function(index) { - var node = this._node, + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + node = this._node, oldItem = node.one(_queries.selectedTab), oldContent = node.one(_queries.selectedPanel), newItem = node.all(_queries.tab).item(index), @@ -91,7 +97,8 @@ Y.mix(TabviewBase.prototype, { }, initState: function() { - var node = this._node, + var _queries = Y.TabviewBase._queries, + node = this._node, activeNode = node.one(_queries.selectedTab), activeIndex = activeNode ? node.all(_queries.tab).indexOf(activeNode) : 0; @@ -101,7 +108,7 @@ Y.mix(TabviewBase.prototype, { // collapse extra space between list-items _scrubTextNodes: function() { - this._node.one(_queries.tabviewList).get('childNodes').each(function(node) { + this._node.one(Y.TabviewBase._queries.tabviewList).get('childNodes').each(function(node) { if (node.get('nodeType') === 3) { // text node node.remove(); } @@ -123,14 +130,14 @@ Y.mix(TabviewBase.prototype, { // this._node.delegate('tabview|' + this.tabEventName), this._node.delegate(this.tabEventName, this.onTabEvent, - _queries.tab, + Y.TabviewBase._queries.tab, this ); }, onTabEvent: function(e) { e.preventDefault(); - this._select(this._node.all(_queries.tab).indexOf(e.currentTarget)); + this._select(this._node.all(Y.TabviewBase._queries.tab).indexOf(e.currentTarget)); }, destroy: function() { @@ -141,4 +148,4 @@ Y.mix(TabviewBase.prototype, { Y.TabviewBase = TabviewBase; -}, '3.9.1', {"requires": ["node-event-delegate", "classnamemanager", "skin-sam-tabview"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "classnamemanager"]}); diff --git a/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js b/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js new file mode 100644 index 00000000000..9d5d4e5fd2a --- /dev/null +++ b/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview-base",function(e,t){var n=e.ClassNameManager.getClassName,r="tabview",i="tab",s="panel",o="selected",u={},a=".",f=function(){this.init.apply(this,arguments)};f.NAME="tabviewBase",f._classNames={tabview:n(r),tabviewPanel:n(r,s),tabviewList:n(r,"list"),tab:n(i),tabLabel:n(i,"label"),tabPanel:n(i,s),selectedTab:n(i,o),selectedPanel:n(i,s,o)},f._queries={tabview:a+f._classNames.tabview,tabviewList:"> ul",tab:"> ul > li",tabLabel:"> ul > li > a",tabviewPanel:"> div",tabPanel:"> div > div",selectedTab:"> ul > "+a+f._classNames.selectedTab,selectedPanel:"> div "+a+f._classNames.selectedPanel},e.mix(f.prototype,{init:function(t){t=t||u,this._node=t.host||e.one(t.node),this.refresh()},initClassNames:function(t){var n=e.TabviewBase._classNames;e.Object.each(e.TabviewBase._queries,function(e,r){if(n[r]){var i=this.all(e);t!==undefined&&(i=i.item(t)),i&&i.addClass(n[r])}},this._node),this._node.addClass(n.tabview)},_select:function(t){var n=e.TabviewBase._classNames,r=e.TabviewBase._queries,i=this._node,s=i.one(r.selectedTab),o=i.one(r.selectedPanel),u=i.all(r.tab).item(t),a=i.all(r.tabPanel).item(t);s&&s.removeClass(n.selectedTab),o&&o.removeClass(n.selectedPanel),u&&u.addClass(n.selectedTab),a&&a.addClass(n.selectedPanel)},initState:function(){var t=e.TabviewBase._queries,n=this._node,r=n.one(t.selectedTab),i=r?n.all(t.tab).indexOf(r):0;this._select(i)},_scrubTextNodes:function(){this._node.one(e.TabviewBase._queries.tabviewList).get("childNodes").each(function(e){e.get("nodeType")===3&&e.remove()})},refresh:function(){this._scrubTextNodes(),this.initClassNames(),this.initState(),this.initEvents()},tabEventName:"click",initEvents:function(){this._node.delegate(this.tabEventName,this.onTabEvent,e.TabviewBase._queries.tab,this)},onTabEvent:function(t){t.preventDefault(),this._select(this._node.all(e.TabviewBase._queries.tab).indexOf(t.currentTarget))},destroy:function(){this._node.detach(this.tabEventName)}}),e.TabviewBase=f},"3.12.0",{requires:["node-event-delegate","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-base/tabview-base.js b/lib/yuilib/3.12.0/tabview-base/tabview-base.js similarity index 64% rename from lib/yuilib/3.9.1/build/tabview-base/tabview-base.js rename to lib/yuilib/3.12.0/tabview-base/tabview-base.js index bc0bba49b00..767e5c45d48 100644 --- a/lib/yuilib/3.9.1/build/tabview-base/tabview-base.js +++ b/lib/yuilib/3.12.0/tabview-base/tabview-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-base', function (Y, NAME) { var getClassName = Y.ClassNameManager.getClassName, @@ -9,35 +15,31 @@ var getClassName = Y.ClassNameManager.getClassName, EMPTY_OBJ = {}, DOT = '.', - _classNames = { - tabview: getClassName(TABVIEW), - tabviewPanel: getClassName(TABVIEW, PANEL), - tabviewList: getClassName(TABVIEW, 'list'), - tab: getClassName(TAB), - tabLabel: getClassName(TAB, 'label'), - tabPanel: getClassName(TAB, PANEL), - selectedTab: getClassName(TAB, SELECTED), - selectedPanel: getClassName(TAB, PANEL, SELECTED) - }, - - _queries = { - tabview: DOT + _classNames.tabview, - tabviewList: '> ul', - tab: '> ul > li', - tabLabel: '> ul > li > a', - tabviewPanel: '> div', - tabPanel: '> div > div', - selectedTab: '> ul > ' + DOT + _classNames.selectedTab, - selectedPanel: '> div ' + DOT + _classNames.selectedPanel - }, - TabviewBase = function() { this.init.apply(this, arguments); }; TabviewBase.NAME = 'tabviewBase'; -TabviewBase._queries = _queries; -TabviewBase._classNames = _classNames; +TabviewBase._classNames = { + tabview: getClassName(TABVIEW), + tabviewPanel: getClassName(TABVIEW, PANEL), + tabviewList: getClassName(TABVIEW, 'list'), + tab: getClassName(TAB), + tabLabel: getClassName(TAB, 'label'), + tabPanel: getClassName(TAB, PANEL), + selectedTab: getClassName(TAB, SELECTED), + selectedPanel: getClassName(TAB, PANEL, SELECTED) +}; +TabviewBase._queries = { + tabview: DOT + TabviewBase._classNames.tabview, + tabviewList: '> ul', + tab: '> ul > li', + tabLabel: '> ul > li > a', + tabviewPanel: '> div', + tabPanel: '> div > div', + selectedTab: '> ul > ' + DOT + TabviewBase._classNames.selectedTab, + selectedPanel: '> div ' + DOT + TabviewBase._classNames.selectedPanel +}; Y.mix(TabviewBase.prototype, { init: function(config) { @@ -48,11 +50,13 @@ Y.mix(TabviewBase.prototype, { }, initClassNames: function(index) { - Y.Object.each(_queries, function(query, name) { + var _classNames = Y.TabviewBase._classNames; + + Y.Object.each(Y.TabviewBase._queries, function(query, name) { // this === tabview._node if (_classNames[name]) { var result = this.all(query); - + if (index !== undefined) { result = result.item(index); } @@ -67,7 +71,9 @@ Y.mix(TabviewBase.prototype, { }, _select: function(index) { - var node = this._node, + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + node = this._node, oldItem = node.one(_queries.selectedTab), oldContent = node.one(_queries.selectedPanel), newItem = node.all(_queries.tab).item(index), @@ -91,7 +97,8 @@ Y.mix(TabviewBase.prototype, { }, initState: function() { - var node = this._node, + var _queries = Y.TabviewBase._queries, + node = this._node, activeNode = node.one(_queries.selectedTab), activeIndex = activeNode ? node.all(_queries.tab).indexOf(activeNode) : 0; @@ -101,7 +108,7 @@ Y.mix(TabviewBase.prototype, { // collapse extra space between list-items _scrubTextNodes: function() { - this._node.one(_queries.tabviewList).get('childNodes').each(function(node) { + this._node.one(Y.TabviewBase._queries.tabviewList).get('childNodes').each(function(node) { if (node.get('nodeType') === 3) { // text node node.remove(); } @@ -123,14 +130,14 @@ Y.mix(TabviewBase.prototype, { // this._node.delegate('tabview|' + this.tabEventName), this._node.delegate(this.tabEventName, this.onTabEvent, - _queries.tab, + Y.TabviewBase._queries.tab, this ); }, onTabEvent: function(e) { e.preventDefault(); - this._select(this._node.all(_queries.tab).indexOf(e.currentTarget)); + this._select(this._node.all(Y.TabviewBase._queries.tab).indexOf(e.currentTarget)); }, destroy: function() { @@ -141,4 +148,4 @@ Y.mix(TabviewBase.prototype, { Y.TabviewBase = TabviewBase; -}, '3.9.1', {"requires": ["node-event-delegate", "classnamemanager", "skin-sam-tabview"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js similarity index 61% rename from lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js rename to lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js index 5d58531230c..0c1ec17aee9 100644 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-plugin', function (Y, NAME) { function TabviewPlugin() { @@ -14,4 +20,4 @@ Y.namespace('Plugin'); Y.Plugin.Tabview = TabviewPlugin; -}, '3.9.1', {"requires": ["tabview-base"]}); +}, '3.12.0', {"requires": ["tabview-base"]}); diff --git a/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js new file mode 100644 index 00000000000..8169a4df970 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview-plugin",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}n.NAME="tabviewPlugin",n.NS="tabs",e.extend(n,e.TabviewBase),e.namespace("Plugin"),e.Plugin.Tabview=n},"3.12.0",{requires:["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js similarity index 61% rename from lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js rename to lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js index 5d58531230c..0c1ec17aee9 100644 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-plugin', function (Y, NAME) { function TabviewPlugin() { @@ -14,4 +20,4 @@ Y.namespace('Plugin'); Y.Plugin.Tabview = TabviewPlugin; -}, '3.9.1', {"requires": ["tabview-base"]}); +}, '3.12.0', {"requires": ["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css similarity index 93% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css rename to lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css index f2c71b8d7f4..eb44bae5825 100644 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css +++ b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-tabview-panel{ background-color:#333333; color:#808080; diff --git a/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css new file mode 100644 index 00000000000..8a8d4a4f972 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-night .yui3-tabview-panel{background-color:#333;color:#808080;padding:1px}.yui3-skin-night .yui3-tab-panel p{margin:10px}.yui3-skin-night .yui3-tabview-list{background-color:#0f0f0f;border-top:1px solid #000;text-align:center;height:46px;background:-moz-linear-gradient(0% 100% 90deg,#0f0f0f 0,#1e1e1e 96%,#292929 100%);background:-webkit-gradient(linear,left bottom,left top,from(#0f0f0f),color-stop(0.96,#1e1e1e),to(#292929))}.yui3-skin-night .yui3-tabview-list li{margin-top:8px}.yui3-skin-night .yui3-tabview-list li a{border:solid 1px #0c0c0c;border-right-style:none;-moz-box-shadow:0 1px #222;-webkit-box-shadow:0 1px #222;box-shadow:0 1px #222;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-tabview-list li.yui3-tab-selected a{background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-tabview-list li:first-child a{-moz-border-radius:6px 0 0 6px;-webkit-border-radius:6px 0 0 6px;border-radius:6px 0 0 6px}.yui3-skin-night .yui3-tabview-list li:last-child a{border-right-style:solid;-moz-border-radius:0 6px 6px 0;-webkit-border-radius:0 6px 6px 0;border-radius:0 6px 6px 0}#yui3-css-stamp.skin-night-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css similarity index 92% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css rename to lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css index 47b6e8407cf..ad9809b2409 100644 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css +++ b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* .yui-navset defaults to .yui-navset-top */ .yui3-skin-sam .yui3-tabview-list { border:solid #2647a0; /* color between tab list and content */ diff --git a/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css new file mode 100644 index 00000000000..fc28685c477 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(../../../../assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(../../../../assets/skins/sam/sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(../../../../assets/skins/sam/sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css b/lib/yuilib/3.12.0/tabview/assets/tabview-core.css similarity index 84% rename from lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css rename to lib/yuilib/3.12.0/tabview/assets/tabview-core.css index 66c74c57155..1d709d19590 100644 --- a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css +++ b/lib/yuilib/3.12.0/tabview/assets/tabview-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-tab-panel { display:none; } diff --git a/lib/yuilib/3.9.1/build/tabview/tabview-debug.js b/lib/yuilib/3.12.0/tabview/tabview-debug.js similarity index 81% rename from lib/yuilib/3.9.1/build/tabview/tabview-debug.js rename to lib/yuilib/3.12.0/tabview/tabview-debug.js index 014857921d9..3e5ccc67849 100644 --- a/lib/yuilib/3.9.1/build/tabview/tabview-debug.js +++ b/lib/yuilib/3.12.0/tabview/tabview-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview', function (Y, NAME) { /** @@ -7,9 +13,7 @@ YUI.add('tabview', function (Y, NAME) { * @module tabview */ -var _queries = Y.TabviewBase._queries, - _classNames = Y.TabviewBase._classNames, - DOT = '.', +var DOT = '.', /** * Provides a tabbed widget interface @@ -21,16 +25,25 @@ var _queries = Y.TabviewBase._queries, * @uses WidgetParent */ TabView = Y.Base.create('tabView', Y.Widget, [Y.WidgetParent], { + _afterChildAdded: function() { this.get('contentBox').focusManager.refresh(); }, _defListNodeValueFn: function() { - return Y.Node.create(TabView.LIST_TEMPLATE); + var node = Y.Node.create(this.LIST_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewList); + + return node; }, _defPanelNodeValueFn: function() { - return Y.Node.create(TabView.PANEL_TEMPLATE); + var node = Y.Node.create(this.PANEL_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewPanel); + + return node; }, _afterChildRemoved: function(e) { // update the selected tab when removed @@ -47,9 +60,8 @@ var _queries = Y.TabviewBase._queries, this.get('contentBox').focusManager.refresh(); }, - _initAria: function() { - var contentBox = this.get('contentBox'), - tablist = contentBox.one(_queries.tabviewList); + _initAria: function(contentBox) { + var tablist = contentBox.one(Y.TabviewBase._queries.tabviewList); if (tablist) { tablist.setAttrs({ @@ -65,7 +77,7 @@ var _queries = Y.TabviewBase._queries, // among each of the tabs. this.get('contentBox').plug(Y.Plugin.NodeFocusManager, { - descendants: DOT + _classNames.tabLabel, + descendants: DOT + Y.TabviewBase._classNames.tabLabel, keys: { next: 'down:39', // Right arrow previous: 'down:37' }, // Left arrow circular: true @@ -75,13 +87,14 @@ var _queries = Y.TabviewBase._queries, this.after('addChild', this._afterChildAdded); this.after('removeChild', this._afterChildRemoved); }, - + renderUI: function() { var contentBox = this.get('contentBox'); this._renderListBox(contentBox); this._renderPanelBox(contentBox); this._childrenContainer = this.get('listNode'); this._renderTabs(contentBox); + this._initAria(contentBox); }, _setDefSelection: function() { @@ -116,7 +129,9 @@ var _queries = Y.TabviewBase._queries, }, _renderTabs: function(contentBox) { - var tabs = contentBox.all(_queries.tab), + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + tabs = contentBox.all(_queries.tab), panelNode = this.get('panelNode'), panels = (panelNode) ? this.get('panelNode').get('children') : null, tabview = this; @@ -137,10 +152,6 @@ var _queries = Y.TabviewBase._queries, } } }, { - - LIST_TEMPLATE: '
      ', - PANEL_TEMPLATE: '
      ', - ATTRS: { defaultChildType: { value: 'Tab' @@ -150,7 +161,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewList); + node.addClass(Y.TabviewBase._classNames.tabviewList); } return node; }, @@ -162,7 +173,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewPanel); + node.addClass(Y.TabviewBase._classNames.tabviewPanel); } return node; }, @@ -177,15 +188,24 @@ var _queries = Y.TabviewBase._queries, }, HTML_PARSER: { - listNode: _queries.tabviewList, - panelNode: _queries.tabviewPanel - } + listNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewList); + }, + panelNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewPanel); + } + }, + + // Static for legacy support. + LIST_TEMPLATE: '
        ', + PANEL_TEMPLATE: '
        ' }); -Y.TabView = TabView; -var Lang = Y.Lang, - _classNames = Y.TabviewBase._classNames; +// Map to static values by default. +TabView.prototype.LIST_TEMPLATE = TabView.LIST_TEMPLATE; +TabView.prototype.PANEL_TEMPLATE = TabView.PANEL_TEMPLATE; +Y.TabView = TabView; /** * Provides Tab instances for use with TabView * @param config {Object} Object literal specifying tabview configuration properties. @@ -196,12 +216,12 @@ var Lang = Y.Lang, * @uses WidgetChild */ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { - BOUNDING_TEMPLATE: '
      • ', - CONTENT_TEMPLATE: '', - PANEL_TEMPLATE: '
        ', + BOUNDING_TEMPLATE: '
      • ', + CONTENT_TEMPLATE: '', + PANEL_TEMPLATE: '
        ', _uiSetSelectedPanel: function(selected) { - this.get('panelNode').toggleClass(_classNames.selectedPanel, selected); + this.get('panelNode').toggleClass(Y.TabviewBase._classNames.selectedPanel, selected); }, _afterTabSelectedChange: function(event) { @@ -220,7 +240,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { var anchor = this.get('contentBox'), id = anchor.get('id'), panel = this.get('panelNode'); - + if (!id) { id = Y.guid(); anchor.set('id', id); @@ -228,8 +248,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // Apply the ARIA roles, states and properties to each tab anchor.set('role', 'tab'); anchor.get('parentNode').set('role', 'presentation'); - - + // Apply the ARIA roles, states and properties to each panel panel.setAttrs({ role: 'tabpanel', @@ -238,6 +257,10 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }, syncUI: function() { + var _classNames = Y.TabviewBase._classNames; + + this.get('boundingBox').addClass(_classNames.tab); + this.get('contentBox').addClass(_classNames.tabLabel); this.set('label', this.get('label')); this.set('content', this.get('content')); this._uiSetSelectedPanel(this.get('selected')); @@ -271,7 +294,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { panel.appendChild(this.get('panelNode')); } }, - + _remove: function() { this.get('boundingBox').remove(); this.get('panelNode').remove(); @@ -285,7 +308,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { e.target.set('selected', 1); } }, - + initializer: function() { this.publish(this.get('triggerEvent'), { defaultFn: this._onActivate @@ -318,7 +341,8 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // find panel by ID mapping from label href _defPanelNodeValueFn: function() { - var href = this.get('contentBox').get('href') || '', + var _classNames = Y.TabviewBase._classNames, + href = this.get('contentBox').get('href') || '', parent = this.get('parent'), hashIndex = href.indexOf('#'), panel; @@ -340,6 +364,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { if (!panel) { // create if none found panel = Y.Node.create(this.PANEL_TEMPLATE); + panel.addClass(_classNames.tabPanel); } return panel; } @@ -380,13 +405,13 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabPanel); + node.addClass(Y.TabviewBase._classNames.tabPanel); } return node; }, valueFn: '_defPanelNodeValueFn' }, - + tabIndex: { value: null, validator: '_validTabIndex' @@ -396,7 +421,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { HTML_PARSER: { selected: function() { - var ret = (this.get('boundingBox').hasClass(_classNames.selectedTab)) ? + var ret = (this.get('boundingBox').hasClass(Y.TabviewBase._classNames.selectedTab)) ? 1 : 0; return ret; } @@ -405,7 +430,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-parent", diff --git a/lib/yuilib/3.12.0/tabview/tabview-min.js b/lib/yuilib/3.12.0/tabview/tabview-min.js new file mode 100644 index 00000000000..97bee44c1d5 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/tabview-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview",function(e,t){var n=".",r=e.Base.create("tabView",e.Widget,[e.WidgetParent],{_afterChildAdded:function(){this.get("contentBox").focusManager.refresh()},_defListNodeValueFn:function(){var t=e.Node.create(this.LIST_TEMPLATE);return t.addClass(e.TabviewBase._classNames.tabviewList),t},_defPanelNodeValueFn:function(){var t=e.Node.create(this.PANEL_TEMPLATE);return t.addClass(e.TabviewBase._classNames.tabviewPanel),t},_afterChildRemoved:function(e){var t=e.index,n=this.get("selection");n||(n=this.item(t-1)||this.item(0),n&&n.set("selected",1)),this.get("contentBox").focusManager.refresh()},_initAria:function(t){var n=t.one(e.TabviewBase._queries.tabviewList);n&&n.setAttrs({role:"tablist"})},bindUI:function(){this.get("contentBox").plug(e.Plugin.NodeFocusManager,{descendants:n+e.TabviewBase._classNames.tabLabel,keys:{next:"down:39",previous:"down:37"},circular:!0}),this.after("render",this._setDefSelection),this.after("addChild",this._afterChildAdded),this.after("removeChild",this._afterChildRemoved)},renderUI:function(){var e=this.get("contentBox");this._renderListBox(e),this._renderPanelBox(e),this._childrenContainer=this.get("listNode"),this._renderTabs(e),this._initAria(e)},_setDefSelection:function(){var e=this.get("selection")||this.item(0);this.some(function(t){if(t.get("selected"))return e=t,!0}),e&&(this.set("selection",e),e.set("selected",1))},_renderListBox:function(e){var t=this.get("listNode");t.inDoc()||e.append(t)},_renderPanelBox:function(e){var t=this.get("panelNode");t.inDoc()||e.append(t)},_renderTabs:function(t){var r=e.TabviewBase._classNames,i=e.TabviewBase._queries,s=t.all(i.tab),o=this.get("panelNode"),u=o?this.get("panelNode").get("children"):null,a=this;s&&(s.addClass(r.tab),t.all(i.tabLabel).addClass(r.tabLabel),t.all(i.tabPanel).addClass(r.tabPanel),s.each(function(e,t){var i=u?u.item(t):null;a.add({boundingBox:e,contentBox:e.one(n+r.tabLabel),panelNode:i})}))}},{ATTRS:{defaultChildType:{value:"Tab"},listNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabviewList),t},valueFn:"_defListNodeValueFn"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabviewPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null}},HTML_PARSER:{listNode:function(t){return t.one(e.TabviewBase._queries.tabviewList)},panelNode:function(t){return t.one(e.TabviewBase._queries.tabviewPanel)}},LIST_TEMPLATE:"
          ",PANEL_TEMPLATE:"
          "});r.prototype.LIST_TEMPLATE=r.LIST_TEMPLATE,r.prototype.PANEL_TEMPLATE=r.PANEL_TEMPLATE,e.TabView=r,e.Tab=e.Base.create("tab",e.Widget,[e.WidgetChild],{BOUNDING_TEMPLATE:"
        • ",CONTENT_TEMPLATE:"",PANEL_TEMPLATE:"
          ",_uiSetSelectedPanel:function(t){this.get("panelNode").toggleClass(e.TabviewBase._classNames.selectedPanel,t)},_afterTabSelectedChange:function(e){this._uiSetSelectedPanel(e.newVal)},_afterParentChange:function(e){e.newVal?this._add():this._remove()},_initAria:function(){var t=this.get("contentBox"),n=t.get("id"),r=this.get("panelNode");n||(n=e.guid(),t.set("id",n)),t.set("role","tab"),t.get("parentNode").set("role","presentation"),r.setAttrs({role:"tabpanel","aria-labelledby":n})},syncUI:function(){var t=e.TabviewBase._classNames;this.get("boundingBox").addClass(t.tab),this.get("contentBox").addClass(t.tabLabel),this.set("label",this.get("label")),this.set("content",this.get("content")),this._uiSetSelectedPanel(this.get("selected"))},bindUI:function(){this.after("selectedChange",this._afterTabSelectedChange),this.after("parentChange",this._afterParentChange)},renderUI:function(){this._renderPanel(),this._initAria()},_renderPanel:function(){this.get("parent").get("panelNode").appendChild(this.get("panelNode"))},_add:function(){var e=this.get("parent").get("contentBox"),t=e.get("listNode"),n=e.get("panelNode");t&&t.appendChild(this.get("boundingBox")),n&&n.appendChild(this.get("panelNode"))},_remove:function(){this.get("boundingBox").remove(),this.get("panelNode").remove()},_onActivate:function(e){e.target===this&&(e.domEvent.preventDefault(),e.target.set("selected",1))},initializer:function(){this.publish(this.get("triggerEvent"),{defaultFn:this._onActivate})},_defLabelGetter:function(){return this.get("contentBox").getHTML()},_defLabelSetter:function(e){var t=this.get("contentBox");return t.getHTML()!==e&&t.setHTML(e),e},_defContentSetter:function(e){var t=this.get("panelNode");return t.getHTML()!==e&&t.setHTML(e),e},_defContentGetter:function(){return this.get("panelNode").getHTML()},_defPanelNodeValueFn:function(){var t=e.TabviewBase._classNames,n=this.get("contentBox").get("href")||"",r=this.get("parent"),i=n.indexOf("#"),s;return n=n.substr(i),n.charAt(0)==="#"&&(s=e.one(n),s&&s.addClass(t.tabPanel)),!s&&r&&(s=r.get("panelNode").get("children").item(this.get("index"))),s||(s=e.Node.create(this.PANEL_TEMPLATE),s.addClass(t.tabPanel)),s}},{ATTRS:{triggerEvent:{value:"click"},label:{setter:"_defLabelSetter",getter:"_defLabelGetter"},content:{setter:"_defContentSetter",getter:"_defContentGetter"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null,validator:"_validTabIndex"}},HTML_PARSER:{selected:function(){var t=this.get("boundingBox").hasClass(e.TabviewBase._classNames.selectedTab)?1:0;return t}}})},"3.12.0",{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/tabview/tabview.js b/lib/yuilib/3.12.0/tabview/tabview.js similarity index 81% rename from lib/yuilib/3.9.1/build/tabview/tabview.js rename to lib/yuilib/3.12.0/tabview/tabview.js index 014857921d9..3e5ccc67849 100644 --- a/lib/yuilib/3.9.1/build/tabview/tabview.js +++ b/lib/yuilib/3.12.0/tabview/tabview.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview', function (Y, NAME) { /** @@ -7,9 +13,7 @@ YUI.add('tabview', function (Y, NAME) { * @module tabview */ -var _queries = Y.TabviewBase._queries, - _classNames = Y.TabviewBase._classNames, - DOT = '.', +var DOT = '.', /** * Provides a tabbed widget interface @@ -21,16 +25,25 @@ var _queries = Y.TabviewBase._queries, * @uses WidgetParent */ TabView = Y.Base.create('tabView', Y.Widget, [Y.WidgetParent], { + _afterChildAdded: function() { this.get('contentBox').focusManager.refresh(); }, _defListNodeValueFn: function() { - return Y.Node.create(TabView.LIST_TEMPLATE); + var node = Y.Node.create(this.LIST_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewList); + + return node; }, _defPanelNodeValueFn: function() { - return Y.Node.create(TabView.PANEL_TEMPLATE); + var node = Y.Node.create(this.PANEL_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewPanel); + + return node; }, _afterChildRemoved: function(e) { // update the selected tab when removed @@ -47,9 +60,8 @@ var _queries = Y.TabviewBase._queries, this.get('contentBox').focusManager.refresh(); }, - _initAria: function() { - var contentBox = this.get('contentBox'), - tablist = contentBox.one(_queries.tabviewList); + _initAria: function(contentBox) { + var tablist = contentBox.one(Y.TabviewBase._queries.tabviewList); if (tablist) { tablist.setAttrs({ @@ -65,7 +77,7 @@ var _queries = Y.TabviewBase._queries, // among each of the tabs. this.get('contentBox').plug(Y.Plugin.NodeFocusManager, { - descendants: DOT + _classNames.tabLabel, + descendants: DOT + Y.TabviewBase._classNames.tabLabel, keys: { next: 'down:39', // Right arrow previous: 'down:37' }, // Left arrow circular: true @@ -75,13 +87,14 @@ var _queries = Y.TabviewBase._queries, this.after('addChild', this._afterChildAdded); this.after('removeChild', this._afterChildRemoved); }, - + renderUI: function() { var contentBox = this.get('contentBox'); this._renderListBox(contentBox); this._renderPanelBox(contentBox); this._childrenContainer = this.get('listNode'); this._renderTabs(contentBox); + this._initAria(contentBox); }, _setDefSelection: function() { @@ -116,7 +129,9 @@ var _queries = Y.TabviewBase._queries, }, _renderTabs: function(contentBox) { - var tabs = contentBox.all(_queries.tab), + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + tabs = contentBox.all(_queries.tab), panelNode = this.get('panelNode'), panels = (panelNode) ? this.get('panelNode').get('children') : null, tabview = this; @@ -137,10 +152,6 @@ var _queries = Y.TabviewBase._queries, } } }, { - - LIST_TEMPLATE: '
            ', - PANEL_TEMPLATE: '
            ', - ATTRS: { defaultChildType: { value: 'Tab' @@ -150,7 +161,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewList); + node.addClass(Y.TabviewBase._classNames.tabviewList); } return node; }, @@ -162,7 +173,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewPanel); + node.addClass(Y.TabviewBase._classNames.tabviewPanel); } return node; }, @@ -177,15 +188,24 @@ var _queries = Y.TabviewBase._queries, }, HTML_PARSER: { - listNode: _queries.tabviewList, - panelNode: _queries.tabviewPanel - } + listNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewList); + }, + panelNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewPanel); + } + }, + + // Static for legacy support. + LIST_TEMPLATE: '
              ', + PANEL_TEMPLATE: '
              ' }); -Y.TabView = TabView; -var Lang = Y.Lang, - _classNames = Y.TabviewBase._classNames; +// Map to static values by default. +TabView.prototype.LIST_TEMPLATE = TabView.LIST_TEMPLATE; +TabView.prototype.PANEL_TEMPLATE = TabView.PANEL_TEMPLATE; +Y.TabView = TabView; /** * Provides Tab instances for use with TabView * @param config {Object} Object literal specifying tabview configuration properties. @@ -196,12 +216,12 @@ var Lang = Y.Lang, * @uses WidgetChild */ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { - BOUNDING_TEMPLATE: '
            • ', - CONTENT_TEMPLATE: '', - PANEL_TEMPLATE: '
              ', + BOUNDING_TEMPLATE: '
            • ', + CONTENT_TEMPLATE: '', + PANEL_TEMPLATE: '
              ', _uiSetSelectedPanel: function(selected) { - this.get('panelNode').toggleClass(_classNames.selectedPanel, selected); + this.get('panelNode').toggleClass(Y.TabviewBase._classNames.selectedPanel, selected); }, _afterTabSelectedChange: function(event) { @@ -220,7 +240,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { var anchor = this.get('contentBox'), id = anchor.get('id'), panel = this.get('panelNode'); - + if (!id) { id = Y.guid(); anchor.set('id', id); @@ -228,8 +248,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // Apply the ARIA roles, states and properties to each tab anchor.set('role', 'tab'); anchor.get('parentNode').set('role', 'presentation'); - - + // Apply the ARIA roles, states and properties to each panel panel.setAttrs({ role: 'tabpanel', @@ -238,6 +257,10 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }, syncUI: function() { + var _classNames = Y.TabviewBase._classNames; + + this.get('boundingBox').addClass(_classNames.tab); + this.get('contentBox').addClass(_classNames.tabLabel); this.set('label', this.get('label')); this.set('content', this.get('content')); this._uiSetSelectedPanel(this.get('selected')); @@ -271,7 +294,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { panel.appendChild(this.get('panelNode')); } }, - + _remove: function() { this.get('boundingBox').remove(); this.get('panelNode').remove(); @@ -285,7 +308,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { e.target.set('selected', 1); } }, - + initializer: function() { this.publish(this.get('triggerEvent'), { defaultFn: this._onActivate @@ -318,7 +341,8 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // find panel by ID mapping from label href _defPanelNodeValueFn: function() { - var href = this.get('contentBox').get('href') || '', + var _classNames = Y.TabviewBase._classNames, + href = this.get('contentBox').get('href') || '', parent = this.get('parent'), hashIndex = href.indexOf('#'), panel; @@ -340,6 +364,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { if (!panel) { // create if none found panel = Y.Node.create(this.PANEL_TEMPLATE); + panel.addClass(_classNames.tabPanel); } return panel; } @@ -380,13 +405,13 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabPanel); + node.addClass(Y.TabviewBase._classNames.tabPanel); } return node; }, valueFn: '_defPanelNodeValueFn' }, - + tabIndex: { value: null, validator: '_validTabIndex' @@ -396,7 +421,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { HTML_PARSER: { selected: function() { - var ret = (this.get('boundingBox').hasClass(_classNames.selectedTab)) ? + var ret = (this.get('boundingBox').hasClass(Y.TabviewBase._classNames.selectedTab)) ? 1 : 0; return ret; } @@ -405,7 +430,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-parent", diff --git a/lib/yuilib/3.9.1/build/template-base/template-base-debug.js b/lib/yuilib/3.12.0/template-base/template-base-debug.js similarity index 55% rename from lib/yuilib/3.9.1/build/template-base/template-base-debug.js rename to lib/yuilib/3.12.0/template-base/template-base-debug.js index 7fdbe42214a..b6eb8970865 100644 --- a/lib/yuilib/3.9.1/build/template-base/template-base-debug.js +++ b/lib/yuilib/3.12.0/template-base/template-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-base', function (Y, NAME) { /** @@ -74,6 +80,119 @@ function Template(engine, defaults) { } } +/** +Registry that maps template names to revived template functions. + +@property _registry +@type Object +@static +@protected +@since 3.12.0 +**/ +Template._registry = {}; + +/** +Registers a pre-compiled template into the central template registry with a +given template string, allowing that template to be called and rendered by +that name using the `Y.Template.render()` static method. + +For example, given the following simple Handlebars template, in `foo.hbs`: +@example +

              {{tagline}}

              + +It can be precompiled using the Handlebars CLI, and added into a YUI module +in the following way. Alternatively, `locator` can be used to automate this +process for you: +@example + YUI.add('templates-foo', function (Y) { + + var engine = new Y.Template(Y.Handlebars), + precompiled; + + precompiled = // Long precompiled template function here // + + Y.Template.register('foo', engine.revive(precompiled)); + + }, '0.0.1', {requires: ['template-base', 'handlebars-base']}); + +See the `Y.Template#render` method to see how a registered template is used. + +@method register +@param {String} templateName The template name. +@param {Function} template The function that returns the rendered string. The + function should take the following parameters. If a pre-compiled template + does not accept these parameters, it is up to the developer to normalize it. + @param {Object} [template.data] Data object to provide when rendering the + template. + @param {Object} [template.options] Options to pass along to the template + engine. See template engine docs for options supported by each engine. +@return {Function} revivedTemplate This is the same function as in `template`, + and is done to maintain compatibility with the `Y.Template#revive()` method. +@static +@since 3.12.0 +**/ +Template.register = function (templateName, template) { + Template._registry[templateName] = template; + return template; +}; + +/** +Returns the registered template function, given the template name. If an +unregistered template is accessed, this will return `undefined`. + +@method get +@param {String} templateName The template name. +@return {Function} revivedTemplate The revived template function, or `undefined` + if it has not been registered. +@static +@since 3.12.0 +**/ + +Template.get = function (templateName) { + return Template._registry[templateName]; +} + +/** +Renders a template into a string, given the registered template name and data +to be interpolated. The template name must have been registered previously with +`register()`. + +Once the template has been registered and built into a YUI module, it can be +listed as a dependency for any other YUI module. Continuing from the above +example, the registered template can be used in the following way: + +@example + YUI.add('bar', function (Y) { + + var html = Y.Template.render('foo', { + tagline: '"bar" is now template language agnostic' + }); + + }, '0.0.1', {requires: ['template-base', 'templates-foo']}); + +The template can now be used without having to know which specific rendering +engine generated it. + +@param {String} templateName The abstracted name to reference the template. +@param {Object} [data] The data to be interpolated into the template. +@param {Object} [options] Any additional options to be passed into the template. +@return {String} output The rendered result. +@static +@since 3.12.0 +**/ +Template.render = function (templateName, data, options) { + var template = Template._registry[templateName], + result = ''; + + if (template) { + result = template(data, options); + } else { + Y.error('Unregistered template: "' + templateName + '"'); + } + + return result; +}; + Template.prototype = { /** Compiles a template with the current template engine and returns a compiled @@ -156,4 +275,4 @@ Template.prototype = { Y.Template = Y.Template ? Y.mix(Template, Y.Template) : Template; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/template-base/template-base-min.js b/lib/yuilib/3.12.0/template-base/template-base-min.js new file mode 100644 index 00000000000..6dc95116893 --- /dev/null +++ b/lib/yuilib/3.12.0/template-base/template-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("template-base",function(e,t){function n(t,n){this.defaults=n,this.engine=t||e.Template.Micro,this.engine||e.error("No template engine loaded.")}n._registry={},n.register=function(e,t){return n._registry[e]=t,t},n.get=function(e){return n._registry[e]},n.render=function(t,r,i){var s=n._registry[t],o="";return s?o=s(r,i):e.error('Unregistered template: "'+t+'"'),o},n.prototype={compile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.compile(t,n)},precompile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.precompile(t,n)},render:function(t,n,r){return r=r?e.merge(this.defaults,r):this.defaults,this.engine.render?this.engine.render(t,n,r):this.engine.compile(t,r)(n,r)},revive:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.revive?this.engine.revive(t,n):t}},e.Template=e.Template?e.mix(n,e.Template):n},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/template-base/template-base.js b/lib/yuilib/3.12.0/template-base/template-base.js similarity index 55% rename from lib/yuilib/3.9.1/build/template-base/template-base.js rename to lib/yuilib/3.12.0/template-base/template-base.js index 7fdbe42214a..b6eb8970865 100644 --- a/lib/yuilib/3.9.1/build/template-base/template-base.js +++ b/lib/yuilib/3.12.0/template-base/template-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-base', function (Y, NAME) { /** @@ -74,6 +80,119 @@ function Template(engine, defaults) { } } +/** +Registry that maps template names to revived template functions. + +@property _registry +@type Object +@static +@protected +@since 3.12.0 +**/ +Template._registry = {}; + +/** +Registers a pre-compiled template into the central template registry with a +given template string, allowing that template to be called and rendered by +that name using the `Y.Template.render()` static method. + +For example, given the following simple Handlebars template, in `foo.hbs`: +@example +

              {{tagline}}

              + +It can be precompiled using the Handlebars CLI, and added into a YUI module +in the following way. Alternatively, `locator` can be used to automate this +process for you: +@example + YUI.add('templates-foo', function (Y) { + + var engine = new Y.Template(Y.Handlebars), + precompiled; + + precompiled = // Long precompiled template function here // + + Y.Template.register('foo', engine.revive(precompiled)); + + }, '0.0.1', {requires: ['template-base', 'handlebars-base']}); + +See the `Y.Template#render` method to see how a registered template is used. + +@method register +@param {String} templateName The template name. +@param {Function} template The function that returns the rendered string. The + function should take the following parameters. If a pre-compiled template + does not accept these parameters, it is up to the developer to normalize it. + @param {Object} [template.data] Data object to provide when rendering the + template. + @param {Object} [template.options] Options to pass along to the template + engine. See template engine docs for options supported by each engine. +@return {Function} revivedTemplate This is the same function as in `template`, + and is done to maintain compatibility with the `Y.Template#revive()` method. +@static +@since 3.12.0 +**/ +Template.register = function (templateName, template) { + Template._registry[templateName] = template; + return template; +}; + +/** +Returns the registered template function, given the template name. If an +unregistered template is accessed, this will return `undefined`. + +@method get +@param {String} templateName The template name. +@return {Function} revivedTemplate The revived template function, or `undefined` + if it has not been registered. +@static +@since 3.12.0 +**/ + +Template.get = function (templateName) { + return Template._registry[templateName]; +} + +/** +Renders a template into a string, given the registered template name and data +to be interpolated. The template name must have been registered previously with +`register()`. + +Once the template has been registered and built into a YUI module, it can be +listed as a dependency for any other YUI module. Continuing from the above +example, the registered template can be used in the following way: + +@example + YUI.add('bar', function (Y) { + + var html = Y.Template.render('foo', { + tagline: '"bar" is now template language agnostic' + }); + + }, '0.0.1', {requires: ['template-base', 'templates-foo']}); + +The template can now be used without having to know which specific rendering +engine generated it. + +@param {String} templateName The abstracted name to reference the template. +@param {Object} [data] The data to be interpolated into the template. +@param {Object} [options] Any additional options to be passed into the template. +@return {String} output The rendered result. +@static +@since 3.12.0 +**/ +Template.render = function (templateName, data, options) { + var template = Template._registry[templateName], + result = ''; + + if (template) { + result = template(data, options); + } else { + Y.error('Unregistered template: "' + templateName + '"'); + } + + return result; +}; + Template.prototype = { /** Compiles a template with the current template engine and returns a compiled @@ -156,4 +275,4 @@ Template.prototype = { Y.Template = Y.Template ? Y.mix(Template, Y.Template) : Template; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js b/lib/yuilib/3.12.0/template-micro/template-micro-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js rename to lib/yuilib/3.12.0/template-micro/template-micro-debug.js index 46606b922cd..6045e704934 100644 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-micro', function (Y, NAME) { /*jshint expr:true */ @@ -247,4 +253,4 @@ Micro.revive = function (precompiled) { }; -}, '3.9.1', {"requires": ["escape"]}); +}, '3.12.0', {"requires": ["escape"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro-min.js b/lib/yuilib/3.12.0/template-micro/template-micro-min.js similarity index 85% rename from lib/yuilib/3.9.1/build/template-micro/template-micro-min.js rename to lib/yuilib/3.12.0/template-micro/template-micro-min.js index 8333c28a972..5108b322579 100644 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro-min.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("template-micro",function(e,t){var n=e.namespace("Template.Micro");n.options={code:/<%([\s\S]+?)%>/g,escapedOutput:/<%=([\s\S]+?)%>/g,rawOutput:/<%==([\s\S]+?)%>/g,stringEscape:/\\|'|\r|\n|\t|\u2028|\u2029/g,stringReplace:{"\\":"\\\\","'":"\\'","\r":"\\r","\n":"\\n"," ":"\\t","\u2028":"\\u2028","\u2029":"\\u2029"}},n.compile=function(t,r){var i=[],s="\uffff",o="\ufffe",u;return r=e.merge(n.options,r),u="var $b='', $v=function (v){return v || v === 0 ? v : $b;}, $t='"+t.replace(/\ufffe|\uffff/g,"").replace(r.rawOutput,function(e,t){return o+(i.push("'+\n$v("+t+")+\n'")-1)+s}).replace(r.escapedOutput,function(e,t){return o+(i.push("'+\n$e($v("+t+"))+\n'")-1)+s}).replace(r.code,function(e,t){return o+(i.push("';\n"+t+"\n$t+='")-1)+s}).replace(r.stringEscape,function(e){return r.stringReplace[e]||""}).replace(/\ufffe(\d+)\uffff/g,function(e,t){return i[parseInt(t,10)]}).replace(/\n\$t\+='';\n/g,"\n")+"';\nreturn $t;",r.precompile?"function (Y, $e, data) {\n"+u+"\n}":this.revive(new Function("Y","$e","data",u))},n.precompile=function(e,t){return t||(t={}),t.precompile=!0,this.compile(e,t)},n.render=function(e,t,n){return this.compile(e,n)(t)},n.revive=function(t){return function(n){return n||(n={}),t.call(n,e,e.Escape.html,n)}}},"3.9.1",{requires:["escape"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("template-micro",function(e,t){var n=e.namespace("Template.Micro");n.options={code:/<%([\s\S]+?)%>/g,escapedOutput:/<%=([\s\S]+?)%>/g,rawOutput:/<%==([\s\S]+?)%>/g,stringEscape:/\\|'|\r|\n|\t|\u2028|\u2029/g,stringReplace:{"\\":"\\\\","'":"\\'","\r":"\\r","\n":"\\n"," ":"\\t","\u2028":"\\u2028","\u2029":"\\u2029"}},n.compile=function(t,r){var i=[],s="\uffff",o="\ufffe",u;return r=e.merge(n.options,r),u="var $b='', $v=function (v){return v || v === 0 ? v : $b;}, $t='"+t.replace(/\ufffe|\uffff/g,"").replace(r.rawOutput,function(e,t){return o+(i.push("'+\n$v("+t+")+\n'")-1)+s}).replace(r.escapedOutput,function(e,t){return o+(i.push("'+\n$e($v("+t+"))+\n'")-1)+s}).replace(r.code,function(e,t){return o+(i.push("';\n"+t+"\n$t+='")-1)+s}).replace(r.stringEscape,function(e){return r.stringReplace[e]||""}).replace(/\ufffe(\d+)\uffff/g,function(e,t){return i[parseInt(t,10)]}).replace(/\n\$t\+='';\n/g,"\n")+"';\nreturn $t;",r.precompile?"function (Y, $e, data) {\n"+u+"\n}":this.revive(new Function("Y","$e","data",u))},n.precompile=function(e,t){return t||(t={}),t.precompile=!0,this.compile(e,t)},n.render=function(e,t,n){return this.compile(e,n)(t)},n.revive=function(t){return function(n){return n||(n={}),t.call(n,e,e.Escape.html,n)}}},"3.12.0",{requires:["escape"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro.js b/lib/yuilib/3.12.0/template-micro/template-micro.js similarity index 97% rename from lib/yuilib/3.9.1/build/template-micro/template-micro.js rename to lib/yuilib/3.12.0/template-micro/template-micro.js index 46606b922cd..6045e704934 100644 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-micro', function (Y, NAME) { /*jshint expr:true */ @@ -247,4 +253,4 @@ Micro.revive = function (precompiled) { }; -}, '3.9.1', {"requires": ["escape"]}); +}, '3.12.0', {"requires": ["escape"]}); diff --git a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css similarity index 92% rename from lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css rename to lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css index 7dd678e54d6..092597f66a1 100644 --- a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css +++ b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Reset base Console skin styles */ .yui3-skin-sam .yui3-testconsole .yui3-console-content, .yui3-skin-sam .yui3-testconsole .yui3-console-bd, diff --git a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css similarity index 92% rename from lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css rename to lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css index 6a4aa84007b..f47c54f17e2 100644 --- a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css +++ b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-testconsole .yui3-console-entry{min-height:inherit;padding:5px}.yui3-testconsole .yui3-console-controls{display:none}.yui3-skin-sam .yui3-testconsole .yui3-console-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd,.yui3-skin-sam .yui3-testconsole .yui3-console-entry,.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{background:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.yui3-skin-sam .yui3-testconsole-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd{color:#333;font:13px/1.4 Helvetica,'DejaVu Sans','Bitstream Vera Sans',Arial,sans-serif}.yui3-skin-sam .yui3-testconsole-content{border:1px solid #afafaf}.yui3-skin-sam .yui3-testconsole .yui3-console-entry{border-bottom:1px solid #eaeaea;font-family:Menlo,Inconsolata,Consolas,'DejaVu Mono','Bitstream Vera Sans Mono',monospace;font-size:11px}.yui3-skin-sam .yui3-testconsole .yui3-console-ft{border-top:1px solid}.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-bottom:1px solid;*zoom:1}.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd{border:0}.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-color:#cfcfcf}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail{background-color:#ffe0e0;border-bottom-color:#ffc5c4}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass{background-color:#ecffea;border-bottom-color:#d1ffcc}#yui3-css-stamp.skin-sam-test-console{display:none} diff --git a/lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css b/lib/yuilib/3.12.0/test-console/assets/test-console-core.css similarity index 50% rename from lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css rename to lib/yuilib/3.12.0/test-console/assets/test-console-core.css index 602a605951c..ece9f85175a 100644 --- a/lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css +++ b/lib/yuilib/3.12.0/test-console/assets/test-console-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-testconsole .yui3-console-entry { min-height: inherit; padding: 5px; diff --git a/lib/yuilib/3.9.1/build/test-console/test-console-debug.js b/lib/yuilib/3.12.0/test-console/test-console-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/test-console/test-console-debug.js rename to lib/yuilib/3.12.0/test-console/test-console-debug.js index 06f75edaff7..0a75301c496 100644 --- a/lib/yuilib/3.9.1/build/test-console/test-console-debug.js +++ b/lib/yuilib/3.12.0/test-console/test-console-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test-console', function (Y, NAME) { /** @@ -305,4 +311,4 @@ Y.namespace('Test').Console = Y.extend(TestConsole, Y.Console, { }); -}, '3.9.1', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); +}, '3.12.0', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/test-console/test-console-min.js b/lib/yuilib/3.12.0/test-console/test-console-min.js similarity index 93% rename from lib/yuilib/3.9.1/build/test-console/test-console-min.js rename to lib/yuilib/3.12.0/test-console/test-console-min.js index dc45a297f18..3278a7f5f8e 100644 --- a/lib/yuilib/3.9.1/build/test-console/test-console-min.js +++ b/lib/yuilib/3.12.0/test-console/test-console-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("test-console",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}e.namespace("Test").Console=e.extend(n,e.Console,{initializer:function(t){this.on("entry",this._onEntry),this.plug(e.Plugin.ConsoleFilters,{category:e.merge({info:!0,pass:!1,fail:!0,status:!1},t&&t.filters||{}),defaultVisibility:!1,source:{TestRunner:!0}}),e.Test.Runner.on("complete",e.bind(this._parseCoverage,this))},_isIstanbul:function(t){var n=e.Object.keys(t)[0],r=!1;return t[n].s!==undefined&&t[n].fnMap!==undefined&&(r=!0),t.s!==undefined&&t.fnMap!==undefined&&(r=!0),r},parseYUITestCoverage:function(t){var n={lines:{hit:0,miss:0,total:0,percent:0},functions:{hit:0,miss:0,total:0,percent:0}},r;e.Object.each(t,function(e){n.lines.total+=e.coveredLines,n.lines.hit+=e.calledLines,n.lines.miss+=e.coveredLines-e.calledLines,n.lines.percent=Math.floor(n.lines.hit/n.lines.total*100),n.functions.total+=e.coveredFunctions,n.functions.hit+=e.calledFunctions,n.functions.miss+=e.coveredFunctions-e.calledFunctions,n.functions.percent=Math.floor(n.functions.hit/n.functions.total*100)}),r="Lines: Hit:"+n.lines.hit+" Missed:"+n.lines.miss+" Total:"+n.lines.total+" Percent:"+n.lines.percent+"%\n",r+="Functions: Hit:"+n.functions.hit+" Missed:"+n.functions.miss+" Total:"+n.functions.total+" Percent:"+n.functions.percent+"%",this.log("Coverage: "+r,"info","TestRunner")},_blankSummary:function(){return{lines:{total:0,covered:0,pct:"Unknown"},statements:{total:0,covered:0,pct:"Unknown"},functions:{total:0,covered:0,pct:"Unknown"},branches:{total:0,covered:0,pct:"Unknown"}}},_addDerivedInfoForFile:function(t){var n=t.statementMap,r=t.s,i;t.l||(t.l=i={},e.Object.each(r,function(e,t){var s=n[t].start.line,o=r[t],u=i[s];if(typeof u=="undefined"||u0&&(n=1e5*e/t+5,r=Math.floor(n/10)/100),r},_computeSimpleTotals:function(t,n){var r=t[n],i={total:0,covered:0};return e.Object.each(r,function(e){i.total+=1,e&&(i.covered+=1)}),i.pct=this._percent(i.covered,i.total),i},_computeBranchTotals:function(t){var n=t.b,r={total:0,covered:0};return e.Object.each(n,function(t){var n=e.Array.filter(t,function(e){return e>0});r.total+=t.length,r.covered+=n.length}),r.pct=this._percent(r.covered,r.total),r},parseIstanbul:function(t){var n=this,r="Coverage Report:\n";e.Object.each(t,function(t,i){var s=n._blankSummary();n._addDerivedInfoForFile(t),s.lines=n._computeSimpleTotals(t,"l"),s.functions=n._computeSimpleTotals(t,"f"),s.statements=n._computeSimpleTotals(t,"s"),s.branches=n._computeBranchTotals(t),r+=i+":\n",e.Array.each(["lines","functions","statements","branches"],function(e){r+=" "+e+": "+s[e].covered+"/"+s[e].total+" : "+s[e].pct+"%\n"})}),this.log(r,"info","TestRunner")},_parseCoverage:function(){var t=e.Test.Runner.getCoverage();if(!t)return;this._isIstanbul(t)?this.parseIstanbul(t):this.parseYUITestCoverage(t)},_onEntry:function(e){var t=e.message;t.category==="info"&&/\s(?:case|suite)\s|yuitests\d+|began/.test(t.message)?t.category="status":t.category==="fail"&&this.printBuffer()}},{NAME:"testConsole",ATTRS:{entryTemplate:{value:'
              {message}
              '},height:{value:"350px"},newestOnTop:{value:!1},style:{value:"block"},width:{value:e.UA.ie&&e.UA.ie<9?"100%":"inherit"}}})},"3.9.1",{requires:["console-filters","test","array-extras"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("test-console",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}e.namespace("Test").Console=e.extend(n,e.Console,{initializer:function(t){this.on("entry",this._onEntry),this.plug(e.Plugin.ConsoleFilters,{category:e.merge({info:!0,pass:!1,fail:!0,status:!1},t&&t.filters||{}),defaultVisibility:!1,source:{TestRunner:!0}}),e.Test.Runner.on("complete",e.bind(this._parseCoverage,this))},_isIstanbul:function(t){var n=e.Object.keys(t)[0],r=!1;return t[n].s!==undefined&&t[n].fnMap!==undefined&&(r=!0),t.s!==undefined&&t.fnMap!==undefined&&(r=!0),r},parseYUITestCoverage:function(t){var n={lines:{hit:0,miss:0,total:0,percent:0},functions:{hit:0,miss:0,total:0,percent:0}},r;e.Object.each(t,function(e){n.lines.total+=e.coveredLines,n.lines.hit+=e.calledLines,n.lines.miss+=e.coveredLines-e.calledLines,n.lines.percent=Math.floor(n.lines.hit/n.lines.total*100),n.functions.total+=e.coveredFunctions,n.functions.hit+=e.calledFunctions,n.functions.miss+=e.coveredFunctions-e.calledFunctions,n.functions.percent=Math.floor(n.functions.hit/n.functions.total*100)}),r="Lines: Hit:"+n.lines.hit+" Missed:"+n.lines.miss+" Total:"+n.lines.total+" Percent:"+n.lines.percent+"%\n",r+="Functions: Hit:"+n.functions.hit+" Missed:"+n.functions.miss+" Total:"+n.functions.total+" Percent:"+n.functions.percent+"%",this.log("Coverage: "+r,"info","TestRunner")},_blankSummary:function(){return{lines:{total:0,covered:0,pct:"Unknown"},statements:{total:0,covered:0,pct:"Unknown"},functions:{total:0,covered:0,pct:"Unknown"},branches:{total:0,covered:0,pct:"Unknown"}}},_addDerivedInfoForFile:function(t){var n=t.statementMap,r=t.s,i;t.l||(t.l=i={},e.Object.each(r,function(e,t){var s=n[t].start.line,o=r[t],u=i[s];if(typeof u=="undefined"||u0&&(n=1e5*e/t+5,r=Math.floor(n/10)/100),r},_computeSimpleTotals:function(t,n){var r=t[n],i={total:0,covered:0};return e.Object.each(r,function(e){i.total+=1,e&&(i.covered+=1)}),i.pct=this._percent(i.covered,i.total),i},_computeBranchTotals:function(t){var n=t.b,r={total:0,covered:0};return e.Object.each(n,function(t){var n=e.Array.filter(t,function(e){return e>0});r.total+=t.length,r.covered+=n.length}),r.pct=this._percent(r.covered,r.total),r},parseIstanbul:function(t){var n=this,r="Coverage Report:\n";e.Object.each(t,function(t,i){var s=n._blankSummary();n._addDerivedInfoForFile(t),s.lines=n._computeSimpleTotals(t,"l"),s.functions=n._computeSimpleTotals(t,"f"),s.statements=n._computeSimpleTotals(t,"s"),s.branches=n._computeBranchTotals(t),r+=i+":\n",e.Array.each(["lines","functions","statements","branches"],function(e){r+=" "+e+": "+s[e].covered+"/"+s[e].total+" : "+s[e].pct+"%\n"})}),this.log(r,"info","TestRunner")},_parseCoverage:function(){var t=e.Test.Runner.getCoverage();if(!t)return;this._isIstanbul(t)?this.parseIstanbul(t):this.parseYUITestCoverage(t)},_onEntry:function(e){var t=e.message;t.category==="info"&&/\s(?:case|suite)\s|yuitests\d+|began/.test(t.message)?t.category="status":t.category==="fail"&&this.printBuffer()}},{NAME:"testConsole",ATTRS:{entryTemplate:{value:'
              {message}
              '},height:{value:"350px"},newestOnTop:{value:!1},style:{value:"block"},width:{value:e.UA.ie&&e.UA.ie<9?"100%":"inherit"}}})},"3.12.0",{requires:["console-filters","test","array-extras"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/test-console/test-console.js b/lib/yuilib/3.12.0/test-console/test-console.js similarity index 97% rename from lib/yuilib/3.9.1/build/test-console/test-console.js rename to lib/yuilib/3.12.0/test-console/test-console.js index 06f75edaff7..0a75301c496 100644 --- a/lib/yuilib/3.9.1/build/test-console/test-console.js +++ b/lib/yuilib/3.12.0/test-console/test-console.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test-console', function (Y, NAME) { /** @@ -305,4 +311,4 @@ Y.namespace('Test').Console = Y.extend(TestConsole, Y.Console, { }); -}, '3.9.1', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); +}, '3.12.0', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/test/test-debug.js b/lib/yuilib/3.12.0/test/test-debug.js similarity index 99% rename from lib/yuilib/3.9.1/build/test/test-debug.js rename to lib/yuilib/3.12.0/test/test-debug.js index cbfa1556b06..d8cf36ca5f4 100644 --- a/lib/yuilib/3.9.1/build/test/test-debug.js +++ b/lib/yuilib/3.12.0/test/test-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test', function (Y, NAME) { @@ -20,7 +26,7 @@ if (YUI.YUITest) { //Make this global for back compat YUITest = { - version: "3.9.1", + version: "3.12.0", guid: function(pre) { return Y.guid(pre); } @@ -3295,14 +3301,8 @@ YUITest.ObjectAssert = { */ ownsNoKeys : function (object, message) { YUITest.Assert._increment(); - var count = 0, - name; - for (name in object){ - if (object.hasOwnProperty(name)){ - count++; - } - } - + var count = YUITest.Object.keys(object).length; + if (count !== 0){ YUITest.Assert.fail(YUITest.Assert._formatMessage(message, "Object owns " + count + " properties but should own none.")); } @@ -3764,4 +3764,4 @@ if (!YUI.YUITest) { } //End if for YUI.YUITest -}, '3.9.1', {"requires": ["event-simulate", "event-custom", "json-stringify"]}); +}, '3.12.0', {"requires": ["event-simulate", "event-custom", "json-stringify"]}); diff --git a/lib/yuilib/3.9.1/build/test/test-min.js b/lib/yuilib/3.12.0/test/test-min.js similarity index 67% rename from lib/yuilib/3.9.1/build/test/test-min.js rename to lib/yuilib/3.12.0/test/test-min.js index 106ad08ac48..6cc5b289b38 100644 --- a/lib/yuilib/3.9.1/build/test/test-min.js +++ b/lib/yuilib/3.12.0/test/test-min.js @@ -1,7 +1,13 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("test",function(e,t){YUI.YUITest?e.Test=YUI.YUITest:(YUITest={version:"3.9.1",guid:function(t){return e.guid(t)}},e.namespace("Test"),YUITest.Object=e.Object,YUITest.Array=e.Array,YUITest.Util={mix:e.mix,JSON:e.JSON},YUITest.EventTarget=function(){this._handlers={}},YUITest.EventTarget.prototype={constructor:YUITest.EventTarget,attach:function(e,t){typeof this._handlers[e]=="undefined"&&(this._handlers[e]=[]),this._handlers[e].push(t)},subscribe:function(e,t){this.attach.apply(this,arguments)},fire:function(e){typeof e=="string"&&(e={type:e}),e.target||(e.target=this);if(!e.type)throw new Error("Event object missing 'type' property.");if(this._handlers[e.type]instanceof Array){var t=this._handlers[e.type];for(var n=0,r=t.length;n"'&]/g,function(e){switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}})}return{JSON:function(e){return YUITest.Util.JSON.stringify(e)},XML:function(t){function n(t){var r="<"+t.type+' name="'+e(t.name)+'"';typeof t.duration=="number"&&(r+=' duration="'+t.duration+'"');if(t.type=="test")r+=' result="'+t.result+'" message="'+e(t.message)+'">';else{r+=' passed="'+t.passed+'" failed="'+t.failed+'" ignored="'+t.ignored+'" total="'+t.total+'">';for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]))}return r+="",r}return''+n(t)},JUnitXML:function(t){function n(t){var r="";switch(t.type){case"test":t.result!="ignore"&&(r='',t.result=="fail"&&(r+='"),r+="");break;case"testcase":r='';for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));r+="";break;case"testsuite":for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));break;case"report":r="";for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));r+=""}return r}return''+n(t)},TAP:function(e){function n(e){var r="";switch(e.type){case"test":e.result!="ignore"?(r="ok "+t++ +" - "+e.name,e.result=="fail"&&(r="not "+r+" - "+e.message),r+="\n"):r="#Ignored test "+e.name+"\n";break;case"testcase":r="#Begin testcase "+e.name+"("+e.failed+" failed of "+e.total+")\n";for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]));r+="#End testcase "+e.name+"\n";break;case"testsuite":r="#Begin testsuite "+e.name+"("+e.failed+" failed of "+e.total+")\n";for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]));r+="#End testsuite "+e.name+"\n";break;case"report":for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]))}return r}var t=1;return"1.."+e.total+"\n"+n(e)}}}(),YUITest.Reporter=function(e,t){this.url=e,this.format=t||YUITest.TestFormat.XML,this._fields=new Object,this._form=null,this._iframe=null},YUITest.Reporter.prototype={constructor:YUITest.Reporter,addField:function(e,t){this._fields[e]=t},clearFields:function(){this._fields=new Object},destroy:function(){this._form&&(this._form.parentNode.removeChild(this._form),this._form=null),this._iframe&&(this._iframe.parentNode.removeChild(this._iframe),this._iframe=null),this._fields=null},report:function(e){if(!this._form){this._form=document.createElement("form"),this._form.method="post",this._form.style.visibility="hidden",this._form.style.position="absolute",this._form.style.top=0,document.body.appendChild(this._form);try{this._iframe=document.createElement('',O.prototype={initializer:function(){this._stackNode=this.get(f),this._stackHandles={},e.after(this._renderUIStack,this,l),e.after(this._syncUIStack,this,h),e.after(this._bindUIStack,this,c)},_syncUIStack:function(){this._uiSetShim(this.get(u)),this._uiSetZIndex(this.get(o))},_bindUIStack:function(){this.after(C,this._afterShimChange),this.after(k,this._afterZIndexChange)},_renderUIStack:function(){this._stackNode.addClass(O.STACKED_CLASS_NAME)},_parseZIndex:function(e){var t;return!e.inDoc()||e.getStyle("position")==="static"?t="auto":t=e.getComputedStyle("zIndex"),t==="auto"?null:t},_setZIndex:function(e){return n.isString(e)&&(e=parseInt(e,10)),n.isNumber(e)||(e=0),e},_afterShimChange:function(e){this._uiSetShim(e.newVal)},_afterZIndexChange:function(e){this._uiSetZIndex(e.newVal)},_uiSetZIndex:function(e){this._stackNode.setStyle(o,e)},_uiSetShim:function(e){e?(this.get(a)?this._renderShim():this._renderShimDeferred(),r.ie==6&&this._addShimResizeHandlers()):this._destroyShim()},_renderShimDeferred:function(){this._stackHandles[E]=this._stackHandles[E]||[];var e=this._stackHandles[E],t=function(e){e.newVal&&this._renderShim()};e.push(this.on(x,t))},_addShimResizeHandlers:function(){this._stackHandles[S]=this._stackHandles[S]||[];var e=this.sizeShim,t=this._stackHandles[S];t.push(this.after(x,e)),t.push(this.after(T,e)),t.push(this.after(N,e)),t.push(this.after(L,e))},_detachStackHandles:function(e){var t=this._stackHandles[e],n;if(t&&t.length>0)while(n=t.pop())n.detach()},_renderShim:function(){var e=this._shimNode,t=this._stackNode;e||(e=this._shimNode=this._getShimTemplate(),t.insertBefore(e,t.get(m)),this._detachStackHandles(E),this.sizeShim())},_destroyShim:function(){this._shimNode&&(this._shimNode.get(v).removeChild(this._shimNode),this._shimNode=null,this._detachStackHandles(E),this._detachStackHandles(S))},sizeShim:function(){var e=this._shimNode,t=this._stackNode;e&&r.ie===6&&this.get(a)&&(e.setStyle(y,t.get(p)+w),e.setStyle(b,t.get(d)+w))},_getShimTemplate:function(){return i.create(O.SHIM_TEMPLATE,this._stackNode.get(g))}},e.WidgetStack=O},"3.12.0",{requires:["base-build","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-stack/widget-stack.js b/lib/yuilib/3.12.0/widget-stack/widget-stack.js similarity index 95% rename from lib/yuilib/3.9.1/build/widget-stack/widget-stack.js rename to lib/yuilib/3.12.0/widget-stack/widget-stack.js index e7120c03de9..e05934029f1 100644 --- a/lib/yuilib/3.9.1/build/widget-stack/widget-stack.js +++ b/lib/yuilib/3.12.0/widget-stack/widget-stack.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stack', function (Y, NAME) { /** @@ -54,15 +60,7 @@ YUI.add('widget-stack', function (Y, NAME) { * @class WidgetStack * @param {Object} User configuration object */ - function Stack(config) { - this._stackNode = this.get(BOUNDING_BOX); - this._stackHandles = {}; - - // WIDGET METHOD OVERLAP - Y.after(this._renderUIStack, this, RENDER_UI); - Y.after(this._syncUIStack, this, SYNC_UI); - Y.after(this._bindUIStack, this, BIND_UI); - } + function Stack(config) {} // Static Properties /** @@ -143,6 +141,16 @@ YUI.add('widget-stack', function (Y, NAME) { Stack.prototype = { + initializer : function() { + this._stackNode = this.get(BOUNDING_BOX); + this._stackHandles = {}; + + // WIDGET METHOD OVERLAP + Y.after(this._renderUIStack, this, RENDER_UI); + Y.after(this._syncUIStack, this, SYNC_UI); + Y.after(this._bindUIStack, this, BIND_UI); + }, + /** * Synchronizes the UI to match the Widgets stack state. This method in * invoked after syncUI is invoked for the Widget class using YUI's aop infrastructure. @@ -436,4 +444,4 @@ YUI.add('widget-stack', function (Y, NAME) { Y.WidgetStack = Stack; -}, '3.9.1', {"requires": ["base-build", "widget"], "skinnable": true}); +}, '3.12.0', {"requires": ["base-build", "widget"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js similarity index 98% rename from lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js rename to lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js index bd606b247e8..730e49ccbaa 100644 --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stdmod', function (Y, NAME) { /** @@ -60,14 +66,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { * @class WidgetStdMod * @param {Object} The user configuration object */ - function StdMod(config) { - - this._stdModNode = this.get(CONTENT_BOX); - - Y.before(this._renderUIStdMod, this, RENDERUI); - Y.before(this._bindUIStdMod, this, BINDUI); - Y.before(this._syncUIStdMod, this, SYNCUI); - } + function StdMod(config) {} /** * Constant used to refer the the standard module header, in methods which expect a section specifier @@ -257,6 +256,14 @@ YUI.add('widget-stdmod', function (Y, NAME) { StdMod.prototype = { + initializer : function() { + this._stdModNode = this.get(CONTENT_BOX); + + Y.before(this._renderUIStdMod, this, RENDERUI); + Y.before(this._bindUIStdMod, this, BINDUI); + Y.before(this._syncUIStdMod, this, SYNCUI); + }, + /** * Synchronizes the UI to match the Widgets standard module state. *

              @@ -434,7 +441,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { if (this.get(FILL_HEIGHT)) { var height = this.get(HEIGHT); if (height != EMPTY && height != AUTO) { - this.fillHeight(this._currFillNode); + this.fillHeight(this.getStdModNode(this.get(FILL_HEIGHT))); } } }, @@ -777,4 +784,4 @@ YUI.add('widget-stdmod', function (Y, NAME) { Y.WidgetStdMod = StdMod; -}, '3.9.1', {"requires": ["base-build", "widget"]}); +}, '3.12.0', {"requires": ["base-build", "widget"]}); diff --git a/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js new file mode 100644 index 00000000000..53433787b3e --- /dev/null +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("widget-stdmod",function(e,t){function H(e){}var n=e.Lang,r=e.Node,i=e.UA,s=e.Widget,o="",u="hd",a="bd",f="ft",l="header",c="body",h="footer",p="fillHeight",d="stdmod",v="Node",m="Content",g="firstChild",y="childNodes",b="ownerDocument",w="contentBox",E="height",S="offsetHeight",x="auto",T="headerContentChange",N="bodyContentChange",C="footerContentChange",k="fillHeightChange",L="heightChange",A="contentUpdate",O="renderUI",M="bindUI",_="syncUI",D="_applyParsedConfig",P=e.Widget.UI_SRC;H.HEADER=l,H.BODY=c,H.FOOTER=h,H.AFTER="after",H.BEFORE="before",H.REPLACE="replace";var B=H.HEADER,j=H.BODY,F=H.FOOTER,I=B+m,q=F+m,R=j+m;H.ATTRS={headerContent:{value:null},footerContent:{value:null},bodyContent:{value:null},fillHeight:{value:H.BODY,validator:function(e){return this._validateFillHeight(e)}}},H.HTML_PARSER={headerContent:function(e){return this._parseStdModHTML(B)},bodyContent:function(e){return this._parseStdModHTML(j)},footerContent:function(e){return this._parseStdModHTML(F)}},H.SECTION_CLASS_NAMES={header:s.getClassName(u),body:s.getClassName(a),footer:s.getClassName(f)},H.TEMPLATES={header:'

              ',body:'
              ',footer:'
              '},H.prototype={initializer:function(){this._stdModNode=this.get(w),e.before(this._renderUIStdMod,this,O),e.before(this._bindUIStdMod,this,M),e.before(this._syncUIStdMod,this,_)},_syncUIStdMod:function(){var e=this._stdModParsed;(!e||!e[I])&&this._uiSetStdMod(B,this.get(I)),(!e||!e[R])&&this._uiSetStdMod(j,this.get(R)),(!e||!e[q])&&this._uiSetStdMod(F,this.get(q)),this._uiSetFillHeight(this.get(p))},_renderUIStdMod:function(){this._stdModNode.addClass(s.getClassName(d)),this._renderStdModSections(),this.after(T,this._afterHeaderChange),this.after(N,this._afterBodyChange),this.after(C,this._afterFooterChange)},_renderStdModSections:function(){n.isValue(this.get(I))&&this._renderStdMod(B),n.isValue(this.get(R))&&this._renderStdMod(j),n.isValue(this.get(q))&&this._renderStdMod(F)},_bindUIStdMod:function(){this.after(k,this._afterFillHeightChange),this.after(L,this._fillHeight),this.after(A,this._fillHeight)},_afterHeaderChange:function(e){e.src!==P&&this._uiSetStdMod(B,e.newVal,e.stdModPosition)},_afterBodyChange:function(e){e.src!==P&&this._uiSetStdMod(j,e.newVal,e.stdModPosition)},_afterFooterChange:function(e){e.src!==P&&this._uiSetStdMod(F,e.newVal,e.stdModPosition)},_afterFillHeightChange:function(e){this._uiSetFillHeight(e.newVal)},_validateFillHeight:function(e){return!e||e==H.BODY||e==H.HEADER||e==H.FOOTER},_uiSetFillHeight:function(e){var t=this.getStdModNode(e),n=this._currFillNode;n&&t!==n&&n.setStyle(E,o),t&&(this._currFillNode=t),this._fillHeight()},_fillHeight:function(){if(this.get(p)){var e=this.get(E);e!=o&&e!=x&&this.fillHeight(this.getStdModNode(this.get(p)))}},_uiSetStdMod:function(e,t,r){if(n.isValue(t)){var i=this.getStdModNode(e,!0);this._addStdModContent(i,t,r),this.set(e+m,this._getStdModContent(e),{src:P})}else this._eraseStdMod(e);this.fire(A)},_renderStdMod:function(e){var t=this.get(w),n=this._findStdModSection(e);return n||(n=this._getStdModTemplate(e)),this._insertStdModSection(t,e,n),this[e+v]=n,this[e+v]},_eraseStdMod:function(e){var t=this.getStdModNode(e);t&&(t.remove(!0),delete this[e+v])},_insertStdModSection:function(e,t,n){var r=e.get(g);if(t===F||!r)e.appendChild(n);else if(t===B)e.insertBefore(n,r);else{var i=this[F+v];i?e.insertBefore(n,i):e.appendChild(n)}},_getStdModTemplate:function(e){return r.create(H.TEMPLATES[e],this._stdModNode.get(b))},_addStdModContent:function(e,t,n){switch(n){case H.BEFORE:n=0;break;case H.AFTER:n=undefined;break;default:n=H.REPLACE}e.insert(t,n)},_getPreciseHeight:function(e){var t=e?e.get(S):0,n="getBoundingClientRect";if(e&&e.hasMethod(n)){var r=e.invoke(n);r&&(t=r.bottom-r.top)}return t},_findStdModSection:function(e){return this.get(w).one("> ."+H.SECTION_CLASS_NAMES[e])},_parseStdModHTML:function(t){var n=this._findStdModSection(t);return n?(this._stdModParsed||(this._stdModParsed={},e.before(this._applyStdModParsedConfig,this,D)),this._stdModParsed[t+m]=1,n.get("innerHTML")):null},_applyStdModParsedConfig:function(e,t,n){var r=this._stdModParsed;r&&(r[I]=!(I in t)&&I in r,r[R]=!(R in t)&&R in r,r[q]=!(q in t)&&q in r)},_getStdModContent:function(e){return this[e+v]?this[e+v].get(y):null},setStdModContent:function(e,t,n){this.set(e+m,t,{stdModPosition:n})},getStdModNode:function(e,t){var n=this[e+v]||null;return!n&&t&&(n=this._renderStdMod(e)),n},fillHeight:function(e){if(e){var t=this.get(w),r=[this.headerNode,this.bodyNode,this.footerNode],s,o,u=0,a=0,f=!1;for(var l=0,c=r.length;l=0&&e.set(S,a)))}}},e.WidgetStdMod=H},"3.12.0",{requires:["base-build","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js similarity index 98% rename from lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js rename to lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js index bd606b247e8..730e49ccbaa 100644 --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stdmod', function (Y, NAME) { /** @@ -60,14 +66,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { * @class WidgetStdMod * @param {Object} The user configuration object */ - function StdMod(config) { - - this._stdModNode = this.get(CONTENT_BOX); - - Y.before(this._renderUIStdMod, this, RENDERUI); - Y.before(this._bindUIStdMod, this, BINDUI); - Y.before(this._syncUIStdMod, this, SYNCUI); - } + function StdMod(config) {} /** * Constant used to refer the the standard module header, in methods which expect a section specifier @@ -257,6 +256,14 @@ YUI.add('widget-stdmod', function (Y, NAME) { StdMod.prototype = { + initializer : function() { + this._stdModNode = this.get(CONTENT_BOX); + + Y.before(this._renderUIStdMod, this, RENDERUI); + Y.before(this._bindUIStdMod, this, BINDUI); + Y.before(this._syncUIStdMod, this, SYNCUI); + }, + /** * Synchronizes the UI to match the Widgets standard module state. *

              @@ -434,7 +441,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { if (this.get(FILL_HEIGHT)) { var height = this.get(HEIGHT); if (height != EMPTY && height != AUTO) { - this.fillHeight(this._currFillNode); + this.fillHeight(this.getStdModNode(this.get(FILL_HEIGHT))); } } }, @@ -777,4 +784,4 @@ YUI.add('widget-stdmod', function (Y, NAME) { Y.WidgetStdMod = StdMod; -}, '3.9.1', {"requires": ["base-build", "widget"]}); +}, '3.12.0', {"requires": ["base-build", "widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js similarity index 89% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js index b13d221cfc9..42892290157 100644 --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-uievents', function (Y, NAME) { /** @@ -38,7 +44,7 @@ Y.mix(Widget.prototype, { // event listener. delete info.instances[widgetGuid]; - // There are no more Widget instances using this delegated + // There are no more Widget instances using this delegated // event listener, so detach it. if (Y.Object.isEmpty(info.instances)) { @@ -53,7 +59,7 @@ Y.mix(Widget.prototype, { }, /** - * Map of DOM events that should be fired as Custom Events by the + * Map of DOM events that should be fired as Custom Events by the * Widget instance. * * @property UI_EVENTS @@ -74,12 +80,12 @@ Y.mix(Widget.prototype, { }, /** - * Binds a delegated DOM event listener of the specified type to the + * Binds a delegated DOM event listener of the specified type to the * Widget's outtermost DOM element to facilitate the firing of a Custom - * Event of the same type for the Widget instance. + * Event of the same type for the Widget instance. * * @method _createUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event * @private */ @@ -120,27 +126,27 @@ Y.mix(Widget.prototype, { /** * This method is used to determine if we should fire * the UI Event or not. The default implementation makes sure - * that for nested delegates (nested unrelated widgets), we don't + * that for nested delegates (nested unrelated widgets), we don't * fire the UI event listener more than once at each level. * - *

              For example, without the additional filter, if you have nested - * widgets, each widget will have a delegate listener. If you - * click on the inner widget, the inner delegate listener's - * filter will match once, but the outer will match twice - * (based on delegate's design) - once for the inner widget, + *

              For example, without the additional filter, if you have nested + * widgets, each widget will have a delegate listener. If you + * click on the inner widget, the inner delegate listener's + * filter will match once, but the outer will match twice + * (based on delegate's design) - once for the inner widget, * and once for the outer.

              * * @method _filterUIEvent - * @for Widget + * @for Widget * @param {DOMEventFacade} evt * @return {boolean} true if it's OK to fire the custom UI event, false if not. * @private - * + * */ _filterUIEvent: function(evt) { - // Either it's hitting this widget's delegate container (and not some other widget's), + // Either it's hitting this widget's delegate container (and not some other widget's), // or the container it's hitting is handling this widget's ui events. - return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); + return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); }, /** @@ -148,9 +154,9 @@ Y.mix(Widget.prototype, { * * @private * @method _isUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event - * @return {String} Event Returns the name of the UI Event, otherwise + * @return {String} Event Returns the name of the UI Event, otherwise * undefined. */ _getUIEvent: function (type) { @@ -178,12 +184,12 @@ Y.mix(Widget.prototype, { /** * Sets up infrastructure required to fire a UI event. - * + * * @private * @method _initUIEvent * @for Widget * @param type {String} String representing the name of the event - * @return {String} + * @return {String} */ _initUIEvent: function (type) { var sType = this._getUIEvent(type), @@ -194,7 +200,7 @@ Y.mix(Widget.prototype, { this._uiEvtsInitQueue = queue[sType] = 1; - this.after(RENDER, function() { + this.after(RENDER, function() { this._createUIEvent(sType); delete this._uiEvtsInitQueue[sType]; }); @@ -203,7 +209,7 @@ Y.mix(Widget.prototype, { // Override of "on" from Base to facilitate the firing of Widget events // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when + // Temporary solution until we have the ability to listen to when // someone adds an event listener (bug 2528230) on: function (type) { this._initUIEvent(type); @@ -211,18 +217,18 @@ Y.mix(Widget.prototype, { }, // Override of "publish" from Base to facilitate the firing of Widget events - // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when - // someone publishes an event (bug 2528230) + // based on DOM events of the same name/type (e.g. "click", "mouseover"). + // Temporary solution until we have the ability to listen to when + // someone publishes an event (bug 2528230) publish: function (type, config) { var sType = this._getUIEvent(type); if (sType && config && config.defaultFn) { this._initUIEvent(sType); - } + } return Widget.superclass.publish.apply(this, arguments); } }, true); // overwrite existing EventTarget methods -}, '3.9.1', {"requires": ["node-event-delegate", "widget-base"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js similarity index 87% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js index 7d9b9d9d32f..5a11b4eedc5 100644 --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-uievents",function(e,t){var n="boundingBox",r=e.Widget,i="render",s=e.Lang,o=":",u=e.Widget._uievts=e.Widget._uievts||{};e.mix(r.prototype,{_destroyUIEvents:function(){var t=e.stamp(this,!0);e.each(u,function(n,r){n.instances[t]&&(delete n.instances[t],e.Object.isEmpty(n.instances)&&(n.handle.detach(),u[r]&&delete u[r]))})},UI_EVENTS:e.Node.DOM_EVENTS,_getUIEventNode:function(){return this.get(n)},_createUIEvent:function(t){var n=this._getUIEventNode(),i=e.stamp(n)+t,s=u[i],o;s||(o=n.delegate(t,function(e){var t=r.getByNode(this);t&&t._filterUIEvent(e)&&t.fire(e.type,{domEvent:e})},"."+e.Widget.getClassName()),u[i]=s={instances:{},handle:o}),s.instances[e.stamp(this)]=1},_filterUIEvent:function(e){return e.currentTarget.compareTo(e.container)||e.container.compareTo(this._getUIEventNode())},_getUIEvent:function(e){if(s.isString(e)){var t=this.parseType(e)[1],n,r;return t&&(n=t.indexOf(o),n>-1&&(t=t.substring(n+o.length)),this.UI_EVENTS[t]&&(r=t)),r}},_initUIEvent:function(e){var t=this._getUIEvent(e),n=this._uiEvtsInitQueue||{};t&&!n[t]&&(this._uiEvtsInitQueue=n[t]=1,this.after(i,function(){this._createUIEvent(t),delete this._uiEvtsInitQueue[t]}))},on:function(e){return this._initUIEvent(e),r.superclass.on.apply(this,arguments)},publish:function(e,t){var n=this._getUIEvent(e);return n&&t&&t.defaultFn&&this._initUIEvent(n),r.superclass.publish.apply(this,arguments)}},!0)},"3.9.1",{requires:["node-event-delegate","widget-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("widget-uievents",function(e,t){var n="boundingBox",r=e.Widget,i="render",s=e.Lang,o=":",u=e.Widget._uievts=e.Widget._uievts||{};e.mix(r.prototype,{_destroyUIEvents:function(){var t=e.stamp(this,!0);e.each(u,function(n,r){n.instances[t]&&(delete n.instances[t],e.Object.isEmpty(n.instances)&&(n.handle.detach(),u[r]&&delete u[r]))})},UI_EVENTS:e.Node.DOM_EVENTS,_getUIEventNode:function(){return this.get(n)},_createUIEvent:function(t){var n=this._getUIEventNode(),i=e.stamp(n)+t,s=u[i],o;s||(o=n.delegate(t,function(e){var t=r.getByNode(this);t&&t._filterUIEvent(e)&&t.fire(e.type,{domEvent:e})},"."+e.Widget.getClassName()),u[i]=s={instances:{},handle:o}),s.instances[e.stamp(this)]=1},_filterUIEvent:function(e){return e.currentTarget.compareTo(e.container)||e.container.compareTo(this._getUIEventNode())},_getUIEvent:function(e){if(s.isString(e)){var t=this.parseType(e)[1],n,r;return t&&(n=t.indexOf(o),n>-1&&(t=t.substring(n+o.length)),this.UI_EVENTS[t]&&(r=t)),r}},_initUIEvent:function(e){var t=this._getUIEvent(e),n=this._uiEvtsInitQueue||{};t&&!n[t]&&(this._uiEvtsInitQueue=n[t]=1,this.after(i,function(){this._createUIEvent(t),delete this._uiEvtsInitQueue[t]}))},on:function(e){return this._initUIEvent(e),r.superclass.on.apply(this,arguments)},publish:function(e,t){var n=this._getUIEvent(e);return n&&t&&t.defaultFn&&this._initUIEvent(n),r.superclass.publish.apply(this,arguments)}},!0)},"3.12.0",{requires:["node-event-delegate","widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents.js similarity index 89% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents.js index e07f0a2b17b..f32a1bc4ace 100644 --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-uievents', function (Y, NAME) { /** @@ -38,7 +44,7 @@ Y.mix(Widget.prototype, { // event listener. delete info.instances[widgetGuid]; - // There are no more Widget instances using this delegated + // There are no more Widget instances using this delegated // event listener, so detach it. if (Y.Object.isEmpty(info.instances)) { @@ -53,7 +59,7 @@ Y.mix(Widget.prototype, { }, /** - * Map of DOM events that should be fired as Custom Events by the + * Map of DOM events that should be fired as Custom Events by the * Widget instance. * * @property UI_EVENTS @@ -74,12 +80,12 @@ Y.mix(Widget.prototype, { }, /** - * Binds a delegated DOM event listener of the specified type to the + * Binds a delegated DOM event listener of the specified type to the * Widget's outtermost DOM element to facilitate the firing of a Custom - * Event of the same type for the Widget instance. + * Event of the same type for the Widget instance. * * @method _createUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event * @private */ @@ -120,27 +126,27 @@ Y.mix(Widget.prototype, { /** * This method is used to determine if we should fire * the UI Event or not. The default implementation makes sure - * that for nested delegates (nested unrelated widgets), we don't + * that for nested delegates (nested unrelated widgets), we don't * fire the UI event listener more than once at each level. * - *

              For example, without the additional filter, if you have nested - * widgets, each widget will have a delegate listener. If you - * click on the inner widget, the inner delegate listener's - * filter will match once, but the outer will match twice - * (based on delegate's design) - once for the inner widget, + *

              For example, without the additional filter, if you have nested + * widgets, each widget will have a delegate listener. If you + * click on the inner widget, the inner delegate listener's + * filter will match once, but the outer will match twice + * (based on delegate's design) - once for the inner widget, * and once for the outer.

              * * @method _filterUIEvent - * @for Widget + * @for Widget * @param {DOMEventFacade} evt * @return {boolean} true if it's OK to fire the custom UI event, false if not. * @private - * + * */ _filterUIEvent: function(evt) { - // Either it's hitting this widget's delegate container (and not some other widget's), + // Either it's hitting this widget's delegate container (and not some other widget's), // or the container it's hitting is handling this widget's ui events. - return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); + return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); }, /** @@ -148,9 +154,9 @@ Y.mix(Widget.prototype, { * * @private * @method _isUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event - * @return {String} Event Returns the name of the UI Event, otherwise + * @return {String} Event Returns the name of the UI Event, otherwise * undefined. */ _getUIEvent: function (type) { @@ -178,12 +184,12 @@ Y.mix(Widget.prototype, { /** * Sets up infrastructure required to fire a UI event. - * + * * @private * @method _initUIEvent * @for Widget * @param type {String} String representing the name of the event - * @return {String} + * @return {String} */ _initUIEvent: function (type) { var sType = this._getUIEvent(type), @@ -193,7 +199,7 @@ Y.mix(Widget.prototype, { this._uiEvtsInitQueue = queue[sType] = 1; - this.after(RENDER, function() { + this.after(RENDER, function() { this._createUIEvent(sType); delete this._uiEvtsInitQueue[sType]; }); @@ -202,7 +208,7 @@ Y.mix(Widget.prototype, { // Override of "on" from Base to facilitate the firing of Widget events // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when + // Temporary solution until we have the ability to listen to when // someone adds an event listener (bug 2528230) on: function (type) { this._initUIEvent(type); @@ -210,18 +216,18 @@ Y.mix(Widget.prototype, { }, // Override of "publish" from Base to facilitate the firing of Widget events - // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when - // someone publishes an event (bug 2528230) + // based on DOM events of the same name/type (e.g. "click", "mouseover"). + // Temporary solution until we have the ability to listen to when + // someone publishes an event (bug 2528230) publish: function (type, config) { var sType = this._getUIEvent(type); if (sType && config && config.defaultFn) { this._initUIEvent(sType); - } + } return Widget.superclass.publish.apply(this, arguments); } }, true); // overwrite existing EventTarget methods -}, '3.9.1', {"requires": ["node-event-delegate", "widget-base"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js similarity index 79% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js index e9b7cbb4c76..5ec329d93f8 100644 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-jsonp', function (Y, NAME) { /** @@ -27,4 +33,4 @@ Y.YQLRequest.prototype._send = function (url, o) { -}, '3.9.1', {"requires": ["jsonp", "jsonp-url"]}); +}, '3.12.0', {"requires": ["jsonp", "jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js similarity index 57% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js index 97cd6e472dd..d7f2e567271 100644 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-jsonp",function(e,t){e.YQLRequest.prototype._send=function(t,n){n.allowCache!==!1&&(n.allowCache=!0),this._jsonp?(this._jsonp.url=t,n.on&&n.on.success&&(this._jsonp._config.on.success=n.on.success),this._jsonp.send()):this._jsonp=e.jsonp(t,n)}},"3.9.1",{requires:["jsonp","jsonp-url"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-jsonp",function(e,t){e.YQLRequest.prototype._send=function(t,n){n.allowCache!==!1&&(n.allowCache=!0),this._jsonp?(this._jsonp.url=t,n.on&&n.on.success&&(this._jsonp._config.on.success=n.on.success),this._jsonp.send()):this._jsonp=e.jsonp(t,n)}},"3.12.0",{requires:["jsonp","jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js similarity index 79% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js index e9b7cbb4c76..5ec329d93f8 100644 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-jsonp', function (Y, NAME) { /** @@ -27,4 +33,4 @@ Y.YQLRequest.prototype._send = function (url, o) { -}, '3.9.1', {"requires": ["jsonp", "jsonp-url"]}); +}, '3.12.0', {"requires": ["jsonp", "jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js similarity index 82% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js index 5aa1d26ccca..051355eaa7c 100644 --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-nodejs', function (Y, NAME) { /** @@ -28,4 +34,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js similarity index 50% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js index b4756d33811..234645a4a6a 100644 --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-nodejs",function(e,t){var n=require("request");e.YQLRequest.prototype._send=function(e,t){n(e,{method:"GET",timeout:t.timeout||3e4},function(e,n){e?t.on.success({error:e}):t.on.success(JSON.parse(n.body))})}},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-nodejs",function(e,t){var n=require("request");e.YQLRequest.prototype._send=function(e,t){n(e,{method:"GET",timeout:t.timeout||3e4},function(e,n){e?t.on.success({error:e}):t.on.success(JSON.parse(n.body))})}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js similarity index 82% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js index 5aa1d26ccca..051355eaa7c 100644 --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-nodejs', function (Y, NAME) { /** @@ -28,4 +34,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js similarity index 85% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js index 69600a4cb1a..37853918417 100644 --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-winjs', function (Y, NAME) { /** @@ -32,4 +38,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js similarity index 66% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js index a6595e2f603..b9847888dcf 100644 --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-winjs",function(e,t){e.YQLRequest.prototype._send=function(e,t){var n=new XMLHttpRequest,r;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&(clearTimeout(r),t.on.success(JSON.parse(n.responseText)))},n.send(),r=setTimeout(function(){n.abort(),t.on.timeout("script timeout")},t.timeout||3e4)}},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-winjs",function(e,t){e.YQLRequest.prototype._send=function(e,t){var n=new XMLHttpRequest,r;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&(clearTimeout(r),t.on.success(JSON.parse(n.responseText)))},n.send(),r=setTimeout(function(){n.abort(),t.on.timeout("script timeout")},t.timeout||3e4)}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs.js similarity index 85% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs.js index 69600a4cb1a..37853918417 100644 --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-winjs', function (Y, NAME) { /** @@ -32,4 +38,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql/yql-debug.js b/lib/yuilib/3.12.0/yql/yql-debug.js similarity index 96% rename from lib/yuilib/3.9.1/build/yql/yql-debug.js rename to lib/yuilib/3.12.0/yql/yql-debug.js index 48e973d1a31..5d26379c499 100644 --- a/lib/yuilib/3.9.1/build/yql/yql-debug.js +++ b/lib/yuilib/3.12.0/yql/yql-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql', function (Y, NAME) { /** @@ -166,4 +172,4 @@ Y.YQL = function (sql, callback, params, opts) { }; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yql/yql-min.js b/lib/yuilib/3.12.0/yql/yql-min.js similarity index 82% rename from lib/yuilib/3.9.1/build/yql/yql-min.js rename to lib/yuilib/3.12.0/yql/yql-min.js index 213e2089acd..05499f37a9b 100644 --- a/lib/yuilib/3.9.1/build/yql/yql-min.js +++ b/lib/yuilib/3.12.0/yql/yql-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql",function(e,t){var n=function(t,n,r,i){r||(r={}),r.q=t,r.format||(r.format=e.YQLRequest.FORMAT),r.env||(r.env=e.YQLRequest.ENV),this._context=this,i&&i.context&&(this._context=i.context,delete i.context),r&&r.context&&(this._context=r.context,delete r.context),this._params=r,this._opts=i,this._callback=n};n.prototype={_jsonp:null,_opts:null,_callback:null,_params:null,_context:null,_internal:function(){this._callback.apply(this._context,arguments)},send:function(){var t=[],n=this._opts&&this._opts.proto?this._opts.proto:e.YQLRequest.PROTO,r;return e.Object.each(this._params,function(e,n){t.push(n+"="+encodeURIComponent(e))}),t=t.join("&"),n+=(this._opts&&this._opts.base?this._opts.base:e.YQLRequest.BASE_URL)+t,r=e.Lang.isFunction(this._callback)?{on:{success:this._callback}}:this._callback,r.on=r.on||{},this._callback=r.on.success,r.on.success=e.bind(this._internal,this),this._send(n,r),this},_send:function(){}},n.FORMAT="json",n.PROTO="http",n.BASE_URL="://query.yahooapis.com/v1/public/yql?",n.ENV="http://datatables.org/alltables.env",e.YQLRequest=n,e.YQL=function(t,n,r,i){return(new e.YQLRequest(t,n,r,i)).send()}},"3.9.1",{requires:["oop"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql",function(e,t){var n=function(t,n,r,i){r||(r={}),r.q=t,r.format||(r.format=e.YQLRequest.FORMAT),r.env||(r.env=e.YQLRequest.ENV),this._context=this,i&&i.context&&(this._context=i.context,delete i.context),r&&r.context&&(this._context=r.context,delete r.context),this._params=r,this._opts=i,this._callback=n};n.prototype={_jsonp:null,_opts:null,_callback:null,_params:null,_context:null,_internal:function(){this._callback.apply(this._context,arguments)},send:function(){var t=[],n=this._opts&&this._opts.proto?this._opts.proto:e.YQLRequest.PROTO,r;return e.Object.each(this._params,function(e,n){t.push(n+"="+encodeURIComponent(e))}),t=t.join("&"),n+=(this._opts&&this._opts.base?this._opts.base:e.YQLRequest.BASE_URL)+t,r=e.Lang.isFunction(this._callback)?{on:{success:this._callback}}:this._callback,r.on=r.on||{},this._callback=r.on.success,r.on.success=e.bind(this._internal,this),this._send(n,r),this},_send:function(){}},n.FORMAT="json",n.PROTO="http",n.BASE_URL="://query.yahooapis.com/v1/public/yql?",n.ENV="http://datatables.org/alltables.env",e.YQLRequest=n,e.YQL=function(t,n,r,i){return(new e.YQLRequest(t,n,r,i)).send()}},"3.12.0",{requires:["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yql/yql.js b/lib/yuilib/3.12.0/yql/yql.js similarity index 95% rename from lib/yuilib/3.9.1/build/yql/yql.js rename to lib/yuilib/3.12.0/yql/yql.js index 0b26d6b944e..484ccd3a3f8 100644 --- a/lib/yuilib/3.9.1/build/yql/yql.js +++ b/lib/yuilib/3.12.0/yql/yql.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql', function (Y, NAME) { /** @@ -165,4 +171,4 @@ Y.YQL = function (sql, callback, params, opts) { }; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js b/lib/yuilib/3.12.0/yui-base/yui-base-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js rename to lib/yuilib/3.12.0/yui-base/yui-base-debug.js index 0ed287e616f..f1e2ae19f7c 100644 --- a/lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js +++ b/lib/yuilib/3.12.0/yui-base/yui-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1521,6 +1527,7 @@ Y.log('Fetching loader: ' + config.base + config.loaderPath, 'info', 'yui'); YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1975,6 +1982,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -2060,8 +2083,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -2085,8 +2108,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -2127,9 +2148,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2353,7 +2380,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2370,10 +2397,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2383,10 +2410,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2488,16 +2515,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -3139,7 +3184,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -3183,7 +3228,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -3195,7 +3242,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3802,17 +3849,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3842,16 +3897,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3982,7 +4042,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -5273,7 +5333,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5389,7 +5449,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5682,7 +5742,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5770,7 +5830,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5786,9 +5846,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5810,7 +5870,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5829,6 +5889,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5881,7 +5950,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5959,5 +6028,5 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"requires": ["yui-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); diff --git a/lib/yuilib/3.12.0/yui-base/yui-base-min.js b/lib/yuilib/3.12.0/yui-base/yui-base-min.js new file mode 100644 index 00000000000..69437438c34 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-base/yui-base-min.js @@ -0,0 +1,14 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o +,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" +}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["intl-base"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yui-core/yui-core.js b/lib/yuilib/3.12.0/yui-core/yui-core.js similarity index 96% rename from lib/yuilib/3.9.1/build/yui-core/yui-core.js rename to lib/yuilib/3.12.0/yui-core/yui-core.js index 69e39d70356..ef82f2636c9 100644 --- a/lib/yuilib/3.9.1/build/yui-core/yui-core.js +++ b/lib/yuilib/3.12.0/yui-core/yui-core.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,4 +3703,4 @@ YUI.Env.aliases = { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js b/lib/yuilib/3.12.0/yui-later/yui-later-debug.js similarity index 93% rename from lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js rename to lib/yuilib/3.12.0/yui-later/yui-later-debug.js index 01b019d1c04..7c5a0b8c79d 100644 --- a/lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-later', function (Y, NAME) { /** @@ -76,4 +82,4 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later-min.js b/lib/yuilib/3.12.0/yui-later/yui-later-min.js similarity index 66% rename from lib/yuilib/3.9.1/build/yui-later/yui-later-min.js rename to lib/yuilib/3.12.0/yui-later/yui-later-min.js index 753430e1d24..92344a496a2 100644 --- a/lib/yuilib/3.9.1/build/yui-later/yui-later-min.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later.js b/lib/yuilib/3.12.0/yui-later/yui-later.js similarity index 93% rename from lib/yuilib/3.9.1/build/yui-later/yui-later.js rename to lib/yuilib/3.12.0/yui-later/yui-later.js index 01b019d1c04..7c5a0b8c79d 100644 --- a/lib/yuilib/3.9.1/build/yui-later/yui-later.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-later', function (Y, NAME) { /** @@ -76,4 +82,4 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js similarity index 91% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js index ccb9c9d63ff..555eed0ad0d 100644 --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -79,4 +85,4 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js similarity index 84% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js index 52e8c696d03..56d1718a1e3 100644 --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js similarity index 91% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js index ccb9c9d63ff..555eed0ad0d 100644 --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -79,4 +85,4 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js b/lib/yuilib/3.12.0/yui-log/yui-log-debug.js similarity index 84% rename from lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js rename to lib/yuilib/3.12.0/yui-log/yui-log-debug.js index b9d5b2649aa..2bf24981b8a 100644 --- a/lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js +++ b/lib/yuilib/3.12.0/yui-log/yui-log-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log', function (Y, NAME) { /** @@ -14,9 +20,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -38,7 +44,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -57,6 +63,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -109,4 +124,4 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/yui-log/yui-log-min.js b/lib/yuilib/3.12.0/yui-log/yui-log-min.js new file mode 100644 index 00000000000..892045e5ef2 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-log/yui-log-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -7779,7 +7861,7 @@ Y.log('Undefined module: ' + mname + ', matched a pattern: ' + -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -7881,10 +7963,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -8145,7 +8227,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -8367,20 +8451,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -8394,12 +8464,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -8507,6 +8582,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -8570,22 +8647,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -8595,8 +8669,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -8778,6 +8851,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -8797,7 +8876,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -8809,6 +8890,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -8821,7 +8920,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -8897,6 +8997,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -9051,7 +9152,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -9097,7 +9199,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -9822,7 +9925,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -9902,11 +10006,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -9931,6 +10036,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -9998,11 +10118,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -10445,8 +10560,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -10572,6 +10686,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -10794,11 +10913,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "get", "features", diff --git a/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js new file mode 100644 index 00000000000..58b22085f4a --- /dev/null +++ b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js @@ -0,0 +1,22 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync +(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log" +,i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style" +]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","hu","it","ja","nb-NO","nl","pt-BR","ru","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","hu","it","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase +:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssnormalize"],type:"css"},"cssgrids-base":{optional:["cssnormalize"],type:"css"},"cssgrids-responsive":{optional:["cssnormalize"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssnormalize"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-foot":{requires:["datatable-core","view"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es","hu","it"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-paginator":{lang:["en"],requires:["model","view","paginator-core","datatable-foot","datatable-paginator-templates"],skinnable:!0},"datatable-paginator-templates":{requires:["template"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es","hu"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es","hu"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test +:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style" +,"node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked" +:{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]} +); diff --git a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js similarity index 96% rename from lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js rename to lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js index 4768c0af417..12cf49670ee 100644 --- a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js +++ b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -3844,7 +3904,7 @@ YUI.add('get', function (Y, NAME) { -}, '3.9.1'); +}, '3.12.0'); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -3959,7 +4019,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -4252,7 +4312,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -4340,7 +4400,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -4356,9 +4416,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -4380,7 +4440,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -4399,6 +4459,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -4451,7 +4520,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -4532,7 +4601,7 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); YUI.add('yui-later', function (Y, NAME) { /** @@ -4610,7 +4679,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -4619,98 +4688,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -5702,9 +5783,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -7388,7 +7470,7 @@ Y.Loader.prototype = { -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -7487,10 +7569,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -7751,7 +7833,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -7973,20 +8057,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -8000,12 +8070,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -8113,6 +8188,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -8176,22 +8253,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -8201,8 +8275,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -8384,6 +8457,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -8403,7 +8482,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -8415,6 +8496,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -8427,7 +8526,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -8503,6 +8603,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -8657,7 +8758,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -8703,7 +8805,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -9428,7 +9531,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -9508,11 +9612,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -9537,6 +9642,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -9604,11 +9724,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -10051,8 +10166,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -10178,6 +10292,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -10400,11 +10519,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "get", "features", diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js similarity index 82% rename from lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js rename to lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js index ef6b464a8c6..84bbf5667d1 100644 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-throttle', function (Y, NAME) { /** @@ -36,7 +42,7 @@ Y.throttle = function(fn, ms) { if (ms === -1) { return function() { - fn.apply(null, arguments); + fn.apply(this, arguments); }; } @@ -46,10 +52,10 @@ Y.throttle = function(fn, ms) { var now = Y.Lang.now(); if (now - last > ms) { last = now; - fn.apply(null, arguments); + fn.apply(this, arguments); } }; }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js new file mode 100644 index 00000000000..801f3c1ab24 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js @@ -0,0 +1,10 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-throttle",function(e,t){ +/*! Based on work by Simon Willison: http://gist.github.com/292562 */ +;e.throttle=function(t,n){n=n?n:e.config.throttleTime||150;if(n===-1)return function(){t.apply(this,arguments)};var r=e.Lang.now();return function(){var i=e.Lang.now();i-r>n&&(r=i,t.apply(this,arguments))}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle.js similarity index 82% rename from lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js rename to lib/yuilib/3.12.0/yui-throttle/yui-throttle.js index ef6b464a8c6..84bbf5667d1 100644 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-throttle', function (Y, NAME) { /** @@ -36,7 +42,7 @@ Y.throttle = function(fn, ms) { if (ms === -1) { return function() { - fn.apply(null, arguments); + fn.apply(this, arguments); }; } @@ -46,10 +52,10 @@ Y.throttle = function(fn, ms) { var now = Y.Lang.now(); if (now - last > ms) { last = now; - fn.apply(null, arguments); + fn.apply(this, arguments); } }; }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui-debug.js b/lib/yuilib/3.12.0/yui/yui-debug.js similarity index 97% rename from lib/yuilib/3.9.1/build/yui/yui-debug.js rename to lib/yuilib/3.12.0/yui/yui-debug.js index 885880430ab..b58f01ab755 100644 --- a/lib/yuilib/3.9.1/build/yui/yui-debug.js +++ b/lib/yuilib/3.12.0/yui/yui-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1521,6 +1527,7 @@ Y.log('Fetching loader: ' + config.base + config.loaderPath, 'info', 'yui'); YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1975,6 +1982,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -2060,8 +2083,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -2085,8 +2108,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -2127,9 +2148,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2353,7 +2380,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2370,10 +2397,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2383,10 +2410,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2488,16 +2515,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -3139,7 +3184,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -3183,7 +3228,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -3195,7 +3242,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3802,17 +3849,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3842,16 +3897,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3982,7 +4042,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -5285,7 +5345,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5401,7 +5461,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5694,7 +5754,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5782,7 +5842,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5798,9 +5858,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5822,7 +5882,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5841,6 +5901,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5893,7 +5962,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5971,7 +6040,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -5980,98 +6049,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -7066,9 +7147,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -8790,7 +8872,7 @@ Y.log('Undefined module: ' + mname + ', matched a pattern: ' + -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -8892,10 +8974,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -9156,7 +9238,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -9378,20 +9462,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -9405,12 +9475,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -9518,6 +9593,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -9581,22 +9658,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -9606,8 +9680,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -9789,6 +9862,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -9808,7 +9887,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -9820,6 +9901,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -9832,7 +9931,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -9908,6 +10008,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -10062,7 +10163,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -10108,7 +10210,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -10833,7 +10936,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -10913,11 +11017,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -10942,6 +11047,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -11009,11 +11129,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -11456,8 +11571,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -11583,6 +11697,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -11805,11 +11924,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "yui-base", "get", diff --git a/lib/yuilib/3.12.0/yui/yui-min.js b/lib/yuilib/3.12.0/yui/yui-min.js new file mode 100644 index 00000000000..7ee761bf544 --- /dev/null +++ b/lib/yuilib/3.12.0/yui/yui-min.js @@ -0,0 +1,22 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&! +(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null +;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources" +],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","hu","it","ja","nb-NO","nl","pt-BR","ru","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","hu","it","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssnormalize"],type:"css"},"cssgrids-base":{optional:["cssnormalize"],type:"css"},"cssgrids-responsive":{optional:["cssnormalize"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssnormalize"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local" +,"plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-foot":{requires:["datatable-core","view"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es","hu","it"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-paginator":{lang:["en"],requires:["model","view","paginator-core","datatable-foot","datatable-paginator-templates"],skinnable:!0},"datatable-paginator-templates":{requires:["template"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es","hu"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es","hu"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic" +]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base" +,"json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base" +:{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui.js b/lib/yuilib/3.12.0/yui/yui.js similarity index 97% rename from lib/yuilib/3.9.1/build/yui/yui.js rename to lib/yuilib/3.12.0/yui/yui.js index 84a74d88308..f95f2370bd7 100644 --- a/lib/yuilib/3.9.1/build/yui/yui.js +++ b/lib/yuilib/3.12.0/yui/yui.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -4929,7 +4989,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5044,7 +5104,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5337,7 +5397,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5425,7 +5485,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5441,9 +5501,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5465,7 +5525,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5484,6 +5544,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5536,7 +5605,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5614,7 +5683,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -5623,98 +5692,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -6706,9 +6787,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -8392,7 +8474,7 @@ Y.Loader.prototype = { -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -8491,10 +8573,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -8755,7 +8837,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -8977,20 +9061,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -9004,12 +9074,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -9117,6 +9192,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -9180,22 +9257,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -9205,8 +9279,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -9388,6 +9461,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -9407,7 +9486,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -9419,6 +9500,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -9431,7 +9530,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -9507,6 +9607,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -9661,7 +9762,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -9707,7 +9809,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -10432,7 +10535,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -10512,11 +10616,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -10541,6 +10646,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -10608,11 +10728,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -11055,8 +11170,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -11182,6 +11296,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -11404,11 +11523,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "yui-base", "get", diff --git a/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js b/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js deleted file mode 100644 index 367a6180958..00000000000 --- a/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-node-plugin",function(e,t){var n=function(t){t=t?e.merge(t):{},t.node=t.host,n.superclass.constructor.apply(this,arguments)};n.NAME="nodefx",n.NS="fx",e.extend(n,e.Anim),e.namespace("Plugin"),e.Plugin.NodeFX=n},"3.9.1",{requires:["node-pluginhost","anim-base"]}); diff --git a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js b/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js deleted file mode 100644 index 7b1e6d93390..00000000000 --- a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-xy",function(e,t){var n=Number;e.Anim.behaviors.xy={set:function(e,t,r,i,s,o,u){e._node.setXY([u(s,n(r[0]),n(i[0])-n(r[0]),o),u(s,n(r[1]),n(i[1])-n(r[1]),o)])},get:function(e){return e._node.getXY()}}},"3.9.1",{requires:["anim-base","node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js b/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js deleted file mode 100644 index 1a657383d06..00000000000 --- a/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("array-invoke",function(e,t){e.Array.invoke=function(t,n){var r=e.Array(arguments,2,!0),i=e.Lang.isFunction,s=[];return e.Array.each(e.Array(t),function(e,t){e&&i(e[n])&&(s[t]=e[n].apply(e,r))}),s}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js b/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js deleted file mode 100644 index 19e2195f938..00000000000 --- a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("arraylist-filter",function(e,t){e.mix(e.ArrayList.prototype,{filter:function(t){var n=[];return e.Array.each(this._items,function(e,r){e=this.item(r),t(e)&&n.push(e)},this),new this.constructor(n)}})},"3.9.1",{requires:["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js b/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js deleted file mode 100644 index a47ec2379f8..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js +++ /dev/null @@ -1,66 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('arraysort', function (Y, NAME) { - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@module arraysort -*/ - -var LANG = Y.Lang, - ISVALUE = LANG.isValue, - ISSTRING = LANG.isString; - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@class ArraySort -*/ - -Y.ArraySort = { - - /** - Comparator function for simple case-insensitive sorting of an array of - strings. - - @method compare - @param a {Object} First sort argument. - @param b {Object} Second sort argument. - @param desc {Boolean} `true` if sort direction is descending, `false` if - sort direction is ascending. - @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. - */ - compare: function(a, b, desc) { - if(!ISVALUE(a)) { - if(!ISVALUE(b)) { - return 0; - } - else { - return 1; - } - } - else if(!ISVALUE(b)) { - return -1; - } - - if(ISSTRING(a)) { - a = a.toLowerCase(); - } - if(ISSTRING(b)) { - b = b.toLowerCase(); - } - if(a < b) { - return (desc) ? 1 : -1; - } - else if (a > b) { - return (desc) ? -1 : 1; - } - else { - return 0; - } - } - -}; - - -}, '3.9.1', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js b/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js deleted file mode 100644 index 6e31be8b5ec..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("arraysort",function(e,t){var n=e.Lang,r=n.isValue,i=n.isString;e.ArraySort={compare:function(e,t,n){return r(e)?r(t)?(i(e)&&(e=e.toLowerCase()),i(t)&&(t=t.toLowerCase()),et?n?-1:1:0):-1:r(t)?1:0}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort.js b/lib/yuilib/3.9.1/build/arraysort/arraysort.js deleted file mode 100644 index a47ec2379f8..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort.js +++ /dev/null @@ -1,66 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('arraysort', function (Y, NAME) { - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@module arraysort -*/ - -var LANG = Y.Lang, - ISVALUE = LANG.isValue, - ISSTRING = LANG.isString; - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@class ArraySort -*/ - -Y.ArraySort = { - - /** - Comparator function for simple case-insensitive sorting of an array of - strings. - - @method compare - @param a {Object} First sort argument. - @param b {Object} Second sort argument. - @param desc {Boolean} `true` if sort direction is descending, `false` if - sort direction is ascending. - @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. - */ - compare: function(a, b, desc) { - if(!ISVALUE(a)) { - if(!ISVALUE(b)) { - return 0; - } - else { - return 1; - } - } - else if(!ISVALUE(b)) { - return -1; - } - - if(ISSTRING(a)) { - a = a.toLowerCase(); - } - if(ISSTRING(b)) { - b = b.toLowerCase(); - } - if(a < b) { - return (desc) ? 1 : -1; - } - else if (a > b) { - return (desc) ? -1 : 1; - } - else { - return 0; - } - } - -}; - - -}, '3.9.1', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css deleted file mode 100644 index b6a21e68bcb..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css deleted file mode 100644 index b830747aa99..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css deleted file mode 100644 index cc85fa79cf7..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png b/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png deleted file mode 100644 index 9c42b83318d..00000000000 Binary files a/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-up.png b/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-up.png deleted file mode 100644 index 07e237512e9..00000000000 Binary files a/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-up.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css b/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css deleted file mode 100644 index 566f526c713..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-flick{position:relative;overflow:hidden}.yui3-flick-content{position:relative}#yui3-css-stamp.skin-sam-node-flick{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css b/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css deleted file mode 100644 index 0e2a683ccb9..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-sam .yui3-menu-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:93%;line-height:1.5;*line-height:1.45;border:solid 1px #808080;background:#fff;padding:3px 0}.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background:url(sprite.png) repeat-x 0 0;padding:0}.yui3-skin-sam .yui3-menu ul,.yui3-skin-sam .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #ccc}.yui3-skin-sam .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-sam .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-sam .yui3-menu li,.yui3-skin-sam .yui3-menu .yui3-menu li{_border-bottom:solid 1px #fff}.yui3-skin-sam .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-sam .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-sam .yui3-splitbuttonnav li{border-right:solid 1px #808080}.yui3-skin-sam .yui3-menubuttonnav li li,.yui3-skin-sam .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-sam .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#000;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#808080;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label{background:url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#000;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #ccc;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-sam .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#b3d4ff}.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#b3d4ff;border-left-width:0;margin-left:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#7d98b8;background:url(sprite.png) repeat-x 0 -1700px}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#808080;background:transparent}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#7d98b8;background:url(horizontal-menu-submenu-toggle.png) left center no-repeat}#yui3-css-stamp.skin-sam-node-menunav{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css b/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css deleted file mode 100644 index a55250464e9..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css +++ /dev/null @@ -1,29 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-sam .yui3-aclist-content{background:#fff;border:1px solid #afafaf;-moz-box-shadow:1px 1px 4px rgba(0,0,0,0.58);-webkit-box-shadow:1px 1px 4px rgba(0,0,0,0.58);box-shadow:1px 1px 4px rgba(0,0,0,0.58)}.yui3-skin-sam .yui3-aclist-item-hover{background:#bfdaff}.yui3-skin-sam .yui3-aclist-item-active{background:#2647a0;color:#fff;outline:0}#yui3-css-stamp.skin-sam-autocomplete-list{display:none} -.yui3-calendar-pane{width:100%}.yui3-calendar-grid{width:100%}.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-skin-sam .yui3-calendar-content{padding:10px;color:#000;border:1px solid gray;background:#f2f2f2;background:-moz-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#f9f9f9),color-stop(100%,#f2f2f2));background:-webkit-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-o-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-ms-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9',endColorstr='#f2f2f2',GradientType=0);background:linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);-moz-border-radius:5px;border-radius:5px}.yui3-skin-sam .yui3-calendar-grid{padding:5px;border-collapse:collapse}.yui3-skin-sam .yui3-calendar-header{padding-bottom:10px}.yui3-skin-sam .yui3-calendar-header-label{margin:0;font-size:1em;font-weight:bold}.yui3-skin-sam .yui3-calendar-day,.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{padding:5px;border:1px solid #ccc;background:#fff;text-align:center}.yui3-skin-sam .yui3-calendar-day:hover{background:#06c;color:#fff}.yui3-skin-sam .yui3-calendar-selection-disabled,.yui3-skin-sam .yui3-calendar-selection-disabled:hover{color:#a6a6a6;background:#ccc}.yui3-skin-sam .yui3-calendar-weekday{font-weight:bold}.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{color:#a6a6a6}.yui3-skin-sam .yui3-calendar-day{font-weight:bold}.yui3-skin-sam .yui3-calendar-day-selected{background-color:#b3d4ff;color:#000}.yui3-skin-sam .yui3-calendar-header-label{text-align:center}.yui3-skin-sam .yui3-calendar-left-grid{margin-right:1em}.yui3-skin-sam .yui3-calendar-right-grid{margin-left:1em}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar-base{display:none} -.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-calendar-day{cursor:pointer}.yui3-calendar-selection-disabled{cursor:default}.yui3-calendar-prevmonth-day{cursor:default}.yui3-calendar-nextmonth-day{cursor:default}.yui3-calendar-content:hover .yui3-calendar-day,.yui3-calendar-content:hover .yui3-calendar-prevmonth-day,.yui3-calendar-content:hover .yui3-calendar-nextmonth-day{-moz-user-select:none}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar{display:none} -.yui3-calendar-header{padding-left:15px;padding-right:15px}.yui3-calendar-header-label{width:100%}.yui3-calendarnav-prevmonth{cursor:pointer}.yui3-calendarnav-nextmonth{cursor:pointer}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth{color:#000;width:12px;height:14px;background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKNJREFUeNpiYCAeSAPxUiiWZqAi4ATiaiD+DMT/ofgzVIyTUsMDgfghksHo+CFUDcnAAIgP4DEYHR+A6iEIhIB4GgkGo+NpUDMwADMQFwHxBwoMh+EPULOYYYZ7APFVKhiMjkFmejBBLWFjoD5gQ+dQO4iwOloUiOdQYPgcqBkDl0zRQRQRGS2KGkVFHRB/QzL4G1SMk5qpQg6psJMjVhNAgAEAH+qPqeiPEUsAAAAASUVORK5CYII=);background-repeat:no-repeat}.yui3-skin-sam .yui3-calendarnav-prevmonth:hover,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=);color:#06c}.yui3-skin-sam .yui3-calendarnav-month-disabled,.yui3-skin-sam .yui3-calendarnav-month-disabled:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==);cursor:default;color:#ccc}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-prevmonth:hover{background-position:0 0;margin-left:-12px}.yui3-skin-sam .yui3-calendarnav-nextmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background-position:-12px 0;margin-right:-12px}.yui3-skin-sam .yui3-calendarnav-prevmonth span,.yui3-skin-sam .yui3-calendarnav-nextmonth span{display:none;*display:block}#yui3-css-stamp.skin-sam-calendarnavigator{display:none} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex}#yui3-css-stamp.skin-sam-console-filters{display:none} -.yui3-skin-sam .yui3-console-separate{position:absolute;right:1em;top:1em;z-index:999}.yui3-skin-sam .yui3-console-inline{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:top}.yui3-skin-sam .yui3-console-inline .yui3-console-content{position:relative}.yui3-skin-sam .yui3-console-content{background:#777;_background:#d8d8da url(bg.png) repeat-x 0 0;font:normal 13px/1.3 Arial,sans-serif;text-align:left;border:1px solid #777;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-bd,.yui3-skin-sam .yui3-console-ft{position:relative}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-ft .yui3-console-controls{text-align:right}.yui3-skin-sam .yui3-console-hd{background:#d8d8da url(bg.png) repeat-x 0 0;padding:1ex;border:1px solid transparent;_border:0 none;border-top-right-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;-webkit-border-top-right-radius:10px;-webkit-border-top-left-radius:10px}.yui3-skin-sam .yui3-console-bd{background:#fff;border-top:1px solid #777;border-bottom:1px solid #777;color:#000;font-size:11px;overflow:auto;overflow-x:auto;overflow-y:scroll;_width:100%}.yui3-skin-sam .yui3-console-ft{background:#d8d8da url(bg.png) repeat-x 0 0;border:1px solid transparent;_border:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-controls{padding:4px 1ex;zoom:1}.yui3-skin-sam .yui3-console-title{color:#000;display:inline;float:left;font-weight:bold;font-size:13px;height:24px;line-height:24px;margin:0;padding-left:1ex}.yui3-skin-sam .yui3-console-pause-label{float:left}.yui3-skin-sam .yui3-console-button{line-height:1.3}.yui3-skin-sam .yui3-console-collapsed .yui3-console-bd,.yui3-skin-sam .yui3-console-collapsed .yui3-console-ft{display:none}.yui3-skin-sam .yui3-console-content.yui3-console-collapsed{-webkit-border-radius:0}.yui3-skin-sam .yui3-console-collapsed .yui3-console-hd{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:0}.yui3-skin-sam .yui3-console-entry{border-bottom:1px solid #aaa;min-height:32px;_height:32px}.yui3-skin-sam .yui3-console-entry-meta{margin:0;overflow:hidden}.yui3-skin-sam .yui3-console-entry-content{margin:0;padding:0 1ex;white-space:pre-wrap;word-wrap:break-word}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-src{color:#000;font-style:italic;font-weight:bold;float:right;margin:2px 5px 0 0}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-time{color:#777;padding-left:1ex}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-time{color:#555}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-meta .yui3-console-entry-cat{display:none}.yui3-skin-sam .yui3-console-entry-warn{background:#aee url(warn_error.png) no-repeat -15px 15px}.yui3-skin-sam .yui3-console-entry-error{background:#ffa url(warn_error.png) no-repeat 5px -24px;color:#900}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-content,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-content{padding-left:24px}.yui3-skin-sam .yui3-console-entry-cat{text-transform:uppercase;padding:1px 4px;background-color:#ccc}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-cat{background-color:#ac2}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-cat{background-color:#e81}.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-cat{background-color:#b00;color:#fff}.yui3-skin-sam .yui3-console-hidden{display:none}#yui3-css-stamp.skin-sam-console{display:none} -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} -.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} -.yui3-datatable-message{display:none}.yui3-datatable-message-visible .yui3-datatable-message{display:block;display:table-row-group}.yui3-skin-sam .yui3-datatable-message-content{border:0 none;border-bottom:1px solid #cbcbcb;padding:4px 10px}#yui3-css-stamp.skin-sam-datatable-message{display:none} -.yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:arial,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-sam-datatable-scroll{display:none} -.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} -v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-sam .yui3-dial-handle{background:#6c3a3a;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-sam .yui3-dial-ring{background:#bebdb7;background:-moz-linear-gradient(100% 100% 135deg,#7b7a6d,#fff);background:-webkit-gradient(linear,left top,right bottom,from(#fff),to(#7b7a6d));box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-webkit-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-moz-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-sam .yui3-dial-center-button{box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#fbfbf9 24%,#f2f0ea 41%,#d3d0c3 83%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#fbfbf9),to(#d3d0c3),color-stop(.2,#f2f0ea));cursor:pointer;opacity:.7}.yui3-skin-sam .yui3-dial-reset-string{color:#676767;font-size:85%;text-decoration:underline}.yui3-skin-sam .yui3-dial-label{color:#808080;margin-bottom:.8em}.yui3-skin-sam .yui3-dial-value-string{margin-left:.5em;color:#000;font-size:130%}.yui3-skin-sam .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-sam .yui3-dial-north-mark{position:absolute;border-left:2px solid #ccc;height:5px;width:10px;left:50%;top:-7px;font-size:1px}.yui3-skin-sam .yui3-dial-marker{background-color:#000;opacity:.2;font-size:1px}.yui3-skin-sam .yui3-dial-marker-max-min{background-color:#ab3232;opacity:.6}.yui3-skin-sam .yui3-dial-ring-vml,.yui3-skin-sam .yui3-dial-center-button-vml,.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam .yui3-dial-marker-vml,.yui3-skin-sam .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-sam-dial{display:none} -.yui3-flick{position:relative;overflow:hidden}.yui3-flick-content{position:relative}#yui3-css-stamp.skin-sam-node-flick{display:none} -.yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-sam .yui3-menu-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:93%;line-height:1.5;*line-height:1.45;border:solid 1px #808080;background:#fff;padding:3px 0}.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background:url(sprite.png) repeat-x 0 0;padding:0}.yui3-skin-sam .yui3-menu ul,.yui3-skin-sam .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #ccc}.yui3-skin-sam .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-sam .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-sam .yui3-menu li,.yui3-skin-sam .yui3-menu .yui3-menu li{_border-bottom:solid 1px #fff}.yui3-skin-sam .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-sam .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-sam .yui3-splitbuttonnav li{border-right:solid 1px #808080}.yui3-skin-sam .yui3-menubuttonnav li li,.yui3-skin-sam .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-sam .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#000;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#808080;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label{background:url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#000;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #ccc;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-sam .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#b3d4ff}.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#b3d4ff;border-left-width:0;margin-left:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#7d98b8;background:url(sprite.png) repeat-x 0 -1700px}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#808080;background:transparent}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#7d98b8;background:url(horizontal-menu-submenu-toggle.png) left center no-repeat}#yui3-css-stamp.skin-sam-node-menunav{display:none} -.yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}#yui3-css-stamp.skin-sam-overlay{display:none} -.yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-sam .yui3-panel-content{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333;border:1px solid black;background:white}.yui3-skin-sam .yui3-panel .yui3-widget-hd{padding:8px 28px 8px 8px;min-height:13px;_height:13px;color:white;background-color:#3961c5;background:-moz-linear-gradient(0% 100% 90deg,#2647a0 7%,#3d67ce 50%,#426fd9 100%);background:-webkit-gradient(linear,left bottom,left top,from(#2647a0),color-stop(0.07,#2647a0),color-stop(0.5,#3d67ce),to(#426fd9))}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:8px}.yui3-skin-sam .yui3-panel .yui3-widget-bd{padding:10px}.yui3-skin-sam .yui3-panel .yui3-widget-ft{background:#edf5ff;padding:8px;text-align:right}.yui3-skin-sam .yui3-panel .yui3-widget-ft .yui3-button{margin-left:8px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:13px;height:13px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat 1px 1px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:13px;margin:1px 0 0 1px}.yui3-skin-sam .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-sam-panel{display:none} -.yui3-resize,.yui3-resize-wrapper{z-index:0;zoom:1}.yui3-resize-handle{position:absolute;display:block;z-index:100;zoom:1}.yui3-resize-proxy{position:absolute;border:1px dashed #000;position:absolute;z-index:10000}.yui3-resize-hidden-handles .yui3-resize-handle{opacity:0;filter:alpha(opacity=0)}.yui3-resize-handle-t,.yui3-resize-handle-b{width:100%;left:0;height:6px}.yui3-resize-handle-l,.yui3-resize-handle-r{height:100%;top:0;width:6px}.yui3-resize-handle-t{cursor:n-resize;top:0}.yui3-resize-handle-b{cursor:s-resize;bottom:0}.yui3-resize-handle-l{cursor:w-resize;left:0}.yui3-resize-handle-r{cursor:e-resize;right:0}.yui3-resize-handle-inner{position:absolute;zoom:1}@media only screen and (min-device-width :320px) and (max-device-width :480px){.yui3-resize-handle-inner:after{content:"";width:40px;height:40px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-12px;right:0}.yui3-resize-handle-inner-l:after{top:-12px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-12px}.yui3-resize-handle-inner-b:after{bottom:0;left:-12px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}@media only screen and (min-device-width :768px) and (max-device-width :1024px){.yui3-resize-handle-inner:after{content:"";width:30px;height:30px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-6px;right:0}.yui3-resize-handle-inner-l:after{top:-6px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-6px}.yui3-resize-handle-inner-b:after{bottom:0;left:-6px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b{margin-left:-8px;left:50%}.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-r{margin-top:-8px;top:50%}.yui3-resize-handle-inner-t{top:-4px}.yui3-resize-handle-inner-b{bottom:-4px}.yui3-resize-handle-inner-l{left:-4px}.yui3-resize-handle-inner-r{right:-4px}.yui3-resize-handle-tr,.yui3-resize-handle-br,.yui3-resize-handle-tl,.yui3-resize-handle-bl{height:15px;width:15px;z-index:200}.yui3-resize-handle-tr{cursor:ne-resize;top:0;right:0}.yui3-resize-handle-tl{cursor:nw-resize;top:0;left:0}.yui3-resize-handle-br{cursor:se-resize;bottom:0;right:0}.yui3-resize-handle-bl{cursor:sw-resize;bottom:0;left:0}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{background-repeat:no-repeat;background:url(arrows.png) no-repeat 0 0;display:block;height:15px;overflow:hidden;text-indent:-99999em;width:15px}.yui3-resize-handle-inner-br{background-position:-30px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tr{background-position:-58px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-bl{background-position:-75px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tl{background-position:-47px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t{background-position:-15px 0}#yui3-css-stamp.skin-sam-resize-base{display:none} -.yui3-scrollview{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none}.yui3-scrollview-hidden{display:none}.yui3-scrollview-content{position:relative}.yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}#yui3-css-stamp.skin-sam-scrollview-base{display:none} -.yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}.yui3-skin-sam .yui3-scrollview{background-color:white}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{*zoom:1}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list{*zoom:1;list-style:none;padding:0;margin:0}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content{border-top:0;background-color:white;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:black}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{border-bottom:1px solid #303030;padding:15px 20px 16px;font-size:100%;font-weight:bold;background-color:white;cursor:pointer}#yui3-css-stamp.skin-sam-scrollview-list{display:none} -.yui3-scrollview-scrollbar{opacity:1;position:absolute;width:6px;height:10px}.yui3-scrollview-scrollbar{top:0;right:1px}.yui3-scrollview-scrollbar-horiz{top:auto;height:8px;width:20px;bottom:1px;left:0}.yui3-scrollview-scrollbar .yui3-scrollview-child{position:absolute;right:0;display:block;width:100%;height:4px}.yui3-scrollview-scrollbar .yui3-scrollview-first{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-last{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-middle{position:absolute;top:4px;height:1px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-child{display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline;top:0;left:0;bottom:auto;right:auto}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{width:4px;height:6px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{top:0;left:4px;width:1px;height:6px}.yui3-scrollview-scrollbar-vert-basic{height:auto}.yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child{position:static;_overflow:hidden;_line-height:4px}.yui3-scrollview-scrollbar-horiz-basic{width:auto;white-space:nowrap;line-height:6px;_overflow:hidden}.yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{position:static;padding:0;margin:0;top:auto;left:auto;right:auto;bottom:auto}.yui3-skin-sam .yui3-scrollview-scrollbar{-webkit-transform:translate3d(0,0,0);-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAABCAYAAAD9yd/wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiZGBgSGPAAgACDAAIkABoFyloZQAAAABJRU5ErkJggg==)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-bottom-right-radius:0;border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;-webkit-border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-webkit-transform:translate3d(0,0,0);-moz-border-radius:0;-moz-border-radius-bottomright:3px;-moz-border-radius-bottomleft:3px;-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;-webkit-transform:translate3d(0,0,0) scaleY(1);-webkit-transform-origin-y:0;-moz-transform:translate(0,0) scaleY(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-top-right-radius:0;border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-bottom-left-radius:3px;-moz-border-radius-topright:0;-moz-border-radius-bottomleft:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-bottom-left-radius:0;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-top-right-radius:3px;-moz-border-radius-bottomleft:0;-moz-border-radius-topright:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{-webkit-transform:translate3d(0,0,0) scaleX(1);-webkit-transform-origin:0 0;-moz-transform:translate(0,0) scaleX(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{background-color:#aaa;background-image:none}#yui3-css-stamp.skin-sam-scrollview-scrollbars{display:none} -.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-slider-base{display:none} -.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} -.yui3-testconsole .yui3-console-entry{min-height:inherit;padding:5px}.yui3-testconsole .yui3-console-controls{display:none}.yui3-skin-sam .yui3-testconsole .yui3-console-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd,.yui3-skin-sam .yui3-testconsole .yui3-console-entry,.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{background:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.yui3-skin-sam .yui3-testconsole-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd{color:#333;font:13px/1.4 Helvetica,'DejaVu Sans','Bitstream Vera Sans',Arial,sans-serif}.yui3-skin-sam .yui3-testconsole-content{border:1px solid #afafaf}.yui3-skin-sam .yui3-testconsole .yui3-console-entry{border-bottom:1px solid #eaeaea;font-family:Menlo,Inconsolata,Consolas,'DejaVu Mono','Bitstream Vera Sans Mono',monospace;font-size:11px}.yui3-skin-sam .yui3-testconsole .yui3-console-ft{border-top:1px solid}.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-bottom:1px solid;*zoom:1}.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd{border:0}.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-color:#cfcfcf}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail{background-color:#ffe0e0;border-bottom-color:#ffc5c4}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass{background-color:#ecffea;border-bottom-color:#d1ffcc}#yui3-css-stamp.skin-sam-test-console{display:none} -.yui3-widget-hidden{display:none}.yui3-widget-content{overflow:hidden}.yui3-widget-content-expanded{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:100%}.yui3-widget-tmp-forcesize{overflow:hidden!important}#yui3-css-stamp.skin-sam-widget-base{display:none} -.yui3-widget-buttons .yui3-button-close,.yui3-widget-buttons .yui3-button-close .yui3-button-content,.yui3-widget-buttons .yui3-button-close .yui3-button-icon{display:inline-block;*display:inline;zoom:1;width:13px;height:13px;line-height:13px;vertical-align:top}.yui3-widget-buttons .yui3-button-close .yui3-button-icon{background-repeat:no-repeat;background-position:1px 1px}.yui3-skin-sam .yui3-widget-buttons .yui3-button-icon{background-image:url(sprite_icons.gif)}#yui3-css-stamp.skin-sam-widget-buttons{display:none} -.yui3-skin-sam .yui3-widget-mask{background-color:black;zoom:1;-ms-filter:"alpha(opacity=40)";filter:alpha(opacity=40);opacity:.4}#yui3-css-stamp.skin-sam-widget-modality{display:none} -.yui3-widget-stacked .yui3-widget-shim{opacity:0;filter:alpha(opacity=0);position:absolute;border:0;top:0;left:0;padding:0;margin:0;z-index:-1;width:100%;height:100%;_width:0;_height:0}#yui3-css-stamp.skin-sam-widget-stack{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif b/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif deleted file mode 100644 index fa26094f60e..00000000000 Binary files a/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/tabview.css b/lib/yuilib/3.9.1/build/assets/skins/sam/tabview.css deleted file mode 100644 index 960e6573b4b..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/tabview.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-buttons.css b/lib/yuilib/3.9.1/build/assets/skins/sam/widget-buttons.css deleted file mode 100644 index b6abced84e9..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-buttons.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-buttons .yui3-button-close,.yui3-widget-buttons .yui3-button-close .yui3-button-content,.yui3-widget-buttons .yui3-button-close .yui3-button-icon{display:inline-block;*display:inline;zoom:1;width:13px;height:13px;line-height:13px;vertical-align:top}.yui3-widget-buttons .yui3-button-close .yui3-button-icon{background-repeat:no-repeat;background-position:1px 1px}.yui3-skin-sam .yui3-widget-buttons .yui3-button-icon{background-image:url(sprite_icons.gif)}#yui3-css-stamp.skin-sam-widget-buttons{display:none} diff --git a/lib/yuilib/3.9.1/build/async-queue/async-queue-min.js b/lib/yuilib/3.9.1/build/async-queue/async-queue-min.js deleted file mode 100644 index e9452d97c55..00000000000 --- a/lib/yuilib/3.9.1/build/async-queue/async-queue-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("async-queue",function(e,t){e.AsyncQueue=function(){this._init(),this.add.apply(this,arguments)};var n=e.AsyncQueue,r="execute",i="shift",s="promote",o="remove",u=e.Lang.isObject,a=e.Lang.isFunction;n.defaults=e.mix({autoContinue:!0,iterations:1,timeout:10,until:function(){return this.iterations|=0,this.iterations<=0}},e.config.queueDefaults||{}),e.extend(n,e.EventTarget,{_running:!1,_init:function(){e.EventTarget.call(this,{prefix:"queue",emitFacade:!0}),this._q=[],this.defaults={},this._initEvents()},_initEvents:function(){this.publish({execute:{defaultFn:this._defExecFn,emitFacade:!0},shift:{defaultFn:this._defShiftFn,emitFacade:!0},add:{defaultFn:this._defAddFn,emitFacade:!0},promote:{defaultFn:this._defPromoteFn,emitFacade:!0},remove:{defaultFn:this._defRemoveFn,emitFacade:!0}})},next:function(){var e;while(this._q.length){e=this._q[0]=this._prepare(this._q[0]);if(!e||!e.until())break;this.fire(i,{callback:e}),e=null}return e||null},_defShiftFn:function(e){this.indexOf(e.callback)===0&&this._q.shift()},_prepare:function(t){if(a(t)&&t._prepared)return t;var r=e.merge(n.defaults,{context:this,args:[],_prepared:!0},this.defaults,a(t)?{fn:t}:t),i=e.bind(function(){i._running||i.iterations--,a(i.fn)&&i.fn.apply(i.context||e,e.Array(i.args))},this);return e.mix(i,r)},run:function(){var e,t=!0;for(e=this.next();t&&e&&!this.isRunning();e=this.next())t=e.timeout<0?this._execute(e):this._schedule(e);return e||this.fire("complete"),this},_execute:function(e){this._running=e._running=!0,e.iterations--,this.fire(r,{callback:e});var t=this._running&&e.autoContinue;return this._running=e._running=!1,t},_schedule:function(t){return this._running=e.later(t.timeout,this,function(){this._execute(t)&&this.run()}),!1},isRunning:function(){return!!this._running},_defExecFn:function(e){e.callback()},add:function(){return this.fire("add",{callbacks:e.Array(arguments,0,!0)}),this},_defAddFn:function(t){var n=this._q,r=[];e.Array.each(t.callbacks,function(e){u(e)&&(n.push(e),r.push(e))}),t.added=r},pause:function(){return u(this._running)&&this._running.cancel(),this._running=!1,this},stop:function(){return this._q=[],this.pause()},indexOf:function(e){var t=0,n=this._q.length,r;for(;t-1?this._q[t]:null},promote:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(s,t),n.detach()},this):this.fire(s,t),this},_defPromoteFn:function(e){var t=this.indexOf(e.callback),n=t>-1?this._q.splice(t,1)[0]:null;e.promoted=n,n&&this._q.unshift(n)},remove:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(o,t),n.detach()},this):this.fire(o,t),this},_defRemoveFn:function(e){var t=this.indexOf(e.callback);e.removed=t>-1?this._q.splice(t,1)[0]:null},size:function(){return this.isRunning()||this.next(),this._q.length}})},"3.9.1",{requires:["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js b/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js deleted file mode 100644 index e2c64031f52..00000000000 --- a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-complex",function(e,t){var n=e.Attribute;n.Complex=function(){},n.Complex.prototype={_normAttrVals:n.prototype._normAttrVals,_getAttrInitVal:n.prototype._getAttrInitVal},e.AttributeComplex=n.Complex},"3.9.1",{requires:["attribute-base"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js b/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js deleted file mode 100644 index 0f9a9f2971c..00000000000 --- a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-core",function(e,t){function E(e,t,n){this._yuievt=null,this._initAttrHost(e,t,n)}e.State=function(){this.data={}},e.State.prototype={add:function(e,t,n){var r=this.data[e];r||(r=this.data[e]={}),r[t]=n},addAll:function(e,t){var n=this.data[e],r;n||(n=this.data[e]={});for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r])},remove:function(e,t){var n=this.data[e];n&&delete n[t]},removeAll:function(t,n){var r;n?e.each(n,function(e,n){this.remove(t,typeof n=="string"?n:e)},this):(r=this.data,t in r&&delete r[t])},get:function(e,t){var n=this.data[e];if(n)return n[t]},getAll:function(e,t){var n=this.data[e],r,i;if(t)i=n;else if(n){i={};for(r in n)n.hasOwnProperty(r)&&(i[r]=n[r])}return i}};var n=e.Object,r=e.Lang,i=".",s="getter",o="setter",u="readOnly",a="writeOnce",f="initOnly",l="validator",c="value",h="valueFn",p="lazyAdd",d="added",v="_bypassProxy",m="initializing",g="initValue",y="lazy",b="isLazyAdd",w;E.INVALID_VALUE={},w=E.INVALID_VALUE,E._ATTR_CFG=[o,s,l,c,h,a,u,p,v],E.protectAttrs=function(t){if(t){t=e.merge(t);for(var n in t)t.hasOwnProperty(n)&&(t[n]=e.merge(t[n]))}return t},E.prototype={_initAttrHost:function(t,n,r){this._state=new e.State,this._initAttrs(t,n,r)},addAttr:function(e,t,n){var r=this,i=r._state,s,o;t=t||{},n=p in t?t[p]:n;if(n&&!r.attrAdded(e))i.addAll(e,{lazy:t,added:!0});else if(!r.attrAdded(e)||i.get(e,b))o=c in t,o&&(s=t.value,delete t.value),t.added=!0,t.initializing=!0,i.addAll(e,t),o&&r.set(e,s),i.remove(e,m);return r},attrAdded:function(e){return!!this._state.get(e,d)},get:function(e){return this._getAttr(e)},_isLazyAttr:function(e){return this._state.get(e,y)},_addLazyAttr:function(e){var t=this._state,n=t.get(e,y);t.add(e,b,!0),t.remove(e,y),this.addAttr(e,n)},set:function(e,t,n){return this._setAttr(e,t,n)},_set:function(e,t,n){return this._setAttr(e,t,n,!0)},_setAttr:function(t,r,s,o){var u=!0,a=this._state,l=this._stateProxy,h,p,d,v,m,g,y;return t.indexOf(i)!==-1&&(d=t,v=t.split(i),t=v.shift()),this._isLazyAttr(t)&&this._addLazyAttr(t),h=a.getAll(t,!0)||{},p=!(c in h),l&&t in l&&!h._bypassProxy&&(p=!1),g=h.writeOnce,y=h.initializing,!p&&!o&&(g&&(u=!1),h.readOnly&&(u=!1)),!y&&!o&&g===f&&(u=!1),u&&(p||(m=this.get(t)),v&&(r=n.setValue(e.clone(m),v,r),r===undefined&&(u=!1)),u&&(s=s||{},!this._fireAttrChange||y?this._setAttrVal(t,d,m,r,s):this._fireAttrChange(t,d,m,r,s))),this},_getAttr:function(e){var t=this,r=e,o=t._state,u,a,f,l;return e.indexOf(i)!==-1&&(u=e.split(i),e=u.shift()),t._tCfgs&&t._tCfgs[e]&&(l={},l[e]=t._tCfgs[e],delete t._tCfgs[e],t._addAttrs(l,t._tVals)),t._isLazyAttr(e)&&t._addLazyAttr(e),f=t._getStateVal(e),a=o.get(e,s),a&&!a.call&&(a=this[a]),f=a?a.call(t,f,r):f,f=u?n.getValue(f,u):f,f},_getStateVal:function(e){var t=this._stateProxy;return t&&e in t&&!this._state.get(e,v)?t[e]:this._state.get(e,c)},_setStateVal:function(e,t){var n=this._stateProxy;n&&e in n&&!this._state.get(e,v)?n[e]=t:this._state.add(e,c,t)},_setAttrVal:function(e,t,n,i,s){var o=this,u=!0,a=this._state.getAll(e,!0)||{},f=a.validator,l=a.setter,c=a.initializing,h=this._getStateVal(e),p=t||e,d,v;return f&&(f.call||(f=this[f]),f&&(v=f.call(o,i,p,s),!v&&c&&(i=a.defaultValue,v=!0))),!f||v?(l&&(l.call||(l=this[l]),l&&(d=l.call(o,i,p,s),d===w?c?i=a.defaultValue:u=!1:d!==undefined&&(i=d))),u&&(!t&&i===h&&!r.isObject(i)?u=!1:(g in a||(a.initValue=i),o._setStateVal(e,i)))):u=!1,u},setAttrs:function(e,t){return this._setAttrs(e,t)},_setAttrs:function(e,t){var n;for(n in e)e.hasOwnProperty(n)&&this.set(n,e[n],t);return this},getAttrs:function(e){return this._getAttrs(e)},_getAttrs:function(e){var t={},r,i,s,o=e===!0;if(!e||o)e=n.keys(this._state.data);for(i=0,s=e.length;i=t?(i=Math.floor((r/2-t)/(Math.pow(10,n-1)/2)),t=r/2-i*Math.pow(10,n-1)/2):t=r,isNaN(t)?e:t},_updateMinAndMax:function(){var e=this.get("data"),t,n,r,i,s=0,o=this.get("setMax"),u=this.get("setMin");if(!o||!u){if(e&&e.length&&e.length>0){r=e.length;for(;s=0,u=t>0,a,f,l,c,h,p,d,v=this.getTotalMajorUnits()-1,m=this.get("alwaysShowZero"),g=this.get("roundingMethod"),y=(t-e)/v>=1;if(g)if(g==="niceNumber"){i=this._getMinimumUnit(t,e,v);if(o&&u)(m||e=0)h--,c++,p=Math.ceil(t/c),d=Math.floor(e/h)*-1;h>0?t=d*c:t=e+i*v}else if(r){while(p=0)h++,c--,d=Math.floor(e/h)*-1,p=Math.ceil(t/c);c>0?e=p*h*-1:e=t-i*v}else i=Math.max(p,d),i=this._getNiceNumber(i),t=i*c,e=i*h*-1}else r?e=t-i*v:n?t=e+i*v:(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i));else n?m?t=0:t=e+i*v:r?e=t-i*v:m||t===0||t+i>0?(t=0,i=this._getMinimumUnit(t,e,v),e=t-i*v):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))}else g==="auto"?o&&u?((m||e<(t-e)/v)&&!n&&(e=0),i=(t-e)/v,y?(i=Math.ceil(i),t=e+i*v):t=e+Math.ceil(i*v*1e5)/1e5):u&&!o?m?(c=Math.round(v/(-1*e/t+1)),c=Math.max(Math.min(c,v-1),1),h=v-c,y?(p=Math.ceil(t/c),d=Math.floor(e/h)*-1,i=Math.max(p,d),t=i*c,e=i*h*-1):(p=t/c,d=e/h*-1,i=Math.max(p,d),t=Math.ceil(i*c*1e5)/1e5,e=Math.ceil(i*h*1e5)/1e5*-1)):(i=(t-e)/v,y&&(i=Math.ceil(i)),e=Math.round(this._roundDownToNearest(e,i)*1e5)/1e5,t=Math.round(this._roundUpToNearest(t,i)*1e5)/1e5):(i=(t-e)/v,y&&(i=Math.ceil(i)),m||t===0||t+i>0?(t=0,i=(t-e)/v,y?(Math.ceil(i),e=t-i*v):e=t-Math.ceil(i*v*1e5)/1e5):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))):!isNaN(g)&&isFinite(g)&&(i=g,s=i*v,a=t-e>s,l=this._roundDownToNearest(e,i),f=this._roundUpToNearest(t,i),r?e=t-s:n?t=e+s:o&&u?(m||l<=0?e=0:e=l,t=e+s):u&&!o?(e=l,t=f):(m||f>=0?t=0:t=f,e=t-s));this._dataMaximum=t,this._dataMinimum=e},_roundToNearest:function(e,t){t=t||1;var n=Math.round(this._roundToPrecision(e/t,10))*t;return this._roundToPrecision(n,10)},_roundUpToNearest:function(e,t){return t=t||1,Math.ceil(this._roundToPrecision(e/t,10))*t},_roundDownToNearest:function(e,t){return t=t||1,Math.floor(this._roundToPrecision(e/t,10))*t},_roundToPrecision:function(e,t){t=t||0;var n=Math.pow(10,t);return Math.round(n*e)/n}},e.NumericImpl=n,e.NumericAxisBase=e.Base.create("numericAxisBase",e.AxisBase,[e.NumericImpl])},"3.9.1",{requires:["axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js b/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js deleted file mode 100644 index 938f9a69c59..00000000000 --- a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("axis-numeric",function(e,t){Y_Lang=e.Lang,e.NumericAxis=e.Base.create("numericAxis",e.Axis,[e.NumericImpl],{_getLabelByIndex:function(){var e=arguments[0],t=arguments[1],n=this.get("minimum"),r=this.get("maximum"),i=(r-n)/(t-1),s,o=this.get("roundingMethod");return t-=1,e===0?s=n:e===t?s=r:(s=e*i,o==="niceNumber"&&(s=this._roundToNearest(s,i)),s+=n),parseFloat(s)},_hasDataOverflow:function(){var e,t,n;return this.get("setMin")||this.get("setMax")?!0:(e=this.get("roundingMethod"),t=this._actualMinimum,n=this._actualMaximum,Y_Lang.isNumber(e)&&(Y_Lang.isNumber(n)&&n>this._dataMaximum||Y_Lang.isNumber(t)&&t=0;--v){o=t[v];for(s in o)o.hasOwnProperty(s)&&(u=d({},o[s],g),h=u.value,m=u.cloneDefaultValue,h&&(m===undefined&&(f===h.constructor||r.isArray(h))||m===l||m===!0?u.value=e.clone(h):m===c&&(u.value=e.merge(h))),p=null,s.indexOf(i)!==-1&&(p=s.split(i),s=p.shift()),y=b[s],p&&y&&y.value?n.setValue(y.value,p,h):p||(y?(y.valueFn&&a in u&&(y.valueFn=null),d(y,u,g)):b[s]=u))}return b},_initHierarchy:function(e){var t=this._lazyAddAttrs,n,r,i,s,o,a,f,l=this._getClasses(),c=this._getAttrCfgs(),h=l.length-1;for(i=h;i>=0;i--){n=l[i],r=n.prototype,f=n._yuibuild&&n._yuibuild.exts;if(f)for(s=0,o=f.length;s=parseInt(i[0],10)&&e<=parseInt(i[1],10))return!0;if(i.length===1&&parseInt(n[r],10)===e)return!0}return!1},_getRulesForDate:function(e){var t=e.getFullYear(),n=e.getMonth(),r=e.getDate(),i=e.getDay(),s=this._rules,o=[],u,a,f,l;for(u in s)if(this._isNumInList(t,u))if(S.isString(s[u]))o.push(s[u]);else for(a in s[u])if(this._isNumInList(n,a))if(S.isString(s[u][a]))o.push(s[u][a]);else for(f in s[u][a])if(this._isNumInList(r,f))if(S.isString(s[u][a][f]))o.push(s[u][a][f]);else for(l in s[u][a][f])this._isNumInList(i,l)&&S.isString(s[u][a][f][l])&&o.push(s[u][a][f][l]);return o},_matchesRule:function(e,t){return C(this._getRulesForDate(e),t)>=0},_canBeSelected:function(e){var t=this.get("enabledDatesRule"),n=this.get("disabledDatesRule");return t?this._matchesRule(e,t):n?!this._matchesRule(e,n):!0},selectDates:function(e){return O.isValidDate(e)?this._addDateToSelection(e):S.isArray(e)&&this._addDatesToSelection(e),this},deselectDates:function(e){return e?O.isValidDate(e)?this._removeDateFromSelection(e):S.isArray(e)&&this._removeDatesFromSelection(e):this._clearSelection(),this},_addDateToSelection:function(e,t){if(this._canBeSelected(e)){var n=e.getFullYear(),r=e.getMonth(),i=e.getDate();k(this._selectedDates,n)?k(this._selectedDates[n],r)?this._selectedDates[n][r][i]=e:(this._selectedDates[n][r]={},this._selectedDates[n][r][i]=e):(this._selectedDates[n]={},this._selectedDates[n][r]={},this._selectedDates[n][r][i]=e),this._selectedDates=L(this._selectedDates,[n,r,i],e),t||this._fireSelectionChange()}},_addDatesToSelection:function(e){T(e,this._addDateToSelection,this),this._fireSelectionChange()},_addDateRangeToSelection:function(e,t){var n=(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4,r=e.getTime(),i=t.getTime(),s,o,u;r>i?(s=r,r=i,i=s+n):i-=n;for(o=r;o<=i;o+=864e5)u=new Date(o),u.setHours(12),this._addDateToSelection(u,o);this._fireSelectionChange()},_removeDateFromSelection:function(e,t){var n=e.getFullYear(),r=e.getMonth(),i=e.getDate();k(this._selectedDates,n)&&k(this._selectedDates[n],r)&&k(this._selectedDates[n][r],i)&&(delete this._selectedDates[n][r][i],t||this._fireSelectionChange())},_removeDatesFromSelection:function(e){T(e,this._removeDateFromSelection,this),this._fireSelectionChange()},_removeDateRangeFromSelection:function(e,t){var n=e.getTime(),r=t.getTime(),i;for(i=n;i<=r;i+=864e5)this._removeDateFromSelection(new Date(i),i);this._fireSelectionChange()},_clearSelection:function(e){this._selectedDates={},this.get("contentBox").all("."+p).removeClass(p).setAttribute("aria-selected",!1),e||this._fireSelectionChange()},_fireSelectionChange:function(){this.fire("selectionChange",{newSelection:this._getSelectedDatesList()})},_restoreModifiedCells:function(){var e=this.get("contentBox"),t;for(t in this._storedDateCells)e.one("#"+t).replace(this._storedDateCells[t]),delete this._storedDateCells[t]},_renderCustomRules:function(){this.get("contentBox").all("."+m+",."+y).removeClass(d).setAttribute("aria-disabled",!1);if(!A(this._rules)){var t,n,r;for(t=0;t0?(i=this._dateToNode(e),(t&&C(r,t)<0||!t&&n&&C(r,n)>=0)&&i.addClass(d).setAttribute("aria-disabled",!0),S.isFunction(this._filterFunction)&&(this._storedDateCells[i.get("id")]=i.cloneNode(!0),this._filterFunction(e,i,r))):t&&(i=this._dateToNode(e),i.addClass(d).setAttribute("aria-disabled",!0))},_renderSelectedDates:function(){this. -get("contentBox").all("."+p).removeClass(p).setAttribute("aria-selected",!1);var t,n,r;for(t=0;t=6?n=12:n=5;break;case 1:n=6;break;case 2:o>0?n=7:n=0;break;case 3:o>1?n=8:n=1;break;case 4:o>2?n=9:n=2;break;case 5:o>3?n=10:n=3;break;case 6:o>4?n=11:n=4}return this.get("contentBox").one("#"+this._calendarId+"_pane_"+i+"_"+n+"_"+t)},_nodeToDate:function(e){var t=e.get("id").split("_").reverse(),n=parseInt(t[2],10),r=parseInt(t[0],10),i=O.addMonths(this.get("date"),n),s=i.getFullYear(),o=i.getMonth();return new Date(s,o,r,12,0,0,0)},_bindCalendarEvents:function(){},_normalizeDate:function(e){return e?new Date(e.getFullYear(),e.getMonth(),1,12,0,0,0):null},_getCutoffColumn:function(e,t){var n=this._normalizeDate(e).getDay()-t,r=6-(n+7)%7;return r},_turnPrevMonthOn:function(e){var t=e.get("id"),n=this._paneProperties[t].paneDate,r=O.daysInMonth(O.addMonths(n,-1)),i;this._paneProperties[t].hasOwnProperty("daysInPrevMonth")||(this._paneProperties[t].daysInPrevMonth=0);if(r!==this._paneProperties[t].daysInPrevMonth){this._paneProperties[t].daysInPrevMonth=r;for(i=5;i>=0;i--)e.one("#"+t+"_"+i+"_"+(i-5)).set("text",r--)}},_turnPrevMonthOff:function(e){var t=e.get("id"),n;this._paneProperties[t].daysInPrevMonth=0;for(n=5;n>=0;n--)e.one("#"+t+"_"+n+"_"+(n-5)).setContent(" ")},_cleanUpNextMonthCells:function(e){var t=e.get("id");e.one("#"+t+"_6_29").removeClass(y),e.one("#"+t+"_7_30").removeClass(y),e.one("#"+t+"_8_31").removeClass(y),e.one("#"+t+"_0_30").removeClass(y),e.one("#"+t+"_1_31").removeClass(y)},_turnNextMonthOn:function(e){var t=1,n=e.get("id"),r=this._paneProperties[n].daysInMonth,i=this._paneProperties[n].cutoffCol,s,o;for(s=r-22;so&&(v=y);if(p<1||p>o)p=" ";b=c>=s&&c=r+7)u.addClass(h);else switch(o){case 0:a=t.one("#"+s+"_0_30"),i>=30?(a.set("text","30"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.addClass(y).addClass(m));break;case 1:a=t.one("#"+s+"_1_31"),i>=31?(a.set("text","31"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 6:a=t.one("#"+s+"_6_29"),i>=29?(a.set("text","29"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 7:a=t.one("#"+s+"_7_30"),i>=30?(a.set("text","30"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 8:a=t.one("#"+s+"_8_31"),i>=31?(a.set("text","31"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y))}}this._paneProperties[s].cutoffCol=r,this._paneProperties[s].daysInMonth= -i,this._paneProperties[s].paneDate=e,t.setStyle("visibility","visible")},_updateCalendarHeader:function(t){var n="",r=this.get("headerRenderer");return e.Lang.isString(r)?n=O.format(t,{format:r}):r instanceof Function&&(n=r.call(this,t)),n},_initCalendarHeader:function(e){return x(x(M.HEADER_TEMPLATE,{calheader:this._updateCalendarHeader(e),calendar_id:this._calendarId}),M.CALENDAR_STRINGS)},_initCalendarHTML:function(t){function o(){return i=this._initCalendarPane(O.addMonths(t,r),n.calendar_id+"_pane_"+r),r++,i}var n={},r=0,i,s;return n.header_template=this._initCalendarHeader(t),n.calendar_id=this._calendarId,n.body_template=x(x(M.CONTENT_TEMPLATE,n),M.CALENDAR_STRINGS),s=n.body_template.replace(/\{calendar_grid_template\}/g,e.bind(o,this)),this._paneNumber=r,s}},{CALENDAR_STRINGS:{calendar_grid_class:i,calendar_body_class:u,calendar_hd_class:a,calendar_hd_label_class:f,calendar_weekdayrow_class:l,calendar_weekday_class:c,calendar_row_class:v,calendar_day_class:m,calendar_dayanchor_class:b,calendar_pane_class:w,calendar_right_grid_class:o,calendar_left_grid_class:s,calendar_status_class:E},CONTENT_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              ',ONE_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              ',TWO_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              {calendar_grid_template}
              ',THREE_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              {calendar_grid_template}
              {calendar_grid_template}
              ',CALENDAR_GRID_TEMPLATE:'
              {weekday_row_template}{body_template}
              ',HEADER_TEMPLATE:'
              {calheader}
              ',WEEKDAY_ROW_TEMPLATE:'{weekday_row}',CALDAY_ROW_TEMPLATE:'{calday_row}',WEEKDAY_TEMPLATE:'{weekdayname}',CALDAY_TEMPLATE:'{day_content}',NAME:"calendarBase",ATTRS:{tabIndex:{value:1},date:{value:new Date,setter:function(e){var t=this._normalizeDate(e);return O.areEqual(t,this.get("date"))?this.get("date"):t}},showPrevMonth:{value:!1},showNextMonth:{value:!1},strings:{valueFn:function(){return e.Intl.get("calendar-base")}},headerRenderer:{value:"%B %Y"},enabledDatesRule:{value:null},disabledDatesRule:{value:null},selectedDates:{readOnly:!0,getter:function(){return this._getSelectedDatesList()}},customRenderer:{lazyAdd:!1,value:{},setter:function(e){this._rules=e.rules,this._filterFunction=e.filterFunction}}}})},"3.9.1",{requires:["widget","datatype-date","datatype-date-math","cssgrids"],lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js deleted file mode 100644 index 2c6bd97ffe7..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base",function(e){e.Intl.add("calendar-base","",{weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short_weekdays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],very_short_weekdays:["Su","Mo","Tu","We","Th","Fr","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js deleted file mode 100644 index 51748daf036..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_de",function(e){e.Intl.add("calendar-base","de",{weekdays:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],very_short_weekdays:["So","Mo","Di","Mi","Do","Fr","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js deleted file mode 100644 index 70e1e75e852..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_en",function(e){e.Intl.add("calendar-base","en",{weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short_weekdays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],very_short_weekdays:["Su","Mo","Tu","We","Th","Fr","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js deleted file mode 100644 index 94cadad4174..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_es-AR",function(e){e.Intl.add("calendar-base","es-AR",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js deleted file mode 100644 index 887a18d3085..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_es",function(e){e.Intl.add("calendar-base","es",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js deleted file mode 100644 index 86b50df17a3..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_fr",function(e){e.Intl.add("calendar-base","fr",{weekdays:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],short_weekdays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],very_short_weekdays:["Di","Lu","Ma","Me","Je","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js deleted file mode 100644 index b0e7dccf7c4..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_it",function(e){e.Intl.add("calendar-base","it",{weekdays:["Domenica","Luned\u00ec","Marted\u00ec","Mercoled\u00ec","Gioved\u00ec","Venerd\u00ec","Sabato"],short_weekdays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],very_short_weekdays:["Do","Lu","Ma","Me","Gi","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js deleted file mode 100644 index 9b6cf028c05..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_ja",function(e){e.Intl.add("calendar-base","ja",{weekdays:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],short_weekdays:["\u65e5\u66dc","\u6708\u66dc","\u706b\u66dc","\u6c34\u66dc","\u6728\u66dc","\u91d1\u66dc","\u571f\u66dc"],very_short_weekdays:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js deleted file mode 100644 index 8a3af25ff14..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_nb-NO",function(e){e.Intl.add("calendar-base","nb-NO",{weekdays:["S\u00f8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\u00f8rdag"],very_short_weekdays:["S\u00f8","Ma","Ti","On","To","Fr","L\u00f8"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js deleted file mode 100644 index 1796e64653b..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_nl",function(e){e.Intl.add("calendar-base","nl",{weekdays:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],short_weekdays:["zon","maan","dins","woens","don","vrij","zat"],very_short_weekdays:["zo","ma","di","woe","do","vr","za"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js deleted file mode 100644 index bbd295ca942..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_pt-BR",function(e){e.Intl.add("calendar-base","pt-BR",{weekdays:["Domingo","Segunda","Ter\u00e7a","Quarta","Quinta","Sexta","S\u00e1bado"],short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],very_short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js deleted file mode 100644 index 8dad70cdf79..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_ru",function(e){e.Intl.add("calendar-base","ru",{weekdays:["\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0412\u0442\u043e\u0440\u043d\u0438\u043a","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0435\u0440\u0433","\u041f\u044f\u0442\u043d\u0438\u0446\u0430","\u0421\u0443\u0431\u0431\u043e\u0442\u0430"],very_short_weekdays:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js deleted file mode 100644 index d7dd63a0766..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_zh-HANT-TW",function(e){e.Intl.add("calendar-base","zh-HANT-TW",{weekdays:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],short_weekdays:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],very_short_weekdays:["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/calendar-min.js b/lib/yuilib/3.9.1/build/calendar/calendar-min.js deleted file mode 100644 index 124eba36625..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/calendar-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("calendar",function(e,t){function b(){b.superclass.constructor.apply(this,arguments)}var n=e.ClassNameManager.getClassName,r="calendar",i=40,s=38,o=37,u=39,a=13,f=32,l=n(r,"day-selected"),c=n(r,"day-highlighted"),h=n(r,"day"),p=n(r,"prevmonth-day"),d=n(r,"nextmonth-day"),v=n(r,"grid"),m=e.DataType.Date,g=n(r,"pane"),y=e.UA.os;e.Calendar=e.extend(b,e.CalendarBase,{_keyEvents:[],_highlightedDateNode:null,_lastSelectedDate:null,initializer:function(){this.plug(e.Plugin.CalendarNavigator),this._keyEvents=[],this._highlightedDateNode=null,this._lastSelectedDate=null},_bindCalendarEvents:function(){var e=this.get("contentBox"),t=e.one("."+g);t.on("selectstart",this._preventSelectionStart),t.delegate("click",this._clickCalendar,"."+h+", ."+p+", ."+d,this),t.delegate("keydown",this._keydownCalendar,"."+v,this),t.delegate("focus",this._focusCalendarGrid,"."+v,this),t.delegate("focus",this._focusCalendarCell,"."+h,this),t.delegate("blur",this._blurCalendarGrid,"."+v+",."+h,this)},_preventSelectionStart:function(e){e.preventDefault()},_highlightDateNode:function(e){this._unhighlightCurrentDateNode();var t=this._dateToNode(e);t.focus(),t.addClass(c)},_unhighlightCurrentDateNode:function(){var e=this.get("contentBox").all("."+c);e&&e.removeClass(c)},_getGridNumber:function(e){var t=e.get("id").split("_").reverse();return parseInt(t[0],10)},_blurCalendarGrid:function(){this._unhighlightCurrentDateNode()},_focusCalendarCell:function(e){this._highlightedDateNode=e.target,e.stopPropagation()},_focusCalendarGrid:function(){this._unhighlightCurrentDateNode(),this._highlightedDateNode=null},_keydownCalendar:function(e){var t=this._getGridNumber(e.target),n=this._highlightedDateNode?this._nodeToDate(this._highlightedDateNode):null,r=e.keyCode,c=0,h="",p,d,v,g,y;switch(r){case i:c=7,h="s";break;case s:c=-7,h="n";break;case o:c=-1,h="w";break;case u:c=1,h="e";break;case f:case a:e.preventDefault();if(this._highlightedDateNode){p=this.get("selectionMode");if(p==="single"&&!this._highlightedDateNode.hasClass(l))this._clearSelection(!0),this._addDateToSelection(n);else if(p==="multiple"||p==="multiple-sticky")this._highlightedDateNode.hasClass(l)?this._removeDateFromSelection(n):this._addDateToSelection(n)}}if(r===i||r===s||r===o||r===u)n||(n=m.addMonths(this.get("date"),t),c=0),e.preventDefault(),d=m.addDays(n,c),v=this.get("date"),g=m.addMonths(this.get("date"),this._paneNumber-1),y=new Date(g),g.setDate(m.daysInMonth(g)),m.isInRange(d,v,g)?this._highlightDateNode(d):m.isGreater(v,d)?m.isGreaterOrEqual(this.get("minimumDate"),v)||(this.set("date",m.addMonths(v,-1)),this._highlightDateNode(d)):m.isGreater(d,g)&&(m.isGreaterOrEqual(y,this.get("maximumDate"))||(this.set("date",m.addMonths(v,1)),this._highlightDateNode(d)))},_clickCalendar:function(e){var t=e.currentTarget,n=t.hasClass(h)&&!t.hasClass(p)&&!t.hasClass(d),r=t.hasClass(l),i;switch(this.get("selectionMode")){case"single":n&&(r||(this._clearSelection(!0),this._addDateToSelection(this._nodeToDate(t))));break;case"multiple-sticky":n&&(r?this._removeDateFromSelection(this._nodeToDate(t)):this._addDateToSelection(this._nodeToDate(t)));break;case"multiple":n&&(!e.metaKey&&!e.ctrlKey&&!e.shiftKey?(this._clearSelection(!0),this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):(y==="macintosh"&&e.metaKey||y!=="macintosh"&&e.ctrlKey)&&!e.shiftKey?r?(this._removeDateFromSelection(this._nodeToDate(t)),this._lastSelectedDate=null):(this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):(y==="macintosh"&&e.metaKey||y!=="macintosh"&&e.ctrlKey)&&e.shiftKey?this._lastSelectedDate?(i=this._nodeToDate(t),this._addDateRangeToSelection(i,this._lastSelectedDate),this._lastSelectedDate=i):(this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):e.shiftKey&&(this._lastSelectedDate?(i=this._nodeToDate(t),this._clearSelection(!0),this._addDateRangeToSelection(i,this._lastSelectedDate),this._lastSelectedDate=i):(this._clearSelection(!0),this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate))))}n?this.fire("dateClick",{cell:t,date:this._nodeToDate(t)}):t.hasClass(p)?this.fire("prevMonthClick"):t.hasClass(d)&&this.fire("nextMonthClick")},subtractMonth:function(e){return this.set("date",m.addMonths(this.get("date"),-1)),e&&e.halt(),this},subtractYear:function(e){return this.set("date",m.addYears(this.get("date"),-1)),e&&e.halt(),this},addMonth:function(e){return this.set("date",m.addMonths(this.get("date"),1)),e&&e.halt(),this},addYear:function(e){return this.set("date",m.addYears(this.get("date"),1)),e&&e.halt(),this}},{NAME:"calendar",ATTRS:{selectionMode:{value:"single"},date:{value:new Date,lazyAdd:!1,setter:function(e){var t=this._normalizeDate(e),n=m.addMonths(t,this._paneNumber-1),r=this.get("minimumDate"),i=this.get("maximumDate"),s;if((!r||m.isGreaterOrEqual(t,r))&&(!i||m.isGreaterOrEqual(i,n)))return t;if(r&&m.isGreater(r,t))return r;if(i&&m.isGreater(n,i))return s=m.addMonths(i,-1*(this._paneNumber-1)),s}},minimumDate:{value:null,setter:function(e){if(e){var t=this.get("date"),n=this._normalizeDate(e);return t&&!m.isGreaterOrEqual(t,n)&&this.set("date",n),n}return this._normalizeDate(e)}},maximumDate:{value:null,setter:function(e){if(e){var t=this.get("date"),n=this._normalizeDate(e);return t&&!m.isGreaterOrEqual(e,m.addMonths(t,this._paneNumber-1))&&this.set("date",m.addMonths(n,-1*(this._paneNumber-1))),n}return e}}}})},"3.9.1",{requires:["calendar-base","calendarnavigator"],lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar.js deleted file mode 100644 index 354f46a79e4..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar",function(e){e.Intl.add("calendar","",{weekdays:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],short_weekdays:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],very_short_weekdays:["Mo","Tu","We","Th","Fr","Sa","Su"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js deleted file mode 100644 index 1a02820faea..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_de",function(e){e.Intl.add("calendar","de",{weekdays:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],very_short_weekdays:["So","Mo","Di","Mi","Do","Fr","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js deleted file mode 100644 index ae987f0f3de..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_en",function(e){e.Intl.add("calendar","en",{weekdays:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],short_weekdays:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],very_short_weekdays:["Mo","Tu","We","Th","Fr","Sa","Su"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js deleted file mode 100644 index 83569d64c57..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_es-AR",function(e){e.Intl.add("calendar","es-AR",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js deleted file mode 100644 index 09ac5813197..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_es",function(e){e.Intl.add("calendar","es",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js deleted file mode 100644 index 3db662195d0..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_fr",function(e){e.Intl.add("calendar","fr",{weekdays:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],short_weekdays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],very_short_weekdays:["Di","Lu","Ma","Me","Je","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js deleted file mode 100644 index 9a54ca2573d..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_it",function(e){e.Intl.add("calendar","it",{weekdays:["Domenica","Luned\u00ec","Marted\u00ec","Mercoled\u00ec","Gioved\u00ec","Venerd\u00ec","Sabato"],short_weekdays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],very_short_weekdays:["Do","Lu","Ma","Me","Gi","Ve","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js deleted file mode 100644 index dd7e93c10e8..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_ja",function(e){e.Intl.add("calendar","ja",{weekdays:["\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5","\u65e5\u66dc\u65e5"],short_weekdays:["\u6708\u66dc","\u706b\u66dc","\u6c34\u66dc","\u6728\u66dc","\u91d1\u66dc","\u571f\u66dc","\u65e5\u66dc"],very_short_weekdays:["\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f","\u65e5"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js deleted file mode 100644 index 36875bb2a1a..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_nb-NO",function(e){e.Intl.add("calendar","nb-NO",{weekdays:["S\u00f8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\u00f8rdag"],very_short_weekdays:["S\u00f8","Ma","Ti","On","To","Fr","L\u00f8"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js deleted file mode 100644 index 2b9677b4ef6..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_nl",function(e){e.Intl.add("calendar","nl",{weekdays:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],short_weekdays:["zon","maan","dins","woens","don","vrij","zat"],very_short_weekdays:["zo","ma","di","woe","do","vr","za"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js deleted file mode 100644 index 23d20d73c4b..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_pt-BR",function(e){e.Intl.add("calendar","pt-BR",{weekdays:["Domingo","Segunda","Ter\u00e7a","Quarta","Quinta","Sexta","S\u00e1bado"],short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],very_short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js deleted file mode 100644 index d15085e8e8c..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_ru",function(e){e.Intl.add("calendar","ru",{weekdays:["\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0412\u0442\u043e\u0440\u043d\u0438\u043a","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0435\u0440\u0433","\u041f\u044f\u0442\u043d\u0438\u0446\u0430","\u0421\u0443\u0431\u0431\u043e\u0442\u0430"],very_short_weekdays:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js deleted file mode 100644 index 603050dfcfc..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_zh-HANT-TW",function(e){e.Intl.add("calendar","zh-HANT-TW",{weekdays:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],short_weekdays:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],very_short_weekdays:["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js b/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js deleted file mode 100644 index c2386ecc52f..00000000000 --- a/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("calendarnavigator",function(e,t){function v(){v.superclass.constructor.apply(this,arguments)}var n="contentBox",r="host",i=e.ClassNameManager.getClassName,s=e.Lang.sub,o=e.Node,u=o.create,a="calendar",f="calendarnav",l=i(a,"header"),c=i(f,"prevmonth"),h=i(f,"nextmonth"),p=i(f,"month-disabled"),d=e.DataType.Date;v.NS="navigator",v.NAME="pluginCalendarNavigator",v.ATTRS={shiftByMonths:{value:1}},v.CALENDARNAV_STRINGS={prev_month_class:c,next_month_class:h},v.PREV_MONTH_CONTROL_TEMPLATE='<',v.NEXT_MONTH_CONTROL_TEMPLATE='>',e.extend(v,e.Plugin.Base,{_eventAttachments:{},_controls:{},initializer:function(){this._controls={},this._eventAttachments={},this.afterHostMethod("renderUI",this._initNavigationControls)},destructor:function(){},_focusNavigation:function(e){e.currentTarget.focus()},_subtractMonths:function(e){if(e.type==="click"||e.type==="keydown"&&(e.keyCode===13||e.keyCode===32)){var t=this.get(r),n=t.get("date");t.set("date",d.addMonths(n,-1*this.get("shiftByMonths"))),e.preventDefault()}},_addMonths:function(e){if(e.type==="click"||e.type==="keydown"&&(e.keyCode===13||e.keyCode===32)){var t=this.get(r),n=t.get("date");t.set("date",d.addMonths(n,this.get("shiftByMonths"))),e.preventDefault()}},_updateControlState:function(){var e=this.get(r);d.areEqual(e.get("minimumDate"),e.get("date"))?(this._eventAttachments.prevMonth&&(this._eventAttachments.prevMonth.detach(),this._eventAttachments.prevMonth=!1),this._controls.prevMonth.hasClass(p)||this._controls.prevMonth.addClass(p).setAttribute("aria-disabled","true")):(this._eventAttachments.prevMonth||(this._eventAttachments.prevMonth=this._controls.prevMonth.on(["click","keydown"],this._subtractMonths,this)),this._controls.prevMonth.hasClass(p)&&this._controls.prevMonth.removeClass(p).setAttribute("aria-disabled","false")),d.areEqual(e.get("maximumDate"),d.addMonths(e.get("date"),e._paneNumber-1))?(this._eventAttachments.nextMonth&&(this._eventAttachments.nextMonth.detach(),this._eventAttachments.nextMonth=!1),this._controls.nextMonth.hasClass(p)||this._controls.nextMonth.addClass(p).setAttribute("aria-disabled","true")):(this._eventAttachments.nextMonth||(this._eventAttachments.nextMonth=this._controls.nextMonth.on(["click","keydown"],this._addMonths,this)),this._controls.nextMonth.hasClass(p)&&this._controls.nextMonth.removeClass(p).setAttribute("aria-disabled","false")),this._controls.prevMonth.on(["click","keydown"],this._focusNavigation,this),this._controls.nextMonth.on(["click","keydown"],this._focusNavigation,this)},_renderPrevControls:function(){var e=u(s(v.PREV_MONTH_CONTROL_TEMPLATE,v.CALENDARNAV_STRINGS));return e.on("selectstart",this.get(r)._preventSelectionStart),e},_renderNextControls:function(){var e=u(s(v.NEXT_MONTH_CONTROL_TEMPLATE,v.CALENDARNAV_STRINGS));return e.on("selectstart",this.get(r)._preventSelectionStart),e},_initNavigationControls:function(){var e=this.get(r),t=e.get(n).one("."+l);v.CALENDARNAV_STRINGS.control_tabindex=e.get("tabIndex"),v.CALENDARNAV_STRINGS.prev_month_arialabel="Go to previous month",v.CALENDARNAV_STRINGS.next_month_arialabel="Go to next month",this._controls.prevMonth=this._renderPrevControls(),this._controls.nextMonth=this._renderNextControls(),this._updateControlState(),e.after("dateChange",this._updateControlState,this),e.after("minimumDateChange",this._updateControlState,this),e.after("maximumDateChange",this._updateControlState,this),t.prepend(this._controls.prevMonth),t.append(this._controls.nextMonth)}}),e.namespace("Plugin").CalendarNavigator=v},"3.9.1",{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js b/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js deleted file mode 100644 index 19f4f1fb44a..00000000000 --- a/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js +++ /dev/null @@ -1,9 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("charts-base",function(e,t){function f(){}function l(t){return t.type!=="pie"?new e.CartesianChart(t):new e.PieChart(t)}var n=e.config,r=n.win,i=n.doc,s=e.Lang,o=s.isString,u=e.ClassNameManager.getClassName,a=u("seriesmarker");e.Gridlines=e.Base.create("gridlines",e.Base,[e.Renderer],{_path:null,remove:function(){var e=this._path;e&&e.destroy()},draw:function(){this.get("axis")&&this.get("graph")&&this._drawGridlines()},_drawGridlines:function(){var t,n=this.get("axis"),r=n.get("position"),i,s=0,o,u=this.get("direction"),a=this.get("graph"),f=a.get("width"),l=a.get("height"),c=this.get("styles").line,h=c.color,p=c.weight,d=c.alpha,v=this.get("count"),m,g;if(isFinite(f)&&isFinite(l)&&f>0&&l>0){v&&e.Lang.isNumber(v)?i=this._getPoints(v,f,l):r!=="none"&&n&&n.get("tickPoints")?i=n.get("tickPoints"):i=this._getPoints(n.get("styles").majorUnit.count,f,l),o=i.length,t=a.get("gridlines"),t.set("width",f),t.set("height",l),t.set("stroke",{weight:p,color:h,opacity:d}),u==="vertical"?(g=this._verticalLine,m=l):(g=this._horizontalLine,m=f);for(s=0;se&&(n=t[e]),n},getSeriesByKey:function(e){var t=this._seriesDictionary,n;return t&&t.hasOwnProperty(e)&&(n=t[e]),n},addDispatcher:function(e){this._dispatchers||(this._dispatchers=[]),this._dispatchers.push(e)},_seriesCollection:null,_seriesDictionary:null,_parseSeriesCollection:function(t){if(!t)return;var n=t.length,r=0,i,s;this._seriesCollection=[],this._seriesDictionary={},this.seriesTypes=[];for(;r-1&&this._dispatchers.splice(i,1),this._dispatchers.length<1&&(r=this.get("graphic"),r.get("autoDraw")||r._redraw(),this.fire("chartRendered"))},_getDefaultStyles:function(){var e={background:{shape:"rect",fill:{color:"#faf9f2"},border:{color:"#dad8c9",weight:1}}};return e},destructor:function(){this._graphic&&(this._graphic.destroy(),this._graphic=null),this._background&&(this._background.get("graphic").destroy(),this._background=null),this._gridlines&&(this._gridlines.get("graphic").destroy(),this._gridlines=null)}},{ATTRS:{x:{setter:function(e){return this.get("boundingBox").setStyle("left",e+"px"),e}},y:{setter:function(e){return this.get("boundingBox").setStyle("top",e+"px"),e}},chart:{getter:function(){var e=this._state.chart||this;return e}},seriesCollection:{getter:function(){return this._seriesCollection},setter:function(e){return this._parseSeriesCollection(e),this._seriesCollection}},showBackground:{value:!0},seriesDictionary:{readOnly:!0,getter:function(){return this._seriesDictionary}},horizontalGridlines:{value:null,setter:function(t){var n,r,i=this.get("horizontalGridlines");i&&i instanceof e.Gridlines&&i.remove();if(t instanceof e.Gridlines)return i=t,t.set("graph",this),t;if(t){n={direction:"horizonal",graph:this};for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);return i=new e.Gridlines(n),i}}},verticalGridlines:{value:null,setter:function(t){var n,r,i=this.get("verticalGridlines");i&&i instanceof e.Gridlines&&i.remove();if(t instanceof e.Gridlines)return i=t,t.set("graph",this),t;if(t){n={direction:"vertical",graph:this};for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);return i=new e.Gridlines(n),i}}},background:{getter:function(){return this._background||(this._backgroundGraphic=new e.Graphic({render:this.get("contentBox")}),this._backgroundGraphic.get("node").style.zIndex=0,this._background=this._backgroundGraphic.addShape({type:"rect"})),this._background}},gridlines:{readOnly:!0,getter:function(){return this._gridlines||(this._gridlinesGraphic=new e.Graphic({render:this.get("contentBox")}),this._gridlinesGraphic.get("node").style.zIndex=1,this._gridlines=this._gridlinesGraphic.addShape({type:"path"})),this._gridlines}},graphic:{readOnly:!0,getter:function(){return this._graphic||(this._graphic=new e.Graphic({render:this.get("contentBox")}),this._graphic.get("node").style.zIndex=2,this._graphic.set("autoDraw",!1)),this._graphic}},groupMarkers:{value:!1}}}),f.ATTRS={dataProvider:{lazyAdd:!1,valueFn:function(){var e=[];return this._seriesKeysExplicitlySet||(this._seriesKeys=this._buildSeriesKeys(e)),e},setter:function(e){var t=this._setDataValues(e);return this._seriesKeysExplicitlySet||(this._seriesKeys=this._buildSeriesKeys(t)),t}},seriesKeys:{getter:function(){return this._seriesKeys},setter:function(e){return this._seriesKeysExplicitlySet=!0,this._seriesKeys=e,e}},ariaLabel:{value:"Chart Application",setter:function(e){var t=this.get("contentBox");return t&&t.setAttribute("aria-label",e),e}},ariaDescription:{value:"Use the up and down keys to navigate between series. Use the left and right keys to navigate through items in a series.",setter:function(e){return this._description&&(this._description.setContent(""),this._description.appendChild(i.createTextNode(e))),e}},tooltip:{valueFn:"_getTooltip",setter:function(e){return this._updateTooltip(e)}},categoryKey:{value:"category"},categoryType:{value:"category"},interactionType:{value:"marker"},axesCollection:{},graph:{valueFn:"_getGraph"},groupMarkers:{value:!1}},f.prototype={_groupMarkersChangeHandler:function(e){var t=this.get("graph"),n=e.newVal;t&&t.set("groupMarkers",n)},_itemRendered:function(t){this._itemRenderQueue=this._itemRenderQueue.splice(1+e.Array.indexOf(this._itemRenderQueue,t.currentTarget),1),this._itemRenderQueue.length<1&&this._redraw()},_getGraph:function(){var t=new e.Graph({chart:this,groupMarkers:this.get("groupMarkers")});return t.after("chartRendered",e.bind(function(){this.fire("chartRendered")},this)),t},getSeries:function(e){var t=null,n=this.get("graph");return n&&(s.isNumber(e)?t=n.getSeriesByIndex(e):t=n.getSeriesByKey(e)),t},getAxisByKey:function(e){var t,n=this.get("axes");return n&&n.hasOwnProperty(e)&&(t=n[e]),t},getCategoryAxis:function(){var e,t=this.get("categoryKey"),n=this.get("axes");return n.hasOwnProperty(t)&&(e=n[t]),e},_direction:"horizontal",_dataProvider:null,_setDataValues:function(e){if(s.isArray(e[0])){var t,n=[],r=e[0],i=0,o=r.length,u,a=e.length;for(;i
              "),n=e.UA.ie,r=n&&n<8?"rect(1px 1px 1px 1px)":"rect(1px, 1px, 1px, 1px)";return t.setStyle("position","absolute"),t.setStyle("height","1px" -),t.setStyle("width","1px"),t.setStyle("overflow","hidden"),t.setStyle("clip",r),t},syncUI:function(){this._redraw()},bindUI:function(){this.after("tooltipChange",e.bind(this._tooltipChangeHandler,this)),this.after("widthChange",this._sizeChanged),this.after("heightChange",this._sizeChanged),this.after("groupMarkersChange",this._groupMarkersChangeHandler);var t=this.get("tooltip"),n="mouseout",o="mouseover",u=this.get("contentBox"),f=this.get("interactionType"),l=0,c,h="."+a,p=r&&"ontouchstart"in r&&!(e.UA.chrome&&e.UA.chrome<6);e.on("keydown",e.bind(function(e){var t=e.keyCode,n=parseFloat(t),r;n>36&&n<41&&(e.halt(),r=this._getAriaMessage(n),this._liveRegion.setContent(""),this._liveRegion.appendChild(i.createTextNode(r)))},this),this.get("contentBox")),f==="marker"?(n=t.hideEvent,o=t.showEvent,p?(e.delegate("touchend",e.bind(this._markerEventDispatcher,this),u,h),e.on("touchend",e.bind(function(e){u.contains(e.target)&&e.halt(!0),this._activeMarker&&(this._activeMarker=null,this.hideTooltip(e))},this))):(e.delegate("mouseenter",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousedown",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseup",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseleave",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("click",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousemove",e.bind(this._positionTooltip,this),u,h))):f==="planar"&&(p?this._overlay.on("touchend",e.bind(this._planarEventDispatcher,this)):(this._overlay.on("mousemove",e.bind(this._planarEventDispatcher,this)),this.on("mouseout",this.hideTooltip)));if(t){this.on("markerEvent:touchend",e.bind(function(e){var n=e.series.get("markers")[e.index];this._activeMarker&&n===this._activeMarker?(this._activeMarker=null,this.hideTooltip(e)):(this._activeMarker=n,t.markerEventHandler.apply(this,[e]))},this));if(n&&o&&n===o)this.on(f+"Event:"+n,this.toggleTooltip);else{o&&this.on(f+"Event:"+o,t[f+"EventHandler"]);if(n){if(s.isArray(n)){c=n.length;for(;l=T[h].start){p=h;break}N=l.length;for(h=0;h-1&&c.updateMarkerState("mouseout",d),C&&C[p]>-1&&(w&&!isNaN(p)&&p>-1&&c.updateMarkerState("mouseover",p),v=this.getSeriesItems(c,p),g.push(v.category),y.push(v.value),m.push(c));this._selectedIndex=p,p>-1?this.fire("planarEvent:mouseover",{categoryItem:g,valueItem:y,x:u,y:a,pageX:s,pageY:o,items:m,index:p,originEvent:e}):this.fire("planarEvent:mouseout")}},_type:"combo",_itemRenderQueue:null,_addToAxesRenderQueue:function(t){this._itemRenderQueue||(this._itemRenderQueue=[]),e.Array.indexOf(this._itemRenderQueue,t)<0&&this._itemRenderQueue.push(t)},_addToAxesCollection:function(e,t){var n=this.get(e+"AxesCollection");n||(n=[],this.set(e+"AxesCollection",n)),n.push(t)},_getDefaultSeriesCollection:function(){var e,t=this.get("dataProvider");return t&&(e=this._parseSeriesCollection()),e},_parseSeriesCollection:function(t){var n=this.get("direction"),r=[],i,s,o=[],u,a=this.get("seriesKeys").concat(),f,l,c,h=this.get("type"),p,d,v,m,g=[],y=this.get("categoryKey"),b=this.get("showMarkers"),w=this.get("showAreaFill"),E=this.get("showLines");t=t?t.concat():[],n==="vertical"?(i="yAxis",d="yKey",s="xAxis",v="xKey"):(i="xAxis",d="xKey",s="yAxis",v="yKey"),c=t.length;while(t&&t.length>0)u=t.shift(),p=this._getBaseAttribute(u,v),p?(l=e.Array.indexOf(a,p),l>-1?(a.splice(l,1),o.push(p),r.push(u)):g.push(u)):g.push(u);while(g.length>0)u=g.shift(),a.length>0?(p=a.shift(),this._setBaseAttribute(u,v,p),o.push(p),r.push(u)):u instanceof e.CartesianSeries&&u.destroy(!0);a.length>0&&(o=o.concat(a)),c=o.length;for(f=0;f0&&f.set("overlapGraph",!1),r[u]=f)}return r},_addAxes:function(){var t=this.get("axes"),n,r,i,s=this.get("width"),o=this.get("height"),u=e.Node.one(this._parentNode);this._axesCollection||(this._axesCollection=[]);for(n in t)t.hasOwnProperty(n)&&(r=t[n],r instanceof e.Axis&&(s||(this.set("width",u.get("offsetWidth")),s=this.get("width")),o||(this.set("height",u.get("offsetHeight")),o=this.get("height")),this._addToAxesRenderQueue(r),i=r.get("position"),this.get(i+"AxesCollection")?this.get(i+"AxesCollection").push(r):this.set(i+"AxesCollection",[r]),this._axesCollection.push(r),r.get("keys").hasOwnProperty(this.get("categoryKey"))&&this.set("categoryAxis",r),r.render(this.get("contentBox"))))},_addSeries:function(){var e=this.get("graph");e.render(this.get("contentBox"))},_addGridlines:function(){var t=this.get("graph"),n=this.get("horizontalGridlines"),r=this.get("verticalGridlines"),i=this.get("direction"),s=this.get("leftAxesCollection"),o=this.get("rightAxesCollection"),u=this.get("bottomAxesCollection"),a=this.get("topAxesCollection"),f,l=this.get("categoryAxis"),c,h;this._axesCollection&&(f=this._axesCollection.concat(),f.splice(e.Array.indexOf(f,l),1)),n&&(s&&s[0]?c=s[0]:o&&o[0]?c=o[0]:c=i==="horizontal"?l:f[0],!this._getBaseAttribute(n,"axis")&&c&&this._setBaseAttribute(n,"axis",c),this._getBaseAttribute(n,"axis")&&t.set("horizontalGridlines",n)),r&&(u&&u[0]?h=u[0]:a&&a[0]?h=a[0]:h=i==="vertical"?l:f[0],!this._getBaseAttribute(r,"axis")&&h&&this._setBaseAttribute(r,"axis",h),this._getBaseAttribute(r,"axis")&&t.set("verticalGridlines",r))},_getDefaultAxes:function(){var e;return this.get("dataProvider")&&(e=this._parseAxes()),e},_parseAxes:function(t){var n=this.get("categoryKey"),r,i,o,u={},a=[],f=this.get("categoryAxisName")||this.get("categoryKey"),l=this.get("valueAxisName"),c=this.get("seriesKeys").concat(),h,p,d,v,m,g=this.get("direction"),y,b,w=[],E=this.get("stacked")?"stacked":"numeric";g==="vertical"?(y="bottom",b="left"):(y="left",b="bottom");if(t)for(h in t)if(t.hasOwnProperty(h)){r=t[h],o=this._getBaseAttribute(r,"keys"),i=this._getBaseAttribute(r,"type");if(i==="time"||i==="category")f=h,this.set("categoryAxisName",h),s.isArray(o)&&o.length>0&&(n=o[0],this.set("categoryKey",n)),u[h]=r;else if(h===f)u[h]=r;else{u[h]=r;if(h!==l&&o&&s.isArray(o)){v=o.length;for(d=0;d-1&&c.splice(m,1),p=a.length;for(h=0;h-1&&c.splice(m,1);return u.hasOwnProperty(f)||(u[f]={}),this._getBaseAttribute(u[f],"keys")||this._setBaseAttribute(u[f],"keys",[n]),this._getBaseAttribute(u[f],"position")||this._setBaseAttribute(u[f],"position",b),this._getBaseAttribute(u[f],"type")||this._setBaseAttribute(u[f],"type",this.get("categoryType")),!u.hasOwnProperty(l)&&c&&c.length>0&&(u[l]={keys:c},w.push(u[l])),a.length>0&&(c.length>0?c=a.concat(c):c=a),u.hasOwnProperty(l)&&(this._getBaseAttribute(u[l],"position")||this._setBaseAttribute(u[l],"position",this._getDefaultAxisPosition(u[l],w,y)),this._setBaseAttribute(u[l],"type",E),this._setBaseAttribute(u[l],"keys",c)),this._seriesKeysExplicitlySet||(this._seriesKeys=c),u},_getDefaultAxisPosition:function(t,n,r){var i=this.get("direction"),s=e.Array.indexOf(n,t);return n[s-1]&&n[s-1].position&&(i==="horizontal"?n[s-1].position==="left"?r="right":n[s-1].position==="right"&&(r="left"):n[s-1].position==="bottom"?r="top":r="bottom"),r},getSeriesItems:function(e,t){var n=e.get("xAxis"),r=e.get("yAxis"),i=e.get("xKey"),s=e.get("yKey"),o,u;return this.get("direction")==="vertical"?(o={axis:r,key:s,value:r.getKeyValueAt(s,t)},u={axis:n,key:i,value:n.getKeyValueAt(i,t)}):(u={axis:r,key:s,value:r.getKeyValueAt(s,t)},o={axis:n,key:i,value:n.getKeyValueAt(i,t)}),o.displayName=e.get("categoryDisplayName"),u.displayName=e.get("valueDisplayName"),o.value=o.axis.getKeyValueAt(o.key,t),u.value=u.axis.getKeyValueAt(u.key,t),{category:o,value:u}},_sizeChanged:function(){if(this._axesCollection){var e=this._axesCollection,t=0,n=e.length;for(;t-1;--l)C.unshift(n),n+=o[l].get("width")}if(u){N=[],c=u.length,l=0;for(l=c-1;l>-1;--l)r+=u[l].get("width"),N.unshift(e-r)}if(a){k=[],c=a.length;for(l=c-1;l>-1;--l)k.unshift(i),i+=a[l].get("height")}if(f){L=[],c=f.length;for(l=c-1;l>-1;--l)s+=f[l].get("height"),L.unshift(t-s)}b=e-(n+r),w=t-(s+i),A.left=n,A.top=i,A.bottom=t-s,A.right=e-r;if(!x){v=this._getTopOverflow(o,u),m=this._getBottomOverflow(o,u),g=this._getLeftOverflow(f,a),y=this._getRightOverflow(f,a),T=v-i;if(T>0){A.top=v;if(k){l=0,c=k.length;for(;l0){A.bottom=t-m;if(L){l=0,c=L.length;for(;l0){A.left=g;if(C){l=0,c=C.length;for(;l0){A.right=e-y;if(N){l=0,c=N.length;for(;l1?(e===38?o=o<1?f-1:o-1:e===40&&(o=o>=f-1?0:o+1),this._itemIndex=-1):o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."):(o>-1?(t="",n=this.getSeries(parseInt(o,10))):(o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."),l=n._dataLength?n._dataLength:0,e===37?u=u>0?u-1:l-1:e===39&&(u=u>=l-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(n,u),i=r.category,s=r.value,i&&s&&i.value&&s.value?(t+=i.displayName+": "+i.axis.formatLabel.apply(this,[i.value,i.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", "):t+="No data available.",t+=u+1+" of "+l+". "),t}},{ATTRS:{allowContentOverflow:{value:!1},axesStyles:{getter:function(){var t=this.get("axes"),n,r=this._axesStyles;if(t)for(n in t)t.hasOwnProperty(n)&&t[n]instanceof e.Axis&&(r||(r={}),r[n]=t[n].get("styles"));return r},setter:function(e){var t=this.get("axes"),n;for(n in e)e.hasOwnProperty(n)&&t.hasOwnProperty(n)&&this._setBaseAttribute(t[n],"styles",e[n])}},seriesStyles:{getter:function(){var e=this._seriesStyles,t=this.get("graph"),n,r;if(t){n=t.get("seriesDictionary");if(n){e={};for(r in n)n.hasOwnProperty(r)&&(e[r]=n[r].get("styles"))}}return e},setter:function(e){var t,n,r;if(s.isArray(e)){r=this.get("seriesCollection"),t=0,n=e.length;for(;t0?u-1:a-1:e===39&&(u=u>=a-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(i,u),n=r.category,s=r.value,f=i.getTotalValues(),l=Math.round(s.value/f*1e4)/100,n&&s?(t+=n.displayName+": "+n.axis.formatLabel.apply(this,[n.value,n.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", ",t+="Percent of total "+s.displayName+": "+l+"%,"):t+="No data available,",t+=u+1+" of "+a+". ",t}},{ATTRS:{ariaDescription:{value:"Use the left and right keys to navigate through items.",setter:function(e){return this._description&&(this._description.setContent(""),this._description.appendChild(i.createTextNode(e))),e}},axes:{getter:function(){return this._axes},setter:function(e){this._parseAxes(e)}},seriesCollection:{lazyAdd:!1,getter:function(){return this._getSeriesCollection()},setter:function(e){return this._setSeriesCollection(e)}},type:{value:"pie"}}}),e.Chart=l},"3.9.1",{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie" -,"series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts-debug.js b/lib/yuilib/3.9.1/build/charts/charts-debug.js deleted file mode 100644 index b8287a48e57..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts-debug.js +++ /dev/null @@ -1,25 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('charts', function (Y, NAME) { - -/** - * The Chart class is the basic application used to create a chart. - * - * @module charts - * @class Chart - * @constructor - */ -function Chart(cfg) -{ - if(cfg.type != "pie") - { - return new Y.CartesianChart(cfg); - } - else - { - return new Y.PieChart(cfg); - } -} -Y.Chart = Chart; - - -}, '3.9.1', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts-min.js b/lib/yuilib/3.9.1/build/charts/charts-min.js deleted file mode 100644 index 955e5e09ecd..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("charts",function(e,t){function n(t){return t.type!="pie"?new e.CartesianChart(t):new e.PieChart(t)}e.Chart=n},"3.9.1",{requires:["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts.js b/lib/yuilib/3.9.1/build/charts/charts.js deleted file mode 100644 index b8287a48e57..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts.js +++ /dev/null @@ -1,25 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('charts', function (Y, NAME) { - -/** - * The Chart class is the basic application used to create a chart. - * - * @module charts - * @class Chart - * @constructor - */ -function Chart(cfg) -{ - if(cfg.type != "pie") - { - return new Y.CartesianChart(cfg); - } - else - { - return new Y.PieChart(cfg); - } -} -Y.Chart = Chart; - - -}, '3.9.1', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css b/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css b/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/color-base/color-base-min.js b/lib/yuilib/3.9.1/build/color-base/color-base-min.js deleted file mode 100644 index 6f458ae8fe6..00000000000 --- a/lib/yuilib/3.9.1/build/color-base/color-base-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n],i=e.Color[r](t);return i.toLowerCase()},toHex:function(t){var n=e.Color._convertTo(t,"hex");return n.toLowerCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css b/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css b/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css deleted file mode 100644 index eb988f35b21..00000000000 --- a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css +++ /dev/null @@ -1,28 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories, -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { - text-align: left; - padding: 5px 0; - border: 1px inset; - margin: 0 2px; -} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories { - background: #fff; - border-bottom: 2px ridge; -} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { - background: #fff; - margin-bottom: 2px; - - border-top: 0 none; - border-bottom-right-radius: 10px; - border-bottom-left-radius: 10px; - -moz-border-radius-bottomright: 10px; - -moz-border-radius-bottomleft: 10px; - -webkit-border-bottom-right-radius: 10px; - -webkit-border-bottom-left-radius: 10px; -} -.yui3-skin-sam .yui3-console-filter-label { - white-space: nowrap; - margin-left: 1ex; -} diff --git a/lib/yuilib/3.9.1/build/console/assets/console-core.css b/lib/yuilib/3.9.1/build/console/assets/console-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/console-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css b/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css b/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css deleted file mode 100644 index eacf2cbe562..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px;}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge;}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex;} diff --git a/lib/yuilib/3.9.1/build/console/lang/console.js b/lib/yuilib/3.9.1/build/console/lang/console.js deleted file mode 100644 index edf867084d3..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console",function(e){e.Intl.add("console","",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_en.js b/lib/yuilib/3.9.1/build/console/lang/console_en.js deleted file mode 100644 index 6ce443719d0..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_en",function(e){e.Intl.add("console","en",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_es.js b/lib/yuilib/3.9.1/build/console/lang/console_es.js deleted file mode 100644 index 76ddf3ace8c..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_es",function(e){e.Intl.add("console","es",{title:"Consola de informaci\u00f3n",pause:"Pausa",clear:"Borrar",collapse:"Colapsar",expand:"Expandir"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_ja.js b/lib/yuilib/3.9.1/build/console/lang/console_ja.js deleted file mode 100644 index 0bd364cca73..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_ja",function(e){e.Intl.add("console","ja",{title:"\u30ed\u30b0\u30b3\u30f3\u30bd\u30fc\u30eb",pause:"\u4e00\u6642\u505c\u6b62",clear:"\u30af\u30ea\u30a2",collapse:"\u9589\u3058\u308b",expand:"\u958b\u304f"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css b/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css deleted file mode 100644 index 88e4403ab6f..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssbase h1{font-size:138.5%}.yui3-cssbase h2{font-size:123.1%}.yui3-cssbase h3{font-size:108%}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3{margin:1em 0}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong{font-weight:bold}.yui3-cssbase abbr,.yui3-cssbase acronym{border-bottom:1px dotted #000;cursor:help}.yui3-cssbase em{font-style:italic}.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl{margin:1em}.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl{margin-left:2em}.yui3-cssbase ol{list-style:decimal outside}.yui3-cssbase ul{list-style:disc outside}.yui3-cssbase dl dd{margin-left:1em}.yui3-cssbase th,.yui3-cssbase td{border:1px solid #000;padding:.5em}.yui3-cssbase th{font-weight:bold;text-align:center}.yui3-cssbase caption{margin-bottom:.5em;text-align:center}.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre{margin-bottom:1em}.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssbase-context/base-context.css b/lib/yuilib/3.9.1/build/cssbase-context/base-context.css deleted file mode 100644 index 0f08118e5d3..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase-context/base-context.css +++ /dev/null @@ -1,76 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* base.css, part of YUI's CSS Foundation */ -.yui3-cssbase h1 { - /*18px via YUI Fonts CSS foundation*/ - font-size:138.5%; -} -.yui3-cssbase h2 { - /*16px via YUI Fonts CSS foundation*/ - font-size:123.1%; -} -.yui3-cssbase h3 { - /*14px via YUI Fonts CSS foundation*/ - font-size:108%; -} -.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3 { - /* top & bottom margin based on font size */ - margin:1em 0; -} -.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong { - /*bringing boldness back to headers and the strong element*/ - font-weight:bold; -} -.yui3-cssbase abbr,.yui3-cssbase acronym { - /*indicating to users that more info is available */ - border-bottom:1px dotted #000; - cursor:help; -} -.yui3-cssbase em { - /*bringing italics back to the em element*/ - font-style:italic; -} -.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl { - /*giving blockquotes and lists room to breath*/ - margin:1em; -} -.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl { - /*bringing lists on to the page with breathing room */ - margin-left:2em; -} -.yui3-cssbase ol { - /*giving OL's LIs generated numbers*/ - list-style: decimal outside; -} -.yui3-cssbase ul { - /*giving UL's LIs generated disc markers*/ - list-style: disc outside; -} -.yui3-cssbase dl dd { - /*providing spacing for definition terms*/ - margin-left:1em; -} -.yui3-cssbase th,.yui3-cssbase td { - /*borders and padding to make the table readable*/ - border:1px solid #000; - padding:.5em; -} -.yui3-cssbase th { - /*distinguishing table headers from data cells*/ - font-weight:bold; - text-align:center; -} -.yui3-cssbase caption { - /*coordinated margin to match cell's padding*/ - margin-bottom:.5em; - /*centered so it doesn't blend in to other content*/ - text-align:center; -} -.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre { - /*so things don't run into each other*/ - margin-bottom:1em; -} -/* setting a consistent width, 160px; - control of type=file still not possible */ -.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em;} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssbase-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssbase/base-min.css b/lib/yuilib/3.9.1/build/cssbase/base-min.css deleted file mode 100644 index 994997eb00b..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase/base-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -h1{font-size:138.5%}h2{font-size:123.1%}h3{font-size:108%}h1,h2,h3{margin:1em 0}h1,h2,h3,h4,h5,h6,strong{font-weight:bold}abbr,acronym{border-bottom:1px dotted #000;cursor:help}em{font-style:italic}blockquote,ul,ol,dl{margin:1em}ol,ul,dl{margin-left:2em}ol{list-style:decimal outside}ul{list-style:disc outside}dl dd{margin-left:1em}th,td{border:1px solid #000;padding:.5em}th{font-weight:bold;text-align:center}caption{margin-bottom:.5em;text-align:center}p,fieldset,table,pre{margin-bottom:1em}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssbase/base.css b/lib/yuilib/3.9.1/build/cssbase/base.css deleted file mode 100644 index 8d6e0676500..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase/base.css +++ /dev/null @@ -1,76 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* base.css, part of YUI's CSS Foundation */ -h1 { - /*18px via YUI Fonts CSS foundation*/ - font-size:138.5%; -} -h2 { - /*16px via YUI Fonts CSS foundation*/ - font-size:123.1%; -} -h3 { - /*14px via YUI Fonts CSS foundation*/ - font-size:108%; -} -h1,h2,h3 { - /* top & bottom margin based on font size */ - margin:1em 0; -} -h1,h2,h3,h4,h5,h6,strong { - /*bringing boldness back to headers and the strong element*/ - font-weight:bold; -} -abbr,acronym { - /*indicating to users that more info is available */ - border-bottom:1px dotted #000; - cursor:help; -} -em { - /*bringing italics back to the em element*/ - font-style:italic; -} -blockquote,ul,ol,dl { - /*giving blockquotes and lists room to breath*/ - margin:1em; -} -ol,ul,dl { - /*bringing lists on to the page with breathing room */ - margin-left:2em; -} -ol { - /*giving OL's LIs generated numbers*/ - list-style: decimal outside; -} -ul { - /*giving UL's LIs generated disc markers*/ - list-style: disc outside; -} -dl dd { - /*providing spacing for definition terms*/ - margin-left:1em; -} -th,td { - /*borders and padding to make the table readable*/ - border:1px solid #000; - padding:.5em; -} -th { - /*distinguishing table headers from data cells*/ - font-weight:bold; - text-align:center; -} -caption { - /*coordinated margin to match cell's padding*/ - margin-bottom:.5em; - /*centered so it doesn't blend in to other content*/ - text-align:center; -} -p,fieldset,table,pre { - /*so things don't run into each other*/ - margin-bottom:1em; -} -/* setting a consistent width, 160px; - control of type=file still not possible */ -input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em;} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssbase { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css b/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css deleted file mode 100644 index 0baa53d239d..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssfonts body,.yui3-cssfonts{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}.yui3-cssfonts select,.yui3-cssfonts input,.yui3-cssfonts button,.yui3-cssfonts textarea{font:99% arial,helvetica,clean,sans-serif}.yui3-cssfonts table{font-size:inherit;font:100%}.yui3-cssfonts pre,.yui3-cssfonts code,.yui3-cssfonts kbd,.yui3-cssfonts samp,.yui3-cssfonts tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css b/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css deleted file mode 100644 index 490823d0c8e..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/** - * Percents could work for IE, but for backCompat purposes, we are using keywords. - * x-small is for IE6/7 quirks mode. - */ -.yui3-cssfonts body, .yui3-cssfonts { - font:13px/1.231 arial,helvetica,clean,sans-serif; - *font-size:small; /* for IE */ - *font:x-small; /* for IE in quirks mode */ -} - -/** - * Nudge down to get to 13px equivalent for these form elements - */ -.yui3-cssfonts select, -.yui3-cssfonts input, -.yui3-cssfonts button, -.yui3-cssfonts textarea { - font:99% arial,helvetica,clean,sans-serif; -} - -/** - * To help tables remember to inherit - */ -.yui3-cssfonts table { - font-size:inherit; - font:100%; -} - -/** - * Bump up IE to get to 13px equivalent for these fixed-width elements - */ -.yui3-cssfonts pre, -.yui3-cssfonts code, -.yui3-cssfonts kbd, -.yui3-cssfonts samp, -.yui3-cssfonts tt { - font-family:monospace; - *font-size:108%; - line-height:100%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssfonts-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css b/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css deleted file mode 100644 index 272d2304a4f..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssfonts/fonts.css b/lib/yuilib/3.9.1/build/cssfonts/fonts.css deleted file mode 100644 index 93e5b54bfad..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts/fonts.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/** - * Percents could work for IE, but for backCompat purposes, we are using keywords. - * x-small is for IE6/7 quirks mode. - */ -body { - font:13px/1.231 arial,helvetica,clean,sans-serif; - *font-size:small; /* for IE */ - *font:x-small; /* for IE in quirks mode */ -} - -/** - * Nudge down to get to 13px equivalent for these form elements - */ -select, -input, -button, -textarea { - font:99% arial,helvetica,clean,sans-serif; -} - -/** - * To help tables remember to inherit - */ -table { - font-size:inherit; - font:100%; -} - -/** - * Bump up IE to get to 13px equivalent for these fixed-width elements - */ -pre, -code, -kbd, -samp, -tt { - font-family:monospace; - *font-size:108%; - line-height:100%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssfonts { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css b/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css deleted file mode 100644 index 8539bd254b6..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssgrids body{text-align:center;margin-left:auto;margin-right:auto}.yui3-cssgrids .yui3-d0,.yui3-cssgrids .yui3-d1,.yui3-cssgrids .yui3-d1f,.yui3-cssgrids .yui3-d2,.yui3-cssgrids .yui3-d2f,.yui3-cssgrids .yui3-d3,.yui3-cssgrids .yui3-d3f{margin:auto;text-align:left;width:57.69em;*width:56.25em}.yui3-cssgrids .yui3-t1,.yui3-cssgrids .yui3-t2,.yui3-cssgrids .yui3-t3,.yui3-cssgrids .yui3-t4,.yui3-cssgrids .yui3-t5,.yui3-cssgrids .yui3-t6{margin:auto;text-align:left;width:100%}.yui3-cssgrids .yui3-d0{margin:auto 10px;width:auto}.yui3-cssgrids .yui3-d0f{width:100%}.yui3-cssgrids .yui3-d2{width:73.076em;*width:71.25em}.yui3-cssgrids .yui3-d2f{width:950px}.yui3-cssgrids .yui3-d3{width:74.923em;*width:73.05em}.yui3-cssgrids .yui3-d3f{width:974px}.yui3-cssgrids .yui3-b{position:relative}.yui3-cssgrids .yui3-b{_position:static}.yui3-cssgrids .yui3-main .yui3-b{position:static}.yui3-cssgrids .yui3-main{width:100%}.yui3-cssgrids .yui3-t1 .yui3-main,.yui3-cssgrids .yui3-t2 .yui3-main,.yui3-cssgrids .yui3-t3 .yui3-main{float:right;margin-left:-25em}.yui3-cssgrids .yui3-t4 .yui3-main,.yui3-cssgrids .yui3-t5 .yui3-main,.yui3-cssgrids .yui3-t6 .yui3-main{float:left;margin-right:-25em}.yui3-cssgrids .yui3-t1 .yui3-b{float:left;width:12.30769em;*width:12.00em}.yui3-cssgrids .yui3-t1 .yui3-main .yui3-b{margin-left:13.30769em;*margin-left:12.975em}.yui3-cssgrids .yui3-t2 .yui3-b{float:left;width:13.84615em;*width:13.50em}.yui3-cssgrids .yui3-t2 .yui3-main .yui3-b{margin-left:14.84615em;*margin-left:14.475em}.yui3-cssgrids .yui3-t3 .yui3-b{float:left;width:23.0769em;*width:22.50em}.yui3-cssgrids .yui3-t3 .yui3-main .yui3-b{margin-left:24.0769em;*margin-left:23.475em}.yui3-cssgrids .yui3-t4 .yui3-b{float:right;width:13.8456em;*width:13.50em}.yui3-cssgrids .yui3-t4 .yui3-main .yui3-b{margin-right:14.8456em;*margin-right:14.475em}.yui3-cssgrids .yui3-t5 .yui3-b{float:right;width:18.4615em;*width:18.00em}.yui3-cssgrids .yui3-t5 .yui3-main .yui3-b{margin-right:19.4615em;*margin-right:18.975em}.yui3-cssgrids .yui3-t6 .yui3-b{float:right;width:23.0769em;*width:22.50em}.yui3-cssgrids .yui3-t6 .yui3-main .yui3-b{margin-right:24.0769em;*margin-right:23.475em}.yui3-cssgrids .yui3-main .yui3-b{float:none;width:auto}.yui3-cssgrids .yui3-gb .yui3-u,.yui3-cssgrids .yui3-g .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g,.yui3-cssgrids .yui3-gb .yui3-gb,.yui3-cssgrids .yui3-gb .yui3-gc,.yui3-cssgrids .yui3-gb .yui3-gd,.yui3-cssgrids .yui3-gb .yui3-ge,.yui3-cssgrids .yui3-gb .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g,.yui3-cssgrids .yui3-gd .yui3-u{float:left}.yui3-cssgrids .yui3-g .yui3-u,.yui3-cssgrids .yui3-g .yui3-g,.yui3-cssgrids .yui3-g .yui3-gb,.yui3-cssgrids .yui3-g .yui3-gc,.yui3-cssgrids .yui3-g .yui3-gd,.yui3-cssgrids .yui3-g .yui3-ge,.yui3-cssgrids .yui3-g .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g,.yui3-cssgrids .yui3-g .yui3-gc .yui3-u,.yui3-cssgrids .yui3-ge .yui3-u,.yui3-cssgrids .yui3-ge .yui3-g,.yui3-cssgrids .yui3-gf .yui3-g,.yui3-cssgrids .yui3-gf .yui3-u{float:right}.yui3-cssgrids .yui3-g div.first,.yui3-cssgrids .yui3-gb div.first,.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd div.first,.yui3-cssgrids .yui3-ge div.first,.yui3-cssgrids .yui3-gf div.first,.yui3-cssgrids .yui3-g .yui3-gc div.first,.yui3-cssgrids .yui3-g .yui3-ge div.first,.yui3-cssgrids .yui3-gc div.first div.first{float:left}.yui3-cssgrids .yui3-g .yui3-u,.yui3-cssgrids .yui3-g .yui3-g,.yui3-cssgrids .yui3-g .yui3-gb,.yui3-cssgrids .yui3-g .yui3-gc,.yui3-cssgrids .yui3-g .yui3-gd,.yui3-cssgrids .yui3-g .yui3-ge,.yui3-cssgrids .yui3-g .yui3-gf{width:49.1%}.yui3-cssgrids .yui3-gb .yui3-u,.yui3-cssgrids .yui3-g .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g,.yui3-cssgrids .yui3-gb .yui3-gb,.yui3-cssgrids .yui3-gb .yui3-gc,.yui3-cssgrids .yui3-gb .yui3-gd,.yui3-cssgrids .yui3-gb .yui3-ge,.yui3-cssgrids .yui3-gb .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g,.yui3-cssgrids .yui3-gd .yui3-u{width:32%;margin-left:2.0%}.yui3-cssgrids .yui3-gb .yui3-u{*width:31.8%;*margin-left:1.9%}.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd .yui3-u{width:66%;_width:65.7%}.yui3-cssgrids .yui3-gd div.first{width:32%;_width:31.5%}.yui3-cssgrids .yui3-ge div.first,.yui3-cssgrids .yui3-gf .yui3-u{width:74.2%;_width:74%}.yui3-cssgrids .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gf div.first{width:24%;_width:23.8%}.yui3-cssgrids .yui3-g .yui3-gb div.first,.yui3-cssgrids .yui3-gb div.first,.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd div.first{margin-left:0}.yui3-cssgrids .yui3-g .yui3-g .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g .yui3-u,.yui3-cssgrids .yui3-ge .yui3-g .yui3-u,.yui3-cssgrids .yui3-gf .yui3-g .yui3-u{width:49%;*width:48.1%;*margin-left:0}.yui3-cssgrids .yui3-g .yui3-gb div.first,.yui3-cssgrids .yui3-gb .yui3-gb div.first{*margin-right:0;*width:32%;_width:31.7%}.yui3-cssgrids .yui3-g .yui3-gc div.first,.yui3-cssgrids .yui3-gd .yui3-g{width:66%}.yui3-cssgrids .yui3-gb .yui3-g div.first{*margin-right:4%;_margin-right:1.3%}.yui3-cssgrids .yui3-gb .yui3-gc div.first,.yui3-cssgrids .yui3-gb .yui3-gd div.first{*margin-right:0}.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u{*margin-left:1.8%;_margin-left:4%}.yui3-cssgrids .yui3-g .yui3-gb .yui3-u{_margin-left:1.0%}.yui3-cssgrids .yui3-gb .yui3-gd .yui3-u{*width:66%;_width:61.2%}.yui3-cssgrids .yui3-gb .yui3-gd div.first{*width:31%;_width:29.5%}.yui3-cssgrids .yui3-g .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u{width:32%;_float:right;margin-right:0;_margin-left:0}.yui3-cssgrids .yui3-gb .yui3-gc div.first{width:66%;*float:left;*margin-left:0}.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u{margin:0}.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u{_margin-left:.7%}.yui3-cssgrids .yui3-gb .yui3-g div.first,.yui3-cssgrids .yui3-gb .yui3-gb div.first{*margin-left:0} -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g .yui3-u{*width:48.1%;*margin-left:0}.yui3-cssgrids .yui3-gb .yui3-gd div.first{width:32%}.yui3-cssgrids .yui3-g .yui3-gd div.first{_width:29.9%}.yui3-cssgrids .yui3-ge .yui3-g{width:24%}.yui3-cssgrids .yui3-gf .yui3-g{width:74.2%}.yui3-cssgrids .yui3-gb .yui3-ge div.yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf div.yui3-u{float:right}.yui3-cssgrids .yui3-gb .yui3-ge div.first,.yui3-cssgrids .yui3-gb .yui3-gf div.first{float:left}.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf div.first{*width:24%;_width:20%}.yui3-cssgrids .yui3-gc .yui3-gf .yui3-u{width:74%;_width:73%}.yui3-cssgrids .yui3-gc .yui3-gf div.first{width:24%}.yui3-cssgrids .yui3-gb .yui3-ge div.first,.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u{*width:73.5%;_width:65.5%}.yui3-cssgrids .yui3-ge div.first .yui3-gd .yui3-u{width:65%}.yui3-cssgrids .yui3-ge div.first .yui3-gd div.first{width:32%}.yui3-cssgrids #bd:after,.yui3-cssgrids .yui3-g:after,.yui3-cssgrids .yui3-gb:after,.yui3-cssgrids .yui3-gc:after,.yui3-cssgrids .yui3-gd:after,.yui3-cssgrids .yui3-ge:after,.yui3-cssgrids .yui3-gf:after,.yui3-cssgrids .yui3-t1:after,.yui3-cssgrids .yui3-t2:after,.yui3-cssgrids .yui3-t3:after,.yui3-cssgrids .yui3-t4:after,.yui3-cssgrids .yui3-t5:after,.yui3-cssgrids .yui3-t6:after{content:".";display:block;height:0;clear:both;visibility:hidden}.yui3-cssgrids #bd,.yui3-cssgrids .yui3-g,.yui3-cssgrids .yui3-gb,.yui3-cssgrids .yui3-gc,.yui3-cssgrids .yui3-gd,.yui3-cssgrids .yui3-ge,.yui3-cssgrids .yui3-gf,.yui3-cssgrids .yui3-t1,.yui3-cssgrids .yui3-t2,.yui3-cssgrids .yui3-t3,.yui3-cssgrids .yui3-t4,.yui3-cssgrids .yui3-t5,.yui3-cssgrids .yui3-t6{zoom:1} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css b/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css deleted file mode 100644 index 5413755907b..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css +++ /dev/null @@ -1,485 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* -* -* The YUI CSS Foundation uses the *property and _property CSS filter -* techniques to shield a value from A-grade browsers [1] other than -* IE6 & IE7 (*property) and IE6 (_property) -* -/ -Section: General Rules -*/ -.yui3-cssgrids body { - /* center the page */ - text-align: center; - margin-left: auto; - margin-right: auto; -} -/* -Section: Page Width Rules (#doc, #doc2, #doc3, #doc4) -*/ -/* -Subsection: General -*/ -.yui3-cssgrids .yui3-d0, /* 100% */ -.yui3-cssgrids .yui3-d1, /* 750px */ -.yui3-cssgrids .yui3-d1f, /* 750px fixed */ -.yui3-cssgrids .yui3-d2, /* 950px */ -.yui3-cssgrids .yui3-d2f, /* 950px fixed */ -.yui3-cssgrids .yui3-d3, /* 974px */ -.yui3-cssgrids .yui3-d3f { /* 974px fixed */ - margin: auto; - text-align: left; - width: 57.69em; - *width: 56.25em; /* doc1*/ -} - -.yui3-cssgrids .yui3-t1, -.yui3-cssgrids .yui3-t2, -.yui3-cssgrids .yui3-t3, -.yui3-cssgrids .yui3-t4, -.yui3-cssgrids .yui3-t5, -.yui3-cssgrids .yui3-t6 { - margin: auto; - text-align: left; - width: 100%; -} - -/* -Subsection: 100% (doc) -*/ -.yui3-cssgrids .yui3-d0 { - /* Left and Right margins are not a structural part of Grids. Without them Grids - works fine, but content bleeds to the very edge of the document, which often - impairs readability and usability. They are - provided because they prevent the content from "bleeding" into the browser's chrome.*/ - margin: auto 10px; - width: auto; -} -.yui3-cssgrids .yui3-d0f { - width: 100%; -} - -/* -Subsection: 950 Centered (doc2) -*/ -.yui3-cssgrids .yui3-d2 { - width: 73.076em; - *width: 71.25em; -} -.yui3-cssgrids .yui3-d2f { - width: 950px; -} -/* -Subsection: 974 Centered (doc3) -*/ -.yui3-cssgrids .yui3-d3 { - width: 74.923em; - *width: 73.05em; -} -.yui3-cssgrids .yui3-d3f { - width: 974px; -} -/* -Section: Preset Template Rules (.yui3-t[1-6]) -*/ -/* -Subsection: General -*/ - -/* to preserve source-order independence for Gecko without breaking IE */ -.yui3-cssgrids .yui3-b { - position: relative; -} -.yui3-cssgrids .yui3-b { - _position: static; -} -.yui3-cssgrids .yui3-main .yui3-b { - position: static; -} -.yui3-cssgrids .yui3-main { - width: 100%; -} -.yui3-cssgrids .yui3-t1 .yui3-main, -.yui3-cssgrids .yui3-t2 .yui3-main, -.yui3-cssgrids .yui3-t3 .yui3-main { - float: right; - /* IE: preserve layout at narrow widths */ - margin-left: -25em; -} -.yui3-cssgrids .yui3-t4 .yui3-main, -.yui3-cssgrids .yui3-t5 .yui3-main, -.yui3-cssgrids .yui3-t6 .yui3-main { - float: left; - /* IE: preserve layout at narrow widths */ - margin-right: -25em; -} - -/* Subsection: For Specific Template Presets */ - -/** -* Nudge down to get to 13px equivalent for these form elements -*/ - -/* -TODO Create t1-6's that are based on fixed widths -*/ -/* t1 narrow block = left, equivalent of 160px */ -.yui3-cssgrids .yui3-t1 .yui3-b { - float: left; - width: 12.30769em; - *width: 12.00em; -} -.yui3-cssgrids .yui3-t1 .yui3-main .yui3-b { - margin-left: 13.30769em; - *margin-left:12.975em; -} -/* t2 narrow block = left, equivalent of 180px */ -.yui3-cssgrids .yui3-t2 .yui3-b { - float: left; - width: 13.84615em; - *width: 13.50em; -} -.yui3-cssgrids .yui3-t2 .yui3-main .yui3-b { - margin-left: 14.84615em; - *margin-left: 14.475em; -} -/* t3 narrow block = left, equivalent of 300px */ -.yui3-cssgrids .yui3-t3 .yui3-b { - float: left; - width: 23.0769em; - *width: 22.50em; -} -.yui3-cssgrids .yui3-t3 .yui3-main .yui3-b { - margin-left: 24.0769em; - *margin-left: 23.475em; -} -/* t4 narrow block = right, equivalent of 180px */ -.yui3-cssgrids .yui3-t4 .yui3-b { - float: right; - width: 13.8456em; - *width: 13.50em; -} -.yui3-cssgrids .yui3-t4 .yui3-main .yui3-b { - margin-right: 14.8456em; - *margin-right: 14.475em; -} -/* t5 narrow block = right, equivalent of 240px */ -.yui3-cssgrids .yui3-t5 .yui3-b { - float: right; - width: 18.4615em; - *width: 18.00em; -} -.yui3-cssgrids .yui3-t5 .yui3-main .yui3-b { - margin-right: 19.4615em; - *margin-right: 18.975em; -} -/* t6 narrow block = equivalent of 300px */ -.yui3-cssgrids .yui3-t6 .yui3-b { - float: right; - width: 23.0769em; - *width: 22.50em; -} -.yui3-cssgrids .yui3-t6 .yui3-main .yui3-b { - margin-right: 24.0769em; - *margin-right: 23.475em; -} - -.yui3-cssgrids .yui3-main .yui3-b { - float: none; - width: auto; -} - -/* -Section: Grids and Nesting Grids -*/ - -/* -Subsection: Children generally take half the available space -*/ - -.yui3-cssgrids .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g, -.yui3-cssgrids .yui3-gb .yui3-gb, -.yui3-cssgrids .yui3-gb .yui3-gc, -.yui3-cssgrids .yui3-gb .yui3-gd, -.yui3-cssgrids .yui3-gb .yui3-ge, -.yui3-cssgrids .yui3-gb .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g, -.yui3-cssgrids .yui3-gd .yui3-u { - float: left; -} - -/*Float units (and sub grids) to the right */ -.yui3-cssgrids .yui3-g .yui3-u, -.yui3-cssgrids .yui3-g .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gb, -.yui3-cssgrids .yui3-g .yui3-gc, -.yui3-cssgrids .yui3-g .yui3-gd, -.yui3-cssgrids .yui3-g .yui3-ge, -.yui3-cssgrids .yui3-g .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-g, -.yui3-cssgrids .yui3-gf .yui3-g, -.yui3-cssgrids .yui3-gf .yui3-u { - float: right; -} - -/*Float units (and sub grids) to the left */ -.yui3-cssgrids .yui3-g div.first, -.yui3-cssgrids .yui3-gb div.first, -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd div.first, -.yui3-cssgrids .yui3-ge div.first, -.yui3-cssgrids .yui3-gf div.first, -.yui3-cssgrids .yui3-g .yui3-gc div.first, -.yui3-cssgrids .yui3-g .yui3-ge div.first, -.yui3-cssgrids .yui3-gc div.first div.first { - float: left; -} - -.yui3-cssgrids .yui3-g .yui3-u, -.yui3-cssgrids .yui3-g .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gb, -.yui3-cssgrids .yui3-g .yui3-gc, -.yui3-cssgrids .yui3-g .yui3-gd, -.yui3-cssgrids .yui3-g .yui3-ge, -.yui3-cssgrids .yui3-g .yui3-gf { - width: 49.1%; -} - -.yui3-cssgrids .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g, -.yui3-cssgrids .yui3-gb .yui3-gb, -.yui3-cssgrids .yui3-gb .yui3-gc, -.yui3-cssgrids .yui3-gb .yui3-gd, -.yui3-cssgrids .yui3-gb .yui3-ge, -.yui3-cssgrids .yui3-gb .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g, -.yui3-cssgrids .yui3-gd .yui3-u { - width: 32%; - margin-left: 2.0%; -} - -/* Give IE some extra breathing room for 1/3-based rounding issues */ -.yui3-cssgrids .yui3-gb .yui3-u { - *width: 31.8%; - *margin-left: 1.9%; -} - -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd .yui3-u { - width: 66%; - _width: 65.7%; -} -.yui3-cssgrids .yui3-gd div.first { - width: 32%; - _width: 31.5%; -} - -.yui3-cssgrids .yui3-ge div.first, -.yui3-cssgrids .yui3-gf .yui3-u { - width: 74.2%; - _width: 74%; -} - -.yui3-cssgrids .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gf div.first { - width: 24%; - _width: 23.8%; -} - -.yui3-cssgrids .yui3-g .yui3-gb div.first, -.yui3-cssgrids .yui3-gb div.first, -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd div.first { - margin-left: 0; -} - -/* -Section: Deep Nesting -*/ -.yui3-cssgrids .yui3-g .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gf .yui3-g .yui3-u { - width: 49%; - *width: 48.1%; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-g .yui3-gb div.first, -.yui3-cssgrids .yui3-gb .yui3-gb div.first { - *margin-right: 0; - *width: 32%; - _width: 31.7%; -} - -.yui3-cssgrids .yui3-g .yui3-gc div.first, -.yui3-cssgrids .yui3-gd .yui3-g { - width: 66%; -} - -.yui3-cssgrids .yui3-gb .yui3-g div.first { - *margin-right: 4%; - _margin-right: 1.3%; -} - -.yui3-cssgrids .yui3-gb .yui3-gc div.first, -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - *margin-right: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u { - *margin-left: 1.8%; - _margin-left: 4%; -} - -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u { - _margin-left: 1.0%; -} - -.yui3-cssgrids .yui3-gb .yui3-gd .yui3-u { - *width: 66%; - _width: 61.2%; -} -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - *width: 31%; - _width: 29.5%; -} - -.yui3-cssgrids .yui3-g .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u { - width: 32%; - _float: right; - margin-right: 0; - _margin-left: 0; -} -.yui3-cssgrids .yui3-gb .yui3-gc div.first { - width: 66%; - *float: left; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u { - margin: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u { - _margin-left: .7%; -} - -.yui3-cssgrids .yui3-gb .yui3-g div.first, -.yui3-cssgrids .yui3-gb .yui3-gb div.first { - *margin-left:0; -} - -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g .yui3-u { - *width: 48.1%; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - width: 32%; -} -.yui3-cssgrids .yui3-g .yui3-gd div.first { - _width: 29.9%; -} - -.yui3-cssgrids .yui3-ge .yui3-g { - width: 24%; -} -.yui3-cssgrids .yui3-gf .yui3-g { - width: 74.2%; -} - -.yui3-cssgrids .yui3-gb .yui3-ge div.yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf div.yui3-u { - float: right; -} -.yui3-cssgrids .yui3-gb .yui3-ge div.first, -.yui3-cssgrids .yui3-gb .yui3-gf div.first { - float: left; -} - -/* Width Accommodation for Nested Contexts */ -.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf div.first { - *width: 24%; - _width: 20%; -} - -/* Width Accommodation for Nested Contexts */ - -.yui3-cssgrids .yui3-gc .yui3-gf .yui3-u { - width: 74%; - _width: 73%; -} - -.yui3-cssgrids .yui3-gc .yui3-gf div.first { - width: 24%; -} - -.yui3-cssgrids .yui3-gb .yui3-ge div.first, -.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u { - *width: 73.5%; - _width: 65.5%; -} - -/* Patch for GD within GE */ -.yui3-cssgrids .yui3-ge div.first .yui3-gd .yui3-u { - width: 65%; -} -.yui3-cssgrids .yui3-ge div.first .yui3-gd div.first { - width: 32%; -} - -/* -Section: Clearing. zoom for IE, :after for others -*/ - -.yui3-cssgrids #bd:after, -.yui3-cssgrids .yui3-g:after, -.yui3-cssgrids .yui3-gb:after, -.yui3-cssgrids .yui3-gc:after, -.yui3-cssgrids .yui3-gd:after, -.yui3-cssgrids .yui3-ge:after, -.yui3-cssgrids .yui3-gf:after, -.yui3-cssgrids .yui3-t1:after, -.yui3-cssgrids .yui3-t2:after, -.yui3-cssgrids .yui3-t3:after, -.yui3-cssgrids .yui3-t4:after, -.yui3-cssgrids .yui3-t5:after, -.yui3-cssgrids .yui3-t6:after { - content: "."; - display: block; - height: 0; - clear: both; - visibility: hidden; -} -.yui3-cssgrids #bd, -.yui3-cssgrids .yui3-g, -.yui3-cssgrids .yui3-gb, -.yui3-cssgrids .yui3-gc, -.yui3-cssgrids .yui3-gd, -.yui3-cssgrids .yui3-ge, -.yui3-cssgrids .yui3-gf, -.yui3-cssgrids .yui3-t1, -.yui3-cssgrids .yui3-t2, -.yui3-cssgrids .yui3-t3, -.yui3-cssgrids .yui3-t4, -.yui3-cssgrids .yui3-t5, -.yui3-cssgrids .yui3-t6 { - zoom: 1; -} diff --git a/lib/yuilib/3.9.1/build/cssgrids/grids-min.css b/lib/yuilib/3.9.1/build/cssgrids/grids-min.css deleted file mode 100644 index 18cc27ec268..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids/grids-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssgrids/grids.css b/lib/yuilib/3.9.1/build/cssgrids/grids.css deleted file mode 100644 index 899d6353b87..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids/grids.css +++ /dev/null @@ -1,162 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-g { - letter-spacing: -0.31em; /* webkit: collapse white-space between units */ - *letter-spacing: normal; /* reset IE < 8 */ - word-spacing: -0.43em; /* IE < 8 && gecko: collapse white-space between units */ -} - -.yui3-u { - display: inline-block; - zoom: 1; *display: inline; /* IE < 8: fake inline-block */ - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; -} -.yui3-u-1, -.yui3-u-1-2, -.yui3-u-1-3, -.yui3-u-2-3, -.yui3-u-1-4, -.yui3-u-3-4, -.yui3-u-1-5, -.yui3-u-2-5, -.yui3-u-3-5, -.yui3-u-4-5, -.yui3-u-1-6, -.yui3-u-5-6, -.yui3-u-1-8, -.yui3-u-3-8, -.yui3-u-5-8, -.yui3-u-7-8, -.yui3-u-1-12, -.yui3-u-5-12, -.yui3-u-7-12, -.yui3-u-11-12, -.yui3-u-1-24, -.yui3-u-5-24, -.yui3-u-7-24, -.yui3-u-11-24, -.yui3-u-13-24, -.yui3-u-17-24, -.yui3-u-19-24, -.yui3-u-23-24 { - display: inline-block; - zoom: 1; *display: inline; /* IE < 8: fake inline-block */ - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; -} - -.yui3-u-1 { - display: block; -} - -.yui3-u-1-2 { - width: 50%; -} - -.yui3-u-1-3 { - width: 33.33333%; -} - -.yui3-u-2-3 { - width: 66.66666%; -} - -.yui3-u-1-4 { - width: 25%; -} - -.yui3-u-3-4 { - width: 75%; -} - -.yui3-u-1-5 { - width: 20%; -} - -.yui3-u-2-5 { - width: 40%; -} - -.yui3-u-3-5 { - width: 60%; -} - -.yui3-u-4-5 { - width: 80%; -} - -.yui3-u-1-6 { - width: 16.656%; -} - -.yui3-u-5-6 { - width: 83.33%; -} - -.yui3-u-1-8 { - width: 12.5%; -} - -.yui3-u-3-8 { - width: 37.5%; -} - -.yui3-u-5-8 { - width: 62.5%; -} - -.yui3-u-7-8 { - width: 87.5%; -} - -.yui3-u-1-12 { - width: 8.3333%; -} - -.yui3-u-5-12 { - width: 41.6666%; -} - -.yui3-u-7-12 { - width: 58.3333%; -} - -.yui3-u-11-12 { - width: 91.6666%; -} - -.yui3-u-1-24 { - width: 4.1666%; -} - -.yui3-u-5-24 { - width: 20.8333%; -} - -.yui3-u-7-24 { - width: 29.1666%; -} - -.yui3-u-11-24 { - width: 45.8333%; -} - -.yui3-u-13-24 { - width: 54.1666%; -} - -.yui3-u-17-24 { - width: 70.8333%; -} - -.yui3-u-19-24 { - width: 79.1666%; -} - -.yui3-u-23-24 { - width: 95.8333%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssgrids { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css b/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css deleted file mode 100644 index 77f574e0cbc..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssreset html{color:#000;background:#FFF}.yui3-cssreset body,.yui3-cssreset div,.yui3-cssreset dl,.yui3-cssreset dt,.yui3-cssreset dd,.yui3-cssreset ul,.yui3-cssreset ol,.yui3-cssreset li,.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6,.yui3-cssreset pre,.yui3-cssreset code,.yui3-cssreset form,.yui3-cssreset fieldset,.yui3-cssreset legend,.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset p,.yui3-cssreset blockquote,.yui3-cssreset th,.yui3-cssreset td{margin:0;padding:0}.yui3-cssreset table{border-collapse:collapse;border-spacing:0}.yui3-cssreset fieldset,.yui3-cssreset img{border:0}.yui3-cssreset address,.yui3-cssreset caption,.yui3-cssreset cite,.yui3-cssreset code,.yui3-cssreset dfn,.yui3-cssreset em,.yui3-cssreset strong,.yui3-cssreset th,.yui3-cssreset var{font-style:normal;font-weight:normal}.yui3-cssreset ol,.yui3-cssreset ul{list-style:none}.yui3-cssreset caption,.yui3-cssreset th{text-align:left}.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6{font-size:100%;font-weight:normal}.yui3-cssreset q:before,.yui3-cssreset q:after{content:''}.yui3-cssreset abbr,.yui3-cssreset acronym{border:0;font-variant:normal}.yui3-cssreset sup{vertical-align:text-top}.yui3-cssreset sub{vertical-align:text-bottom}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{font-family:inherit;font-size:inherit;font-weight:inherit}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{*font-size:100%}.yui3-cssreset legend{color:#000}#yui3-css-stamp.cssreset-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css b/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css deleted file mode 100644 index cffff522cc0..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css +++ /dev/null @@ -1,121 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/*e - TODO will need to remove settings on HTML since we can't namespace it. - TODO with the prefix, should I group by selector or property for weight savings? -*/ -.yui3-cssreset html{ - color:#000; - background:#FFF; -} -/* - TODO remove settings on BODY since we can't namespace it. -*/ -/* - TODO test putting a class on HEAD. - - Fails on FF. -*/ -.yui3-cssreset body, -.yui3-cssreset div, -.yui3-cssreset dl, -.yui3-cssreset dt, -.yui3-cssreset dd, -.yui3-cssreset ul, -.yui3-cssreset ol, -.yui3-cssreset li, -.yui3-cssreset h1, -.yui3-cssreset h2, -.yui3-cssreset h3, -.yui3-cssreset h4, -.yui3-cssreset h5, -.yui3-cssreset h6, -.yui3-cssreset pre, -.yui3-cssreset code, -.yui3-cssreset form, -.yui3-cssreset fieldset, -.yui3-cssreset legend, -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset p, -.yui3-cssreset blockquote, -.yui3-cssreset th, -.yui3-cssreset td { - margin:0; - padding:0; -} -.yui3-cssreset table { - border-collapse:collapse; - border-spacing:0; -} -.yui3-cssreset fieldset, -.yui3-cssreset img { - border:0; -} -/* - TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit... -*/ -.yui3-cssreset address, -.yui3-cssreset caption, -.yui3-cssreset cite, -.yui3-cssreset code, -.yui3-cssreset dfn, -.yui3-cssreset em, -.yui3-cssreset strong, -.yui3-cssreset th, -.yui3-cssreset var { - font-style:normal; - font-weight:normal; -} - -.yui3-cssreset ol, -.yui3-cssreset ul { - list-style:none; -} - -.yui3-cssreset caption, -.yui3-cssreset th { - text-align:left; -} -.yui3-cssreset h1, -.yui3-cssreset h2, -.yui3-cssreset h3, -.yui3-cssreset h4, -.yui3-cssreset h5, -.yui3-cssreset h6 { - font-size:100%; - font-weight:normal; -} -.yui3-cssreset q:before, -.yui3-cssreset q:after { - content:''; -} -.yui3-cssreset abbr, -.yui3-cssreset acronym { - border:0; - font-variant:normal; -} -/* to preserve line-height and selector appearance */ -.yui3-cssreset sup { - vertical-align:text-top; -} -.yui3-cssreset sub { - vertical-align:text-bottom; -} -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset select { - font-family:inherit; - font-size:inherit; - font-weight:inherit; -} -/*to enable resizing for IE*/ -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset select { - *font-size:100%; -} -/*because legend doesn't inherit in IE */ -.yui3-cssreset legend { - color:#000; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssreset-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssreset/reset-min.css b/lib/yuilib/3.9.1/build/cssreset/reset-min.css deleted file mode 100644 index b5bef607b8e..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset/reset-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssreset/reset.css b/lib/yuilib/3.9.1/build/cssreset/reset.css deleted file mode 100644 index 365d9d388d4..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset/reset.css +++ /dev/null @@ -1,121 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* - TODO will need to remove settings on HTML since we can't namespace it. - TODO with the prefix, should I group by selector or property for weight savings? -*/ -html{ - color:#000; - background:#FFF; -} -/* - TODO remove settings on BODY since we can't namespace it. -*/ -/* - TODO test putting a class on HEAD. - - Fails on FF. -*/ -body, -div, -dl, -dt, -dd, -ul, -ol, -li, -h1, -h2, -h3, -h4, -h5, -h6, -pre, -code, -form, -fieldset, -legend, -input, -textarea, -p, -blockquote, -th, -td { - margin:0; - padding:0; -} -table { - border-collapse:collapse; - border-spacing:0; -} -fieldset, -img { - border:0; -} -/* - TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit... -*/ -address, -caption, -cite, -code, -dfn, -em, -strong, -th, -var { - font-style:normal; - font-weight:normal; -} - -ol, -ul { - list-style:none; -} - -caption, -th { - text-align:left; -} -h1, -h2, -h3, -h4, -h5, -h6 { - font-size:100%; - font-weight:normal; -} -q:before, -q:after { - content:''; -} -abbr, -acronym { - border:0; - font-variant:normal; -} -/* to preserve line-height and selector appearance */ -sup { - vertical-align:text-top; -} -sub { - vertical-align:text-bottom; -} -input, -textarea, -select { - font-family:inherit; - font-size:inherit; - font-weight:inherit; -} -/*to enable resizing for IE*/ -input, -textarea, -select { - *font-size:100%; -} -/*because legend doesn't inherit in IE */ -legend { - color:#000; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssreset { display: none; } diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css deleted file mode 100644 index 2d4b3fda6c4..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css +++ /dev/null @@ -1,88 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* foundational CSS */ - -/* mask */ -.yui3-skin-sam .yui3-datatable-mask { - position:absolute; - z-index:9500; -} - -/* scrollable */ -.yui3-datatable-tmp { - position:absolute; - left:-9000px; -} - -.yui3-datatable-scrollable .yui3-datatable-bd { - overflow:auto; -} -.yui3-datatable-scrollable .yui3-datatable-hd { - overflow:hidden; - position:relative; /* for ie overflow bug http://rowanw.com/bugs/overflow_relative.htm */ -} - -.yui3-datatable-scrollable .yui3-datatable-bd thead tr, -.yui3-datatable-scrollable .yui3-datatable-bd thead th { - position:absolute; - left:-1500px; -} - -.yui3-datatable-scrollable tbody { - -moz-outline:none; -} - -/* sortable columns */ - -.yui3-skin-sam thead .yui3-datatable-sortable { - cursor:pointer; -} - -/* draggable columns */ -.yui3-skin-sam thead .yui3-datatable-draggable { - cursor: move; -} -.yui3-datatable-coltarget { - position: absolute; - z-index: 999; -} - -/* resizeable columns */ -.yui3-datatable-hd { - zoom:1; -} -th.yui3-datatable-resizeable .yui3-datatable-resizerliner { - position:relative; -} -.yui3-datatable-resizer { - position:absolute; - right:0; - bottom:0; - height:100%; - cursor:e-resize; - cursor:col-resize; - background-color:#CCC;opacity:0;filter: alpha(opacity=0); /* Bug 1952811: IE transparency z-index */ -} -.yui3-datatable-resizerproxy { - visibility:hidden; - position:absolute; - z-index:9000; - background-color:#CCC;opacity:0;filter: alpha(opacity=0); /* Bug 1952811: IE transparency z-index */ -} - -/* hidden columns */ -th.yui3-datatable-hidden .yui3-datatable-liner, -td.yui3-datatable-hidden .yui3-datatable-liner, -th.yui3-datatable-hidden .yui3-datatable-resizer { - /*TODO: document change from 2.5.2 to 2.6 - margin:0; - padding:0; - white-space:nowrap; - width:1px; - overflow:hidden;*/ - display:none; -} - -/* editing */ -.yui3-datatable-editor, .yui3-datatable-editor-shim { - position:absolute;z-index:9000; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css deleted file mode 100644 index 2182caa6e73..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css +++ /dev/null @@ -1,290 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-night .yui3-datatable{ - font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; - color:#8E8E8E; -} -.yui3-skin-night .yui3-datatable table { - margin:0; - padding:0; - font-size:inherit; - border-collapse:separate;*border-collapse:collapse;border-spacing:0; /* since ie6 and ie7 behave differently */ - border:1px solid #323434; - border-right:none; -} -.yui3-skin-night .yui3-datatable thead {border-spacing:0;} /* for safari bug */ - -.yui3-skin-night .yui3-datatable caption { - color:#474747; - font-size:85%; - font-weight:normal; - font-style:italic; - line-height:1; - padding:1em 0; - text-align:center; -} - -.yui3-skin-night .yui3-datatable th { - background-color:#3b3c3d; - - background: -moz-linear-gradient( - 0% 100% 90deg, - #242526 0%, - #3b3c3d 96%, - #2C2D2F 100% - ); - background: -webkit-gradient( - linear, - left bottom, - left top, - from(#242526), - color-stop(0.96, #3b3c3d), - to(#2C2D2F) - ); -} - -.yui3-skin-night .yui3-datatable th, -.yui3-skin-night .yui3-datatable th a { - font-weight:normal;text-decoration:none;color:#eee; /* header text */ - vertical-align:bottom; -} -.yui3-skin-night .yui3-datatable th { - margin:0;padding:0; - border:none; - border-right:1px solid #303030;/* inner column border */ -} -.yui3-skin-night .yui3-datatable tr.yui3-datatable-first td { - border-top:1px solid #323434; /*f00 tbody top border */ -} -.yui3-skin-night .yui3-datatable th .yui3-datatable-liner { - white-space:nowrap; -} -.yui3-skin-night .yui3-datatable-liner { - margin:0;padding:0; - padding:4px 10px 4px 10px; /* cell padding */ - overflow:visible; /*to make ths where the title is really long work*/ - border:0 solid black; -} -.yui3-skin-night .yui3-datatable-coltarget { - width: 5px; - background-color: red; /*#foo*/ -} -.yui3-skin-night .yui3-datatable td { - margin:0;padding:0; - border:none; - border-right:1px solid #303030; /* inner column border */ - text-align:left; -} -.yui3-skin-night .yui3-datatable-list td { - border-right:none; /* disable inner column border in list mode */ -} -.yui3-skin-night .yui3-datatable-resizer { - width:6px; -} - -/* mask */ -.yui3-skin-night .yui3-datatable-mask { - background-color: #000; - opacity: .25; - filter: alpha(opacity=25); /* Set opacity in IE */ -} - -/* messaging */ -.yui3-skin-night .yui3-datatable-message { - background-color:#FFF; -} - -/* scrolling */ - - -/* Jeff added this to cover the datatable attribute COLOR_COLUMNFILLER which sets the style through js */ -.yui3-skin-night .yui3-datatable-scrollable thead .yui3-datatable-first th:last-child div{ - border-right:solid 30px #2F3031; -} - -.yui3-skin-night .yui3-datatable-scrollable table {border:none;} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-hd { - border-left:1px solid #303030; - border-top:1px solid #303030; - border-right:1px solid #303030; -} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-bd { - border-left:1px solid #303030; - border-bottom:1px solid #303030; - border-right:1px solid #303030; - background-color:#000;/*FFF*/ -} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td {border-bottom:1px solid #303030;} - -/* sortable columns */ -.yui3-skin-night th.yui3-datatable-asc, -.yui3-skin-night th.yui3-datatable-desc { - background-color:#555658; - background: -moz-linear-gradient( - 0% 100% 90deg, - #343536 0%, - #555658 96%, - #3E3F41 100% - ); - background: -webkit-gradient( - linear, - left bottom, - left top, - from(#343536), - color-stop(0.96, #555658), - to(#3E3F41) - ); - -} -.yui3-skin-night th.yui3-datatable-sortable .yui3-datatable-liner { - padding-right:20px; /* room for arrow */ -} -.yui3-skin-night th.yui3-datatable-asc .yui3-datatable-liner { - background:url(dt-arrow-up.png) no-repeat right; /* up arrow */ -} -.yui3-skin-night th.yui3-datatable-desc .yui3-datatable-liner { - background:url(dt-arrow-dn.png) no-repeat right; /* down arrow */ -} - -/* editing */ -tbody .yui3-datatable-editable { - cursor:pointer; -} -.yui3-datatable-editor { - text-align:left; - background-color:#F2F2F2; - border:1px solid #808080; - padding:6px; -} -.yui3-datatable-editor label { - padding-left:4px;padding-right:6px; -} -.yui3-datatable-editor .yui3-datatable-button { - padding-top:6px;text-align:right; -} -.yui3-datatable-editor .yui3-datatable-button button { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; - border:1px solid #999; - width:4em;height:1.8em; - margin-left:6px; -} -.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px; - background-color: #5584E0; - border:1px solid #304369; - color:#FFF -} -.yui3-datatable-editor .yui3-datatable-button button:hover { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px; - color:#000; -} -.yui3-datatable-editor .yui3-datatable-button button:active { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; - color:#000; -} - -/* striping */ -.yui3-skin-night .yui3-datatable td { background-color:transparent; } /* none */ -.yui3-skin-night tr.yui3-datatable-even td { background-color:#0E0E0E; } /* darkest bkg even*/ -.yui3-skin-night tr.yui3-datatable-odd td { background-color:#1D1E1E; } /* lighter odd */ -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#191a1A; } /* dark sorted */ -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#2B2C2C; } /* light sorted */ - -/* disable striping in list mode */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even { background-color:#0E0E0E; } /* darkest bkg */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd { background-color:#0E0E0E; } /* darkest bkg */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#151515; } /* light blue sorted */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#151515; } /* light blue sorted */ - -/* highlighting */ -.yui3-skin-night th.yui3-datatable-highlighted, -.yui3-skin-night th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-night tr.yui3-datatable-highlighted, -.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* enable highlighting in list mode */ -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* selection */ -.yui3-skin-night th.yui3-datatable-selected, -.yui3-skin-night th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-night tr.yui3-datatable-selected td, -.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* enable selection in list mode */ -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected, -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* pagination */ -.yui3-skin-night .yui3-datatable-paginator { - display:block;margin:6px 0;white-space:nowrap; -} -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-first, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-last, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-selected { - padding:2px 6px; -} -.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-first, -.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-last { - text-decoration:none; -} -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-previous, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-next { - display:none; -} -.yui3-skin-night a.yui3-datatable-page { - border:1px solid #303030; - padding:2px 6px; - text-decoration:none; - background-color:#fff -} -.yui3-skin-night .yui3-datatable-selected { - border:1px solid #fff; - background-color:#fff; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css deleted file mode 100644 index 26208526ab2..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-night .yui3-datatable{font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#8e8e8e}.yui3-skin-night .yui3-datatable table{margin:0;padding:0;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #323434;border-right:0}.yui3-skin-night .yui3-datatable thead{border-spacing:0}.yui3-skin-night .yui3-datatable caption{color:#474747;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-night .yui3-datatable th{background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-datatable th,.yui3-skin-night .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#eee;vertical-align:bottom}.yui3-skin-night .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #303030}.yui3-skin-night .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #323434}.yui3-skin-night .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-night .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-night .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-night .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #303030;text-align:left}.yui3-skin-night .yui3-datatable-list td{border-right:0}.yui3-skin-night .yui3-datatable-resizer{width:6px}.yui3-skin-night .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-night .yui3-datatable-message{background-color:#FFF}.yui3-skin-night .yui3-datatable-scrollable thead .yui3-datatable-first th:last-child div{border-right:solid 30px #2f3031}.yui3-skin-night .yui3-datatable-scrollable table{border:0}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #303030;border-top:1px solid #303030;border-right:1px solid #303030}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #303030;border-bottom:1px solid #303030;border-right:1px solid #303030;background-color:#000}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #303030}.yui3-skin-night th.yui3-datatable-asc,.yui3-skin-night th.yui3-datatable-desc{background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-night th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-night th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-night .yui3-datatable td{background-color:transparent}.yui3-skin-night tr.yui3-datatable-even td{background-color:#0e0e0e}.yui3-skin-night tr.yui3-datatable-odd td{background-color:#1d1e1e}.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#191a1a}.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#2b2c2c}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#151515} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#151515}.yui3-skin-night th.yui3-datatable-highlighted,.yui3-skin-night th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-night tr.yui3-datatable-highlighted,.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-night th.yui3-datatable-selected,.yui3-skin-night th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-night tr.yui3-datatable-selected td,.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-night .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-night a.yui3-datatable-page{border:1px solid #303030;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-night .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-night-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css deleted file mode 100644 index 2436361230f..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css +++ /dev/null @@ -1,238 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* basic skin styles */ -.yui3-skin-sam .yui3-datatable table { - margin:0;padding:0; - font-family:arial;font-size:inherit; - border-collapse:separate;*border-collapse:collapse;border-spacing:0; /* since ie6 and ie7 behave differently */ - border:1px solid #7F7F7F; -} -.yui3-skin-sam .yui3-datatable thead {border-spacing:0;} /* for safari bug */ - -.yui3-skin-sam .yui3-datatable caption { - color:#000000; - font-size:85%; - font-weight:normal; - font-style:italic; - line-height:1; - padding:1em 0pt; - text-align:center; -} - -.yui3-skin-sam .yui3-datatable th { - background:#D8D8DA url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; /* header gradient */ -} -.yui3-skin-sam .yui3-datatable th, -.yui3-skin-sam .yui3-datatable th a { - font-weight:normal;text-decoration:none;color:#000; /* header text */ - vertical-align:bottom; -} -.yui3-skin-sam .yui3-datatable th { - margin:0;padding:0; - border:none; - border-right:1px solid #CBCBCB;/* inner column border */ -} -.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td { - border-top:1px solid #7F7F7F; /* tbody top border */ -} -.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner { - white-space:nowrap; -} -.yui3-skin-sam .yui3-datatable-liner { - margin:0;padding:0; - padding:4px 10px 4px 10px; /* cell padding */ - overflow:visible; /*to make ths where the title is really long work*/ - border:0px solid black; -} -.yui3-skin-sam .yui3-datatable-coltarget { - width: 5px; - background-color: red; -} -.yui3-skin-sam .yui3-datatable td { - margin:0;padding:0; - border:none; - border-right:1px solid #CBCBCB; /* inner column border */ - text-align:left; -} -.yui3-skin-sam .yui3-datatable-list td { - border-right:none; /* disable inner column border in list mode */ -} -.yui3-skin-sam .yui3-datatable-resizer { - width:6px; -} - -/* mask */ -.yui3-skin-sam .yui3-datatable-mask { - background-color: #000; - opacity: .25; - filter: alpha(opacity=25); /* Set opacity in IE */ -} - -/* messaging */ -.yui3-skin-sam .yui3-datatable-message { - background-color:#FFF; -} - -/* scrolling */ -.yui3-skin-sam .yui3-datatable-scrollable table {border:none;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd {border-left:1px solid #7F7F7F;border-top:1px solid #7F7F7F;border-right:1px solid #7F7F7F;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd {border-left:1px solid #7F7F7F;border-bottom:1px solid #7F7F7F;border-right:1px solid #7F7F7F;background-color:#FFF;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td {border-bottom:1px solid #7F7F7F;} - -/* sortable columns */ -.yui3-skin-sam th.yui3-datatable-asc, -.yui3-skin-sam th.yui3-datatable-desc { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px; /* sorted header gradient */ -} -.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner { - padding-right:20px; /* room for arrow */ -} -.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner { - background:url(dt-arrow-up.png) no-repeat right; /* up arrow */ -} -.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner { - background:url(dt-arrow-dn.png) no-repeat right; /* down arrow */ -} - -/* editing */ -tbody .yui3-datatable-editable { - cursor:pointer; -} -.yui3-datatable-editor { - text-align:left; - background-color:#F2F2F2; - border:1px solid #808080; - padding:6px; -} -.yui3-datatable-editor label { - padding-left:4px;padding-right:6px; -} -.yui3-datatable-editor .yui3-datatable-button { - padding-top:6px;text-align:right; -} -.yui3-datatable-editor .yui3-datatable-button button { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; - border:1px solid #999; - width:4em;height:1.8em; - margin-left:6px; -} -.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px; - background-color: #5584E0; - border:1px solid #304369; - color:#FFF -} -.yui3-datatable-editor .yui3-datatable-button button:hover { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px; - color:#000; -} -.yui3-datatable-editor .yui3-datatable-button button:active { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; - color:#000; -} - -/* striping */ -.yui3-skin-sam .yui3-datatable td { background-color:transparent; } /* none */ -.yui3-skin-sam tr.yui3-datatable-even td { background-color:#FFF; } /* white */ -.yui3-skin-sam tr.yui3-datatable-odd td { background-color:#EDF5FF; } /* light blue */ -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#DBEAFF; } /* dark blue sorted */ - -/* disable striping in list mode */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even { background-color:#FFF; } /* white */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd { background-color:#FFF; } /* white */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ - -/* highlighting */ -.yui3-skin-sam th.yui3-datatable-highlighted, -.yui3-skin-sam th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-sam tr.yui3-datatable-highlighted, -.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* enable highlighting in list mode */ -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* selection */ -.yui3-skin-sam th.yui3-datatable-selected, -.yui3-skin-sam th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-sam tr.yui3-datatable-selected td, -.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* enable selection in list mode */ -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected, -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* pagination */ -.yui3-skin-sam .yui3-datatable-paginator { - display:block;margin:6px 0;white-space:nowrap; -} -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected { - padding:2px 6px; -} -.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first, -.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last { - text-decoration:none; -} -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next { - display:none; -} -.yui3-skin-sam a.yui3-datatable-page { - border:1px solid #CBCBCB; - padding:2px 6px; - text-decoration:none; - background-color:#fff -} -.yui3-skin-sam .yui3-datatable-selected { - border:1px solid #fff; - background-color:#fff; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css deleted file mode 100644 index 6b122786f63..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png deleted file mode 100644 index 9c42b83318d..00000000000 Binary files a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-up.png b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-up.png deleted file mode 100644 index 07e237512e9..00000000000 Binary files a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-up.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js b/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js deleted file mode 100644 index a4967314d6f..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js +++ /dev/null @@ -1,1740 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('datatable-base-deprecated', function(Y) { - -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -var YLang = Y.Lang, - YisValue = YLang.isValue, - fromTemplate = Y.Lang.sub, - YNode = Y.Node, - Ycreate = YNode.create, - YgetClassName = Y.ClassNameManager.getClassName, - - DATATABLE = "datatable", - COLUMN = "column", - - FOCUS = "focus", - KEYDOWN = "keydown", - MOUSEENTER = "mouseenter", - MOUSELEAVE = "mouseleave", - MOUSEUP = "mouseup", - MOUSEDOWN = "mousedown", - CLICK = "click", - DBLCLICK = "dblclick", - - CLASS_COLUMNS = YgetClassName(DATATABLE, "columns"), - CLASS_DATA = YgetClassName(DATATABLE, "data"), - CLASS_MSG = YgetClassName(DATATABLE, "msg"), - CLASS_LINER = YgetClassName(DATATABLE, "liner"), - CLASS_FIRST = YgetClassName(DATATABLE, "first"), - CLASS_LAST = YgetClassName(DATATABLE, "last"), - CLASS_EVEN = YgetClassName(DATATABLE, "even"), - CLASS_ODD = YgetClassName(DATATABLE, "odd"), - - TEMPLATE_TABLE = '
              ', - TEMPLATE_COL = '', - TEMPLATE_THEAD = '', - TEMPLATE_TBODY = '', - TEMPLATE_TH = '
              {value}
              ', - TEMPLATE_TR = '', - TEMPLATE_TD = '
              {value}
              ', - TEMPLATE_VALUE = '{value}', - TEMPLATE_MSG = ''; - - - -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -/* - * The Column class defines and manages attributes of Columns for DataTable. - * - * @class Column - * @extends Widget - * @constructor - */ -function Column(config) { - Column.superclass.constructor.apply(this, arguments); -} - -///////////////////////////////////////////////////////////////////////////// -// -// STATIC PROPERTIES -// -///////////////////////////////////////////////////////////////////////////// -Y.mix(Column, { - /* - * Class name. - * - * @property NAME - * @type {String} - * @static - * @final - * @value "column" - */ - NAME: "column", - -///////////////////////////////////////////////////////////////////////////// -// -// ATTRIBUTES -// -///////////////////////////////////////////////////////////////////////////// - ATTRS: { - /* - Unique internal identifier, used to stamp ID on TH element. - - @attribute id - @type {String} - @readOnly - **/ - id: { - valueFn: "_defaultId", - readOnly: true - }, - - /* - User-supplied identifier. Defaults to id. - @attribute key - @type {String} - **/ - key: { - valueFn: "_defaultKey" - }, - - /* - Points to underlying data field (for sorting or formatting, for - example). Useful when column doesn't hold any data itself, but is just - a visual representation of data from another column or record field. - Defaults to key. - - @attribute field - @type {String} - @default (column key) - **/ - field: { - valueFn: "_defaultField" - }, - - /* - Display label for column header. Defaults to key. - - @attribute label - @type {String} - **/ - label: { - valueFn: "_defaultLabel" - }, - - /* - Array of child column definitions (for nested headers). - - @attribute children - @type {String} - @default null - **/ - children: { - value: null - }, - - /* - TH abbr attribute. - - @attribute abbr - @type {String} - @default "" - **/ - abbr: { - value: "" - }, - - //TODO: support custom classnames - // TH CSS classnames - classnames: { - readOnly: true, - getter: "_getClassnames" - }, - - /* - Formating template string or function for cells in this column. - - Function formatters receive a single object (described below) and are - expected to output the `innerHTML` of the cell. - - String templates can include markup and {placeholder} tokens to be - filled in from the object passed to function formatters. - - @attribute formatter - @type {String|Function} - @param {Object} data Data relevant to the rendering of this cell - @param {String} data.classnames CSS classes to add to the cell - @param {Column} data.column This Column instance - @param {Object} data.data The raw object data from the Record - @param {String} data.field This Column's "field" attribute value - @param {String} data.headers TH ids to reference in the cell's - "headers" attribute - @param {Record} data.record The Record instance for this row - @param {Number} data.rowindex The index for this row - @param {Node} data.tbody The TBODY Node that will house the cell - @param {Node} data.tr The row TR Node that will house the cell - @param {Any} data.value The raw Record data for this cell - **/ - formatter: {}, - - /* - The default markup to display in cells that have no corresponding record - data or content from formatters. - - @attribute emptyCellValue - @type {String} - @default '' - **/ - emptyCellValue: { - value: '', - validator: Y.Lang.isString - }, - - //requires datatable-sort - sortable: { - value: false - }, - //sortOptions:defaultDir, sortFn, field - - //TODO: support editable columns - // Column editor - editor: {}, - - //TODO: support resizeable columns - //TODO: support setting widths - // requires datatable-colresize - width: {}, - resizeable: {}, - minimized: {}, - minWidth: {}, - maxAutoWidth: {} - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(Column, Y.Widget, { - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Return ID for instance. - * - * @method _defaultId - * @return {String} - * @private - */ - _defaultId: function() { - return Y.guid(); - }, - - /* - * Return key for instance. Defaults to ID if one was not provided. - * - * @method _defaultKey - * @return {String} - * @private - */ - _defaultKey: function() { - return Y.guid(); - }, - - /* - * Return field for instance. Defaults to key if one was not provided. - * - * @method _defaultField - * @return {String} - * @private - */ - _defaultField: function() { - return this.get("key"); - }, - - /* - * Return label for instance. Defaults to key if one was not provided. - * - * @method _defaultLabel - * @return {String} - * @private - */ - _defaultLabel: function() { - return this.get("key"); - }, - - /* - * Updates the UI if changes are made to abbr. - * - * @method _afterAbbrChange - * @param e {Event} Custom event for the attribute change. - * @private - */ - _afterAbbrChange: function (e) { - this._uiSetAbbr(e.newVal); - }, - - ///////////////////////////////////////////////////////////////////////////// - // - // PROPERTIES - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Reference to Column's current position index within its Columnset's keys - * array, if applicable. This property only applies to non-nested and bottom- - * level child Columns. Value is set by Columnset code. - * - * @property keyIndex - * @type {Number} - */ - keyIndex: null, - - /* - * Array of TH IDs associated with this column, for TD "headers" attribute. - * Value is set by Columnset code - * - * @property headers - * @type {String[]} - */ - headers: null, - - /* - * Number of cells the header spans. Value is set by Columnset code. - * - * @property colSpan - * @type {Number} - * @default 1 - */ - colSpan: 1, - - /* - * Number of rows the header spans. Value is set by Columnset code. - * - * @property rowSpan - * @type {Number} - * @default 1 - */ - rowSpan: 1, - - /* - * Column's parent Column instance, if applicable. Value is set by Columnset - * code. - * - * @property parent - * @type {Column} - */ - parent: null, - - /* - * The Node reference to the associated TH element. - * - * @property thNode - * @type {Node} - */ - - thNode: null, - - /*TODO - * The Node reference to the associated liner element. - * - * @property thLinerNode - * @type {Node} - - thLinerNode: null,*/ - - ///////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Initializer. - * - * @method initializer - * @param config {Object} Config object. - * @private - */ - initializer: function(config) { - }, - - /* - * Destructor. - * - * @method destructor - * @private - */ - destructor: function() { - }, - - /* - * Returns classnames for Column. - * - * @method _getClassnames - * @private - */ - _getClassnames: function () { - return Y.ClassNameManager.getClassName(COLUMN, this.get("key").replace(/[^\w\-]/g,"")); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // SYNC - // - //////////////////////////////////////////////////////////////////////////// - /* - * Syncs UI to intial state. - * - * @method syncUI - * @private - */ - syncUI: function() { - this._uiSetAbbr(this.get("abbr")); - }, - - /* - * Updates abbr. - * - * @method _uiSetAbbr - * @param val {String} New abbr. - * @protected - */ - _uiSetAbbr: function(val) { - this.thNode.set("abbr", val); - } -}); - -Y.Column = Column; -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -/* - * The Columnset class defines and manages a collection of Columns. - * - * @class Columnset - * @extends Base - * @constructor - */ -function Columnset(config) { - Columnset.superclass.constructor.apply(this, arguments); -} - -///////////////////////////////////////////////////////////////////////////// -// -// STATIC PROPERTIES -// -///////////////////////////////////////////////////////////////////////////// -Y.mix(Columnset, { - /* - * Class name. - * - * @property NAME - * @type String - * @static - * @final - * @value "columnset" - */ - NAME: "columnset", - - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTES - // - ///////////////////////////////////////////////////////////////////////////// - ATTRS: { - /* - * @attribute definitions - * @description Array of column definitions that will populate this Columnset. - * @type Array - */ - definitions: { - setter: "_setDefinitions" - } - - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(Columnset, Y.Base, { - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * @method _setDefinitions - * @description Clones definitions before setting. - * @param definitions {Array} Array of column definitions. - * @return Array - * @private - */ - _setDefinitions: function(definitions) { - return Y.clone(definitions); - }, - - ///////////////////////////////////////////////////////////////////////////// - // - // PROPERTIES - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Top-down tree representation of Column hierarchy. Used to create DOM - * elements. - * - * @property tree - * @type {Column[]} - */ - tree: null, - - /* - * Hash of all Columns by ID. - * - * @property idHash - * @type Object - */ - idHash: null, - - /* - * Hash of all Columns by key. - * - * @property keyHash - * @type Object - */ - keyHash: null, - - /* - * Array of only Columns that are meant to be displayed in DOM. - * - * @property keys - * @type {Column[]} - */ - keys: null, - - ///////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Initializer. Generates all internal representations of the collection of - * Columns. - * - * @method initializer - * @param config {Object} Config object. - * @private - */ - initializer: function() { - - // DOM tree representation of all Columns - var tree = [], - // Hash of all Columns by ID - idHash = {}, - // Hash of all Columns by key - keyHash = {}, - // Flat representation of only Columns that are meant to display data - keys = [], - // Original definitions - definitions = this.get("definitions"), - - self = this; - - // Internal recursive function to define Column instances - function parseColumns(depth, currentDefinitions, parent) { - var i=0, - len = currentDefinitions.length, - currentDefinition, - column, - currentChildren; - - // One level down - depth++; - - // Create corresponding dom node if not already there for this depth - if(!tree[depth]) { - tree[depth] = []; - } - - // Parse each node at this depth for attributes and any children - for(; i maxRowDepth) { - maxRowDepth = tmpRowDepth; - } - } - } - } - - // Count max row depth for each row - for(m=0; m' - */ - trTemplate: { - value: TEMPLATE_TR - } - }, - -///////////////////////////////////////////////////////////////////////////// -// -// TODO: HTML_PARSER -// -///////////////////////////////////////////////////////////////////////////// - HTML_PARSER: { - /*caption: function (srcNode) { - - }*/ - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(DTBase, Y.Widget, { - /* - * @property thTemplate - * @description Tokenized markup template for TH node creation. - * @type String - * @default '
              {value}
              ' - */ - thTemplate: TEMPLATE_TH, - - /* - * @property tdTemplate - * @description Tokenized markup template for TD node creation. - * @type String - * @default '
              {value}
              ' - */ - tdTemplate: TEMPLATE_TD, - - /* - * @property _theadNode - * @description Pointer to THEAD node. - * @type {Node} - * @private - */ - _theadNode: null, - - /* - * @property _tbodyNode - * @description Pointer to TBODY node. - * @type {Node} - * @private - */ - _tbodyNode: null, - - /* - * @property _msgNode - * @description Pointer to message display node. - * @type {Node} - * @private - */ - _msgNode: null, - - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * @method _setColumnset - * @description Converts Array to Y.Columnset. - * @param columns {Array | Y.Columnset} - * @return {Columnset} - * @private - */ - _setColumnset: function(columns) { - return YLang.isArray(columns) ? new Y.Columnset({definitions:columns}) : columns; - }, - - /* - * Updates the UI if Columnset is changed. - * - * @method _afterColumnsetChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterColumnsetChange: function (e) { - this._uiSetColumnset(e.newVal); - }, - - /* - * @method _setRecordset - * @description Converts Array to Y.Recordset. - * @param records {Array | Recordset} - * @return {Recordset} - * @private - */ - _setRecordset: function(rs) { - if(YLang.isArray(rs)) { - rs = new Y.Recordset({records:rs}); - } - - rs.addTarget(this); - return rs; - }, - - /* - * Updates the UI if Recordset is changed. - * - * @method _afterRecordsetChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterRecordsetChange: function (e) { - this._uiSetRecordset(e.newVal); - }, - - /* - * Updates the UI if Recordset records are changed. - * - * @method _afterRecordsChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterRecordsChange: function (e) { - this._uiSetRecordset(this.get('recordset')); - }, - - /* - * Updates the UI if summary is changed. - * - * @method _afterSummaryChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterSummaryChange: function (e) { - this._uiSetSummary(e.newVal); - }, - - /* - * Updates the UI if caption is changed. - * - * @method _afterCaptionChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterCaptionChange: function (e) { - this._uiSetCaption(e.newVal); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Destructor. - * - * @method destructor - * @private - */ - destructor: function() { - this.get("recordset").removeTarget(this); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // RENDER - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Renders UI. - * - * @method renderUI - * @private - */ - renderUI: function() { - // TABLE - this._addTableNode(this.get("contentBox")); - - // COLGROUP - this._addColgroupNode(this._tableNode); - - // THEAD - this._addTheadNode(this._tableNode); - - // Primary TBODY - this._addTbodyNode(this._tableNode); - - // Message TBODY - this._addMessageNode(this._tableNode); - - // CAPTION - this._addCaptionNode(this._tableNode); - }, - - /* - * Creates and attaches TABLE element to given container. - * - * @method _addTableNode - * @param containerNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTableNode: function(containerNode) { - if (!this._tableNode) { - this._tableNode = containerNode.appendChild(Ycreate(TEMPLATE_TABLE)); - } - return this._tableNode; - }, - - /* - * Creates and attaches COLGROUP element to given TABLE. - * - * @method _addColgroupNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addColgroupNode: function(tableNode) { - // Add COLs to DOCUMENT FRAGMENT - var len = this.get("columnset").keys.length, - i = 0, - allCols = [""]; - - for(; i"); - - // Create COLGROUP - this._colgroupNode = tableNode.insertBefore(Ycreate(allCols.join("")), tableNode.get("firstChild")); - - return this._colgroupNode; - }, - - /* - * Creates and attaches THEAD element to given container. - * - * @method _addTheadNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTheadNode: function(tableNode) { - if(tableNode) { - this._theadNode = tableNode.insertBefore(Ycreate(TEMPLATE_THEAD), this._colgroupNode.next()); - return this._theadNode; - } - }, - - /* - * Creates and attaches TBODY element to given container. - * - * @method _addTbodyNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTbodyNode: function(tableNode) { - this._tbodyNode = tableNode.appendChild(Ycreate(TEMPLATE_TBODY)); - return this._tbodyNode; - }, - - /* - * Creates and attaches message display element to given container. - * - * @method _addMessageNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addMessageNode: function(tableNode) { - this._msgNode = tableNode.insertBefore(Ycreate(TEMPLATE_MSG), this._tbodyNode); - return this._msgNode; - }, - - /* - * Creates and attaches CAPTION element to given container. - * - * @method _addCaptionNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addCaptionNode: function(tableNode) { - this._captionNode = Y.Node.create(''); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // BIND - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Binds events. - * - * @method bindUI - * @private - */ - bindUI: function() { - this.after({ - columnsetChange: this._afterColumnsetChange, - summaryChange : this._afterSummaryChange, - captionChange : this._afterCaptionChange, - recordsetChange: this._afterRecordsChange, - "recordset:tableChange": this._afterRecordsChange - }); - }, - - delegate: function(type) { - //TODO: is this necessary? - if(type==="dblclick") { - this.get("boundingBox").delegate.apply(this.get("boundingBox"), arguments); - } - else { - this.get("contentBox").delegate.apply(this.get("contentBox"), arguments); - } - }, - - - //////////////////////////////////////////////////////////////////////////// - // - // SYNC - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Syncs UI to intial state. - * - * @method syncUI - * @private - */ - syncUI: function() { - // THEAD ROWS - this._uiSetColumnset(this.get("columnset")); - // DATA ROWS - this._uiSetRecordset(this.get("recordset")); - // SUMMARY - this._uiSetSummary(this.get("summary")); - // CAPTION - this._uiSetCaption(this.get("caption")); - }, - - /* - * Updates summary. - * - * @method _uiSetSummary - * @param val {String} New summary. - * @protected - */ - _uiSetSummary: function(val) { - val = YisValue(val) ? val : ""; - this._tableNode.set("summary", val); - }, - - /* - * Updates caption. - * - * @method _uiSetCaption - * @param val {String} New caption. - * @protected - */ - _uiSetCaption: function(val) { - var caption = this._captionNode, - inDoc = caption.inDoc(), - method = val ? (!inDoc && 'prepend') : (inDoc && 'removeChild'); - - caption.setContent(val || ''); - - if (method) { - // prepend of remove necessary - this._tableNode[method](caption); - } - }, - - - //////////////////////////////////////////////////////////////////////////// - // - // THEAD/COLUMNSET FUNCTIONALITY - // - //////////////////////////////////////////////////////////////////////////// - /* - * Updates THEAD. - * - * @method _uiSetColumnset - * @param cs {Columnset} New Columnset. - * @protected - */ - _uiSetColumnset: function(cs) { - var tree = cs.tree, - thead = this._theadNode, - i = 0, - len = tree.length, - parent = thead.get("parentNode"), - nextSibling = thead.next(); - - // Move THEAD off DOM - thead.remove(); - - thead.get("children").remove(true); - - // Iterate tree of columns to add THEAD rows - for(; i
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger -:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function( -e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){if(!n.isObject(t))return t;if(e.instanceOf(t,YUI))return t;var f,l=a||{},c,h=e.each;switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return!t.addEventListener&&!t.attachEvent&&h(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in -t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.9.1",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1 -;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*"}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.9.1",{requires:["dom-core"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e),function(e){var t=parseInt,n=RegExp;e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia -:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},re_RGB:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,re_hex:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,re_hex3:/([0-9A-F])/gi,toRGB:function(r){return e.Color.re_RGB.test(r)||(r=e.Color.toHex(r)),e.Color.re_hex.exec(r)&&(r="rgb("+[t(n.$1,16),t(n.$2,16),t(n.$3,16)].join(", ")+")"),r},toHex:function(t){t=e.Color.KEYWORDS[t]||t;if(e.Color.re_RGB.exec(t)){t=[Number(n.$1).toString(16),Number(n.$2).toString(16),Number(n.$3).toString(16)];for(var r=0;r=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.9.1",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent -)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.9.1",{requires:["dom-base","dom-style"]}),YUI.add("selector-native",function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+ -h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){this.log(this.type+"->"+"sub: "+e.id);var r;return r=e.notify(t,this),!1===r||this.stopped>1?(this.log(this.type+" cancelled by subscriber"),!1):!0},log:function(e,t){},fire:function(){if(this.fireOnce&&this.fired)return this.log("fireOnce event: "+this.type+" already fired"),!0;var e=f.call(arguments,0);return this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e)},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return this.log("Missing event-custom-complex needed to emit a facade for: "+this.type),e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e}),w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n=="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=p.isObject(t)?t:{};this._yuievt=this._yuievt||{id:e.guid(),events:{},targets:{},config:n,chain:"chain"in n?n.chain:e.config.chain,bubbling:!1,defaults:{context:n.context||this,host:this,emitFacade:n.emitFacade,fireOnce:n.fireOnce,queuable:n.queuable,monitored:n.monitored,broadcast:n.broadcast,defaultTargetOnly:n.defaultTargetOnly,bubbles:"bubbles"in n?n.bubbles:!0}}};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o),u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i,s,o,u=this._yuievt,a=u.config.prefix;return p.isObject(t)?(s={},e.each(t,function(e,t){s[t]=this.publish(t,e||n)},this),s):(t=a?b(t,a):t,r=u.events,i=r[t],this._monitor("publish",t,{args:arguments}),i?n&&i.applyConfig(n,!0):(o=u.defaults,i=new e.CustomEvent(t,o),n&&i.applyConfig(n,!0),r[t]=i),r[t])},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=p.isString(e),n=t?e:e&&e.type,r=this._yuievt,i=r.config.prefix,s,o,u,a=t?f.call(arguments,1):arguments;n=i?b(n,i):n,s=this.getEvent(n,!0),u=this.getSibling(n,s),u&&!s&&(s=this.publish(n)),this._monitor("fire",s||n,{args:a});if(!s){if(r.hasTargets)return this.bubble({type:n},a,this);o=!0}else s.sibling=u,o=s.fire.apply(s,a);return r.chain?this:o},getSibling:function(e,t){var n;return e -.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.9.1",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i,s={},o=e.CustomEvent.prototype,u=e.EventTarget.prototype,a=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e=e||s,this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),o.fireComplex=function(t){var n,r,i,s,o,u,a,f,l,c=this,h=c.host||c,p,d;if(c.stack&&c.queuable&&c.type!=c.stack.next.type)return c.log("queue "+c.type),c.stack.queue.push([c,t]),!0;n=c.stack||{id:c.id,next:c,silent:c.silent,stopped:0,prevented:0,bubbling:null,type:c.type,afterQueue:new e.Queue,defaultTargetOnly:c.defaultTargetOnly,queue:[]},f=c.getSubs(),c.stopped=c.type!==n.type?0:n.stopped,c.prevented=c.type!==n.type?0:n.prevented,c.target=c.target||h,c.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:h}),c.events=a,a.on("stopped",c.stoppedFn)),c.currentTarget=h,c.details=t.slice(),c.log("Firing "+c.type),c._facade=null,r=c._getFacade(t),e.Lang.isObject(t[0])?t[0]=r:t.unshift(r),f[0]&&c._procSubs(f[0],t,r),c.bubbles&&h.bubble&&!c.stopped&&(d=n.bubbling,n.bubbling=c.type,n.type!=c.type&&(n.stopped=0,n.prevented=0),u=h.bubble(c,t,null,n),c.stopped=Math.max(c.stopped,n.stopped),c.prevented=Math.max(c.prevented,n.prevented),n.bubbling=d),c.prevented?c.preventedFn&&c.preventedFn.apply(h,t):c.defaultFn&&(!c.defaultTargetOnly&&!n.defaultTargetOnly||h===r.target)&&c.defaultFn.apply(h,t),c._broadcast(t);if(f[1]&&!c.prevented&&c.stopped<2)if(n.id===c.id||c.type!=h._yuievt.bubbling){c._procSubs(f[1],t,r);while(p=n.afterQueue.last())p()}else l=f[1],n.execDefaultCnt&&(l=e.merge(l),e.each(l,function(e){e.postponed=!0})),n.afterQueue.add(function(){c._procSubs(l,t,r)});c.target=null;if(n.id===c.id){s=n.queue;while(s.length)i=s.pop(),o=i[0],n.next=o,o.fire.apply(o,i[1]);c.stack=null}return u=!c.stopped,c.type!=h._yuievt.bubbling&&(n.stopped=0,n.prevented=0,c.stopped=0,c.prevented=0),c._facade=null,u},o._getFacade=function(){var t=this._facade,n,r=this.details;return t||(t=new e.EventFacade(this,this.currentTarget)),n=r&&r[0],e.Lang.isObject(n,!0)&&(a(t,n),t.type=n.type||t.type),t.details=this.details,t.target=this.originalTarget||this.target,t.currentTarget=this.currentTarget,t.stopped=0,t.prevented=0,this._facade=t,this._facade},o.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},o.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},o.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},o.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},u.addTarget=function(t){this._yuievt.targets[e.stamp(t)]=t,this._yuievt.hasTargets=!0},u.getTargets=function(){return e.Object.values(this._yuievt.targets)},u.removeTarget=function(t){delete this._yuievt.targets[e.stamp(t)]},u.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u=e&&e.type,a,f,l,c,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(f in i)if(i.hasOwnProperty(f)){o=i[f],a=o.getEvent(u,!0),c=o.getSibling(u,a),c&&!a&&(a=o.publish(u)),p=o._yuievt.bubbling,o._yuievt.bubbling=u;if(!a)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{a.sibling=c,a.target=h,a.originalTarget=h,a.currentTarget=o,l=a.broadcast,a.broadcast=!1,a.emitFacade=!0,a.stack=r,s=s&&a.fire.apply(a,t||e.details||[]),a.broadcast=l,a.originalTarget=null;if(a.stopped)break}o._yuievt.bubbling=p}return s},n=new e.EventFacade,r={};for(i in n)r[i]=!0},"3.9.1",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),n=this,r;return e[0]&&e[0]._node&&(e[0]=e[0]._node -),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(n._node),r=t.apply(n,e),r&&(r=c.scrubVal(r,n)),typeof r!="undefined"||(r=n),r})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t=this._node;return e&&e._node&&(e=e._node),t===e},inDoc:function(e){var t=this._node;e=e?e._node||e:t[s];if(e.documentElement)return l.contains(e.documentElement,t)},getById:function(t){var n=this._node,r=l.byId(t,n[s]);return r&&l.contains(n,r)?r=e.one(r):r=null,r},ancestor:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.one(l.ancestor(this._node,h(t),n,h(r)))},ancestors:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.all(l.ancestors(this._node,h(t),n,h(r)))},previous:function(t,n){return e.one(l.elementByAxis(this._node,"previousSibling",h(t),n))},next:function(t,n){return e.one(l.elementByAxis(this._node,"nextSibling",h(t),n))},siblings:function(t){return e.all(l.siblings(this._node,h(t)))},one:function(t){return e.one(e.Selector.query(t,this._node,!0))},all:function(t){var n=e.all(e.Selector.query(t,this._node));return n._query=t,n._queryRoot=this._node,n},test:function(t){return e.Selector.test(this._node,t)},remove:function(e){var t=this._node;return t&&t.parentNode&&t.parentNode.removeChild(t),e&&this.destroy(),this},replace:function(e){var t=this._node;return typeof e=="string"&&(e=c.create(e)),t.parentNode.replaceChild(c.getDOMNode(e),t),this},replaceChild:function(t,n){return typeof t=="string"&&(t=l.create(t)),e.one(this._node.replaceChild(c.getDOMNode(t),c.getDOMNode(n)))},destroy:function(t){var n=e.config.doc.uniqueID?"uniqueID":"_yuid",r;this.purge(),this.unplug&&this.unplug(),this.clearData(),t&&e.NodeList.each(this.all("*"),function(t){r=c._instances[t[n]],r?r.destroy():e.Event.purgeElement(t)}),this._node=null,this._stateProxy=null,delete c._instances[this._yuid]},invoke:function(e,t,n,r,i,s){var o=this._node,u;return t&&t._node&&(t=t._node),n&&n._node&&(n=n._node),u=o[e](t,n,r,i,s),c.scrubVal(u,this)},swap:e.config.doc.documentElement.swapNode?function(e){this._node.swapNode(c.getDOMNode(e))}:function(e){e=c.getDOMNode(e);var t=this._node,n=e.parentNode,r=e.nextSibling;return r===t?n.insertBefore(t,e):e===t.nextSibling?n.insertBefore(e,t):(t.parentNode.replaceChild(e,t),l.addHTML(n,t,r)),this},hasMethod:function(e){var t=this._node;return!(!(t&&e in t&&typeof t[e]!="unknown")||typeof t[e]!="function"&&String(t[e]).indexOf("function")!==1)},isFragment:function(){return this.get("nodeType")===11},empty:function(){return this.get("childNodes").remove().destroy(!0),this},getDOMNode:function(){return this._node}},!0),e.Node=c,e.one=c.one;var p=function(t){var n=[];t&&(typeof t=="string"?(this._query=t,t=e.Selector.query(t)):t.nodeType||l.isWindow(t)?t=[t]:t._node?t=[t._node]:t[0]&&t[0]._node?(e.Array.each(t,function(e){e._node&&n.push(e._node)}),t=n):t=e.Array(t,0,!0)),this._nodes=t||[]};p.NAME="NodeList",p.getDOMNodes=function(e){return e&&e._nodes?e._nodes:e},p.each=function(t,n,r){var i=t._nodes;i&&i.length&&e.Array.each(i,n,r||t)},p.addMethod=function(t,n,r){t&&n&&(p.prototype[t]=function(){var t=[],i=arguments;return e.Array.each(this._nodes,function(s){var o=s.uniqueID&&s.nodeType!==9?"uniqueID":"_yuid",u=e.Node._instances[s[o]],a,f;u||(u=p._getTempNode(s)),a=r||u,f=n.apply(a,i),f!==undefined&&f!==u&&(t[t.length]=f)}),t.length?t:this})},p.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,p.addMethod(n,t[n])):e.Array.each(n,function(e){p.importMethod(t,e)})},p._getTempNode=function(t){var n=p._tempNode;return n||(n=e.Node.create("
              "),p._tempNode=n),n._node=t,n._stateProxy=t,n},e.mix(p.prototype,{_invoke:function(e,t,n){var r=n?[]:this;return this.each(function(i){var s=i[e].apply(i,t);n&&r.push(s)}),r},item:function(t){return e.one((this._nodes||[])[t])},each:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){return i=e.one(i),t.call(n||i,i,s,r)}),r},batch:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){var o=e.Node._instances[i[u]];return o||(o=p._getTempNode(i)),t.call(n||o,o,s,r)}),r},some:function(t,n){var r=this;return e.Array.some(this._nodes,function(i,s){return i= -e.one(i),n=n||i,t.call(n,i,s,r)})},toFrag:function(){return e.one(e.DOM._nl2frag(this._nodes))},indexOf:function(t){return e.Array.indexOf(this._nodes,e.Node.getDOMNode(t))},filter:function(t){return e.all(e.Selector.filter(this._nodes,t))},modulus:function(t,n){n=n||0;var r=[];return p.each(this,function(e,i){i%t===n&&r.push(e)}),e.all(r)},odd:function(){return this.modulus(2,1)},even:function(){return this.modulus(2)},destructor:function(){},refresh:function(){var t,n=this._nodes,r=this._query,i=this._queryRoot;return r&&(i||n&&n[0]&&n[0].ownerDocument&&(i=n[0].ownerDocument),this._nodes=e.Selector.query(r,i)),this},size:function(){return this._nodes.length},isEmpty:function(){return this._nodes.length<1},toString:function(){var e="",t=this[u]+": not bound to any nodes",n=this._nodes,i;return n&&n[0]&&(i=n[0],e+=i[r],i.id&&(e+="#"+i.id),i.className&&(e+="."+i.className.replace(" ",".")),n.length>1&&(e+="...["+n.length+" items]")),e||t},getDOMNodes:function(){return this._nodes}},!0),p.importMethod(e.Node.prototype,["destroy","empty","remove","set"]),p.prototype.get=function(t){var n=[],r=this._nodes,i=!1,s=p._getTempNode,o,u;return r[0]&&(o=e.Node._instances[r[0]._yuid]||s(r[0]),u=o._get(t),u&&u.nodeType&&(i=!0)),e.Array.each(r,function(r){o=e.Node._instances[r._yuid],o||(o=s(r)),u=o._get(t),i||(u=e.Node.scrubVal(u,o)),n.push(u)}),i?e.all(n):n},e.NodeList=p,e.all=function(e){return new p(e)},e.Node.all=e.all;var d=e.NodeList,v=Array.prototype,m={concat:1,pop:0,push:0,shift:0,slice:1,splice:1,unshift:0};e.Object.each(m,function(t,n){d.prototype[n]=function(){var r=[],i=0,s,o;while(typeof (s=arguments[i++])!="undefined")r.push(s._node||s._nodes||s);return o=v[n].apply(this._nodes,r),t?o=e.all(o):o=e.Node.scrubVal(o),o}}),e.Array.each(["removeChild","hasChildNodes","cloneNode","hasAttribute","scrollIntoView","getElementsByTagName","focus","blur","submit","reset","select","createCaption"],function(t){e.Node.prototype[t]=function(e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"3.9.1",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(e){return this.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"3.9.1",{requires:["event-base","node-core","dom-base"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.DOM,n=e.Env.evt,r=e.config,i=r.win,s=YUI.Env.add,o=YUI.Env.remove,u=function(){YUI.Env.windowLoaded=!0,e.Event._load(),o(i,"load",u)},a=function(){e.Event._unload()},f="domready",l="~yui|2|compat~",c=function(n){try{return n&&typeof n!="string"&&e.Lang.isNumber(n.length)&&!n.tagName&&!t.isWindow(n)}catch(r){return!1}},h=e.CustomEvent.prototype._delete,p=function(t){var n=h.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},d=function(){var r=!1,u=0,h=[],v=n.dom_wrappers,m=null,g=n.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){d._interval||(d._interval=setInterval(d._poll,d.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,o){var a=e.Array(t),f,l;for(f=0;f4?n.slice(4):null),h&&a.fire(),p):!1},detach:function(n,r,i,s){var o=e.Array(arguments,0,!0),u,a,f,h,p,m;o[o.length-1]===l&&(u=!0);if(n&&n.detach)return n.detach();typeof i=="string"&&(u?i=t.byId(i):(i=e.Selector.query(i),a=i.length,a<1?i=null:a==1&&(i=i[0])));if(!i)return!1;if(i.detach)return o.splice(2,1),i.detach.apply(i,o);if(c(i)){f=!0;for(h=0,a=i.length;h0),a=[],f=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(n=0,i=h.length;n4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.9.1",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, -/*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ -self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode= -e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.9.1",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username|| -null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function( -e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"3.9.1",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"3.9.1",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("dump",function(e,t){var n=e.Lang,r="{...}",i="f(){...}",s=", ",o=" => ",u=function(e,t){var u,a,f=[],l=n.type(e);if(!n.isObject(e))return e+"";if(l=="date")return e;if(e.nodeType&&e.tagName)return e.tagName+"#"+e.id;if(e.document&&e.navigator)return"window";if(e.location&&e.body)return"document";if(l=="function")return i;t=n.isNumber(t)?t:3;if(l=="array"){f.push("[");for(u=0,a=e.length;u0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.9.1",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t= -this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"3.9.1",{requires:["transition"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css b/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png deleted file mode 100644 index 670ba1ea15c..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png deleted file mode 100644 index 76e34e60ae9..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png deleted file mode 100644 index a0eed7087f4..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png deleted file mode 100644 index e63c8d7d867..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2-dark.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2-dark.png deleted file mode 100644 index e91ffb7b3e4..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2-dark.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png deleted file mode 100644 index 89a46672709..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-base-core.css b/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-base-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-base-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-core.css b/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/slider-value-range/assets/slider-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong.png deleted file mode 100644 index 670ba1ea15c..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png deleted file mode 100644 index 76e34e60ae9..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png deleted file mode 100644 index a0eed7087f4..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png deleted file mode 100644 index e63c8d7d867..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2-dark.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2-dark.png deleted file mode 100644 index e91ffb7b3e4..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2-dark.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png deleted file mode 100644 index 89a46672709..00000000000 Binary files a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview.css b/lib/yuilib/3.9.1/build/tabview-base/assets/tabview.css deleted file mode 100644 index 0b7f25f95e4..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview.css +++ /dev/null @@ -1,23 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display: none; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-panel-selected { - background: yellow; - display: block; -} - -.yui3-tab { - display: inline-block; - margin-right: 0.5em; - zoom: 1; -}; diff --git a/lib/yuilib/3.9.1/build/tabview-base/tabview-base-min.js b/lib/yuilib/3.9.1/build/tabview-base/tabview-base-min.js deleted file mode 100644 index 209e90af313..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-base/tabview-base-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tabview-base",function(e,t){var n=e.ClassNameManager.getClassName,r="tabview",i="tab",s="panel",o="selected",u={},a=".",f={tabview:n(r),tabviewPanel:n(r,s),tabviewList:n(r,"list"),tab:n(i),tabLabel:n(i,"label"),tabPanel:n(i,s),selectedTab:n(i,o),selectedPanel:n(i,s,o)},l={tabview:a+f.tabview,tabviewList:"> ul",tab:"> ul > li",tabLabel:"> ul > li > a",tabviewPanel:"> div",tabPanel:"> div > div",selectedTab:"> ul > "+a+f.selectedTab,selectedPanel:"> div "+a+f.selectedPanel},c=function(){this.init.apply(this,arguments)};c.NAME="tabviewBase",c._queries=l,c._classNames=f,e.mix(c.prototype,{init:function(t){t=t||u,this._node=t.host||e.one(t.node),this.refresh()},initClassNames:function(t){e.Object.each(l,function(e,n){if(f[n]){var r=this.all(e);t!==undefined&&(r=r.item(t)),r&&r.addClass(f[n])}},this._node),this._node.addClass(f.tabview)},_select:function(e){var t=this._node,n=t.one(l.selectedTab),r=t.one(l.selectedPanel),i=t.all(l.tab).item(e),s=t.all(l.tabPanel).item(e);n&&n.removeClass(f.selectedTab),r&&r.removeClass(f.selectedPanel),i&&i.addClass(f.selectedTab),s&&s.addClass(f.selectedPanel)},initState:function(){var e=this._node,t=e.one(l.selectedTab),n=t?e.all(l.tab).indexOf(t):0;this._select(n)},_scrubTextNodes:function(){this._node.one(l.tabviewList).get("childNodes").each(function(e){e.get("nodeType")===3&&e.remove()})},refresh:function(){this._scrubTextNodes(),this.initClassNames(),this.initState(),this.initEvents()},tabEventName:"click",initEvents:function(){this._node.delegate(this.tabEventName,this.onTabEvent,l.tab,this)},onTabEvent:function(e){e.preventDefault(),this._select(this._node.all(l.tab).indexOf(e.currentTarget))},destroy:function(){this._node.detach(this.tabEventName)}}),e.TabviewBase=c},"3.9.1",{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css b/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css deleted file mode 100644 index 66c74c57155..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display:none; -} - -.yui3-tab-panel-selected { - display:block; -} - -.yui3-tabview-list, -.yui3-tab { - margin:0; - padding:0; - list-style:none; -} - -.yui3-tabview { - position:relative; /* contain absolute positioned tabs (left/right) */ -} - -.yui3-tabview, -.yui3-tabview-list, -.yui3-tabview-panel, -.yui3-tab, -.yui3-tab-panel { /* IE: kill space between horizontal tabs */ - zoom:1; -} - -.yui3-tab { - display:inline-block; - *display:inline; /* IE */ - vertical-align:bottom; /* safari: for overlap */ - cursor:pointer; -} - -.yui3-tab-label { - display:block; - display:inline-block; - padding: 6px 10px; - position:relative; /* IE: to allow overlap */ - text-decoration: none; - vertical-align:bottom; /* safari: for overlap */ -} diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css b/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css deleted file mode 100644 index 0b7f25f95e4..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css +++ /dev/null @@ -1,23 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display: none; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-panel-selected { - background: yellow; - display: block; -} - -.yui3-tab { - display: inline-block; - margin-right: 0.5em; - zoom: 1; -}; diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js b/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js deleted file mode 100644 index cd00ae4470c..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tabview-plugin",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}n.NAME="tabviewPlugin",n.NS="tabs",e.extend(n,e.TabviewBase),e.namespace("Plugin"),e.Plugin.Tabview=n},"3.9.1",{requires:["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css b/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css deleted file mode 100644 index 66c74c57155..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display:none; -} - -.yui3-tab-panel-selected { - display:block; -} - -.yui3-tabview-list, -.yui3-tab { - margin:0; - padding:0; - list-style:none; -} - -.yui3-tabview { - position:relative; /* contain absolute positioned tabs (left/right) */ -} - -.yui3-tabview, -.yui3-tabview-list, -.yui3-tabview-panel, -.yui3-tab, -.yui3-tab-panel { /* IE: kill space between horizontal tabs */ - zoom:1; -} - -.yui3-tab { - display:inline-block; - *display:inline; /* IE */ - vertical-align:bottom; /* safari: for overlap */ - cursor:pointer; -} - -.yui3-tab-label { - display:block; - display:inline-block; - padding: 6px 10px; - position:relative; /* IE: to allow overlap */ - text-decoration: none; - vertical-align:bottom; /* safari: for overlap */ -} diff --git a/lib/yuilib/3.9.1/build/tabview/assets/tabview.css b/lib/yuilib/3.9.1/build/tabview/assets/tabview.css deleted file mode 100644 index f15f45f0731..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/assets/tabview.css +++ /dev/null @@ -1,23 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display: none; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-panel-selected { - background: yellow; - display: block; -} - -.yui3-tab { - display: inline-block; - margin-right: 0.5em; - zoom: 1; -} diff --git a/lib/yuilib/3.9.1/build/tabview/tabview-min.js b/lib/yuilib/3.9.1/build/tabview/tabview-min.js deleted file mode 100644 index f8aaa72a6a6..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/tabview-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tabview",function(e,t){var n=e.TabviewBase._queries,r=e.TabviewBase._classNames,i=".",s=e.Base.create("tabView",e.Widget,[e.WidgetParent],{_afterChildAdded:function(){this.get("contentBox").focusManager.refresh()},_defListNodeValueFn:function(){return e.Node.create(s.LIST_TEMPLATE)},_defPanelNodeValueFn:function(){return e.Node.create(s.PANEL_TEMPLATE)},_afterChildRemoved:function(e){var t=e.index,n=this.get("selection");n||(n=this.item(t-1)||this.item(0),n&&n.set("selected",1)),this.get("contentBox").focusManager.refresh()},_initAria:function(){var e=this.get("contentBox"),t=e.one(n.tabviewList);t&&t.setAttrs({role:"tablist"})},bindUI:function(){this.get("contentBox").plug(e.Plugin.NodeFocusManager,{descendants:i+r.tabLabel,keys:{next:"down:39",previous:"down:37"},circular:!0}),this.after("render",this._setDefSelection),this.after("addChild",this._afterChildAdded),this.after("removeChild",this._afterChildRemoved)},renderUI:function(){var e=this.get("contentBox");this._renderListBox(e),this._renderPanelBox(e),this._childrenContainer=this.get("listNode"),this._renderTabs(e)},_setDefSelection:function(){var e=this.get("selection")||this.item(0);this.some(function(t){if(t.get("selected"))return e=t,!0}),e&&(this.set("selection",e),e.set("selected",1))},_renderListBox:function(e){var t=this.get("listNode");t.inDoc()||e.append(t)},_renderPanelBox:function(e){var t=this.get("panelNode");t.inDoc()||e.append(t)},_renderTabs:function(e){var t=e.all(n.tab),s=this.get("panelNode"),o=s?this.get("panelNode").get("children"):null,u=this;t&&(t.addClass(r.tab),e.all(n.tabLabel).addClass(r.tabLabel),e.all(n.tabPanel).addClass(r.tabPanel),t.each(function(e,t){var n=o?o.item(t):null;u.add({boundingBox:e,contentBox:e.one(i+r.tabLabel),panelNode:n})}))}},{LIST_TEMPLATE:'
                ',PANEL_TEMPLATE:'
                ',ATTRS:{defaultChildType:{value:"Tab"},listNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabviewList),t},valueFn:"_defListNodeValueFn"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabviewPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null}},HTML_PARSER:{listNode:n.tabviewList,panelNode:n.tabviewPanel}});e.TabView=s;var o=e.Lang,r=e.TabviewBase._classNames;e.Tab=e.Base.create("tab",e.Widget,[e.WidgetChild],{BOUNDING_TEMPLATE:'
              • ',CONTENT_TEMPLATE:'',PANEL_TEMPLATE:'
                ',_uiSetSelectedPanel:function(e){this.get("panelNode").toggleClass(r.selectedPanel,e)},_afterTabSelectedChange:function(e){this._uiSetSelectedPanel(e.newVal)},_afterParentChange:function(e){e.newVal?this._add():this._remove()},_initAria:function(){var t=this.get("contentBox"),n=t.get("id"),r=this.get("panelNode");n||(n=e.guid(),t.set("id",n)),t.set("role","tab"),t.get("parentNode").set("role","presentation"),r.setAttrs({role:"tabpanel","aria-labelledby":n})},syncUI:function(){this.set("label",this.get("label")),this.set("content",this.get("content")),this._uiSetSelectedPanel(this.get("selected"))},bindUI:function(){this.after("selectedChange",this._afterTabSelectedChange),this.after("parentChange",this._afterParentChange)},renderUI:function(){this._renderPanel(),this._initAria()},_renderPanel:function(){this.get("parent").get("panelNode").appendChild(this.get("panelNode"))},_add:function(){var e=this.get("parent").get("contentBox"),t=e.get("listNode"),n=e.get("panelNode");t&&t.appendChild(this.get("boundingBox")),n&&n.appendChild(this.get("panelNode"))},_remove:function(){this.get("boundingBox").remove(),this.get("panelNode").remove()},_onActivate:function(e){e.target===this&&(e.domEvent.preventDefault(),e.target.set("selected",1))},initializer:function(){this.publish(this.get("triggerEvent"),{defaultFn:this._onActivate})},_defLabelGetter:function(){return this.get("contentBox").getHTML()},_defLabelSetter:function(e){var t=this.get("contentBox");return t.getHTML()!==e&&t.setHTML(e),e},_defContentSetter:function(e){var t=this.get("panelNode");return t.getHTML()!==e&&t.setHTML(e),e},_defContentGetter:function(){return this.get("panelNode").getHTML()},_defPanelNodeValueFn:function(){var t=this.get("contentBox").get("href")||"",n=this.get("parent"),i=t.indexOf("#"),s;return t=t.substr(i),t.charAt(0)==="#"&&(s=e.one(t),s&&s.addClass(r.tabPanel)),!s&&n&&(s=n.get("panelNode").get("children").item(this.get("index"))),s||(s=e.Node.create(this.PANEL_TEMPLATE)),s}},{ATTRS:{triggerEvent:{value:"click"},label:{setter:"_defLabelSetter",getter:"_defLabelGetter"},content:{setter:"_defContentSetter",getter:"_defContentGetter"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null,validator:"_validTabIndex"}},HTML_PARSER:{selected:function(){var e=this.get("boundingBox").hasClass(r.selectedTab)?1:0;return e}}})},"3.9.1",{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/template-base/template-base-min.js b/lib/yuilib/3.9.1/build/template-base/template-base-min.js deleted file mode 100644 index cc80c89cce0..00000000000 --- a/lib/yuilib/3.9.1/build/template-base/template-base-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("template-base",function(e,t){function n(t,n){this.defaults=n,this.engine=t||e.Template.Micro,this.engine||e.error("No template engine loaded.")}n.prototype={compile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.compile(t,n)},precompile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.precompile(t,n)},render:function(t,n,r){return r=r?e.merge(this.defaults,r):this.defaults,this.engine.render?this.engine.render(t,n,r):this.engine.compile(t,r)(n,r)},revive:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.revive?this.engine.revive(t,n):t}},e.Template=e.Template?e.mix(n,e.Template):n},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js b/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js deleted file mode 100644 index 025531a06db..00000000000 --- a/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tree-node",function(e,t){function n(t,n){n||(n={}),this.id=this._yuid=n.id||this.id||e.guid("treeNode-"),this.tree=t,this.children=n.children||[],this.data=n.data||{},this.state=n.state||{},n.canHaveChildren?this.canHaveChildren=n.canHaveChildren:this.children.length&&(this.canHaveChildren=!0),e.mix(this,n);for(var r=0,i=this.children.length;r-1&&(t.children.splice(n,1),t._isIndexStale=!0,e.parent=null))},_defAddFn:function(e){var t=e.node,n=e.parent;t.parent&&this._removeNodeFromParent(t),t.parent=n,n.children.splice(e.index,0,t),n.canHaveChildren=!0,n._isIndexStale=!0},_defClearFn:function(e){var t=e.rootNode;this.rootNode&&this.destroyNode(this.rootNode,{silent:!0}),this._nodeMap={},this._nodeMap[t.id]=t,this.rootNode=t,this.children=t.children},_defRemoveFn:function(e){var t=e.node;e.destroy?this.destroyNode(t,{silent:!0}):e.parent?this._removeNodeFromParent(t):this.rootNode===t&&(this.rootNode=this.createNode(this._rootNodeConfig),this.children=this.rootNode.children)}});e.Tree=e.mix(o,e.Tree)},"3.9.1",{requires:["base-build","tree-node"]}); diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf b/lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf deleted file mode 100644 index 43a620674af..00000000000 Binary files a/lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js deleted file mode 100644 index 017f1b8a7f6..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js +++ /dev/null @@ -1,597 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('uploader-deprecated', function(Y) { - -/** - * Attention: this is the 3.4.1 `uploader` module has been deprecated in favor of a new - * uploader with an HTML5 layer. Please refer to the new Uploader User Guide for migration - * information. - * - * This module uses Flash player transport to upload files to the server, with support for - * file filtering, multiple file uploads and progress monitoring. - * @module uploader-deprecated - * @deprecated - */ - -var Event = Y.Event, - Node = Y.Node; - -var SWFURL = Y.Env.cdn + "uploader-deprecated/assets/uploader.swf"; - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                The Uploader widget is a tool for uploading files to the server.

                - * @module uploader-deprecated - * @title Uploader - * @requires base, node, event, swf - */ - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                Creates the Uploader instance and keeps the initialization data.

                - * - * @class Uploader - * @extends Y.Base - * @constructor - * @param {Object} config (optional) Configuration parameters for the Uploader. The following parameters are available: - *
                - *
                boundingBox : String|Node (required)
                - *
                - *
                buttonSkin : String (optional)
                - *
                - *
                transparent : String (optional)
                - *
                - *
                swfURL : String (optional)
                - *
                - *
                - * @deprecated - */ - -function Uploader (config /*Object*/) { - - Uploader.superclass.constructor.apply(this, arguments); - - if (config.hasOwnProperty("boundingBox")) { - this.set("boundingBox", config.boundingBox); - }; - - if (config.hasOwnProperty("buttonSkin")) { - this.set("buttonSkin", config.buttonSkin); - }; - if (config.hasOwnProperty("transparent")) { - this.set("transparent", config.transparent); - }; - if (config.hasOwnProperty("swfURL")) { - this.set("swfURL", config.swfURL); - }; -}; - - -Y.extend(Uploader, Y.Base, { - - /* - * The reference to the instance of Y.SWF that encapsulates the instance of the Flash player with uploader logic. - * - * @private - * @property uploaderswf - * @type {SWF} - * @default null - * @deprecated - */ - uploaderswf:null, - - /* - * The id of this instance of uploader. - * - * @private - * @property _id - * @type {String} - * @deprecated - */ - _id:"", - - /* - * Construction logic executed during Uploader instantiation. - * - * @method initializer - * @protected - * @deprecated - */ - initializer : function () { - - this._id = Y.guid("uploader"); - var oElement = Node.one(this.get("boundingBox")); - - var params = {version: "10.0.45", - fixedAttributes: {allowScriptAccess:"always", allowNetworking:"all", scale: "noscale"}, - flashVars: {}}; - - if (this.get("buttonSkin") != "") { - params.flashVars["buttonSkin"] = this.get("buttonSkin"); - } - if (this.get("transparent")) { - params.fixedAttributes["wmode"] = "transparent"; - } - - this.uploaderswf = new Y.SWF(oElement, this.get("swfURL"), params); - - var upswf = this.uploaderswf; - var relEvent = Y.bind(this._relayEvent, this); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploaderReady - * @param event {Event} The event object for the uploaderReady. - * @deprecated - */ - upswf.on ("swfReady", Y.bind(this._initializeUploader, this)); - - /* - * Fired when the mouse button is clicked on the Uploader's 'Browse' button. - * - * @event click - * @param event {Event} The event object for the click. - * @deprecated - */ - upswf.on ("click", relEvent); - - /* - * Fires when the user has finished selecting a set of files to be uploaded. - * - * @event fileselect - * @param event {Event} The event object for the fileSelect. - *
                - *
                fileList
                - *
                The file list Object with entries in the following format: - fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize}
                - *
                - * @deprecated - */ - upswf.on ("fileselect", relEvent); - - /* - * Fired when the mouse button is pressed on the Uploader's 'Browse' button. - * - * @event mousedown - * @param event {Event} The event object for the mousedown. - * @deprecated - */ - upswf.on ("mousedown", relEvent); - - /* - * Fired when the mouse button is raised on the Uploader's 'Browse' button. - * - * @event mouseup - * @param event {Event} The event object for the mouseup. - * @deprecated - */ - upswf.on ("mouseup", relEvent); - - /* - * Fired when the mouse leaves the Uploader's 'Browse' button. - * - * @event mouseleave - * @param event {Event} The event object for the mouseleave. - * @deprecated - */ - upswf.on ("mouseleave", relEvent); - - /* - * Fired when the mouse enters the Uploader's 'Browse' button. - * - * @event mouseenter - * @param event {Event} The event object for the mouseenter. - * @deprecated - */ - upswf.on ("mouseenter", relEvent); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploadcancel - * @param event {Event} The event object for the uploaderReady. - *
                - *
                ddEvent
                - *
                drag:start event from the thumb
                - *
                - * @deprecated - */ - upswf.on ("uploadcancel", relEvent); - - /* - * Fires when a specific file's upload is cancelled. - * - * @event uploadcomplete - * @param event {Event} The event object for the uploadcancel. - *
                - *
                id
                - *
                The id of the file whose upload has been cancelled.
                - *
                - * @deprecated - */ - upswf.on ("uploadcomplete", relEvent); - - /* - * If the server has sent a response to the file upload, this event is - * fired and the response is added to its payload. - * - * @event uploadcompletedata - * @param event {Event} The event object for the uploadcompletedata. - *
                - *
                id
                - *
                The id of the file for which the response is being provided.
                - *
                data
                - *
                The content of the server response.
                - *
                - * @deprecated - */ - upswf.on ("uploadcompletedata", relEvent); - - /* - * Provides error information if an error has occurred during the upload. - * - * @event uploaderror - * @param event {Event} The event object for the uploadeerror. - *
                - *
                id
                - *
                The id of the file for which the upload error has occurred.
                - *
                status
                - *
                Relevant error information.
                - *
                - * @deprecated - */ - upswf.on ("uploaderror", relEvent); - - /* - * Provides progress information on a specific file upload. - * - * @event uploadprogress - * @param event {Event} The event object for the uploadprogress. - *
                - *
                id
                - *
                The id of the file for which the progress information is being provided.
                - *
                bytesLoaded
                - *
                The number of bytes of the file that has been uploaded.
                - *
                bytesTotal
                - *
                The total number of bytes in the file that is being uploaded.
                - *
                - * @deprecated - */ - upswf.on ("uploadprogress", relEvent); - - /* - * Announces that the upload has been started for a specific file. - * - * @event uploadstart - * @param event {Event} The event object for the uploadstart. - *
                - *
                id
                - *
                The id of the file whose upload has been started.
                - *
                - * @deprecated - */ - upswf.on ("uploadstart", relEvent); - }, - - /* - * Removes a specific file from the upload queue. - * - * @method removeFile - * @param fileID {String} The ID of the file to be removed - * @return {Object} The updated file list, which is an object of the format: - * fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize} - * @deprecated - */ - removeFile : function (fileID /*String*/) { - return this.uploaderswf.callSWF("removeFile", [fileID]); - }, - - /* - * Clears the upload queue. - * - * @method clearFileList - * @return {Boolean} This method always returns true. - * @deprecated - */ - clearFileList : function () { - return this.uploaderswf.callSWF("clearFileList", []); - }, - - /* - * Starts the upload of a specific file. - * - * @method upload - * @param fileID {String} The ID of the file to be uploaded. - * @param url {String} The URL to upload the file to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @return {Boolean} This method always returns true. - * @deprecated - */ - upload : function (fileID /*String*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - if (Y.Lang.isArray(fileID)) { - return this.uploaderswf.callSWF("uploadThese", [fileID, url, method, postVars, postFileVarName]); - } - else if (Y.Lang.isString(fileID)) { - return this.uploaderswf.callSWF("upload", [fileID, url, method, postVars, postFileVarName]); - - } - }, - - /* - * Starts the upload of a set of files, as specified in the first argument. - * The upload queue is managed automatically. - * - * @method uploadThese - * @param fileIDs {Array} The array of IDs of the files to be uploaded. - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @deprecated - */ - uploadThese : function (fileIDs /*Array*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadThese", [fileIDs, url, method, postVars, postFileVarName]); - }, - - /* - * Starts the upload of the files in the upload queue. - * The upload queue is managed automatically. - * - * @method uploadAll - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default). - * @deprecated - */ - uploadAll : function (url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadAll", [url, method, postVars,postFileVarName]); - }, - - /* - * Cancels the upload of a specific file, if currently in progress. - * - * @method cancel - * @param fileID {String} (optional) The ID of the file whose upload should be cancelled. If no ID is specified, all uploads are cancelled. - * @deprecated - */ - cancel : function (fileID /*String*/) { - return this.uploaderswf.callSWF("cancel", [fileID]); - }, - - /* - * @private - * Setter for the 'log' property. - * @method setAllowLogging - * @param value {Boolean} The value for the 'log' property. - * @deprecated - */ - setAllowLogging : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowLogging", [value]); - }, - - /* - * @private - * Setter for the 'multiFiles' property. - * @method setAllowMultipleFiles - * @param value {Boolean} The value for the 'multiFiles' property. - * @deprecated - */ - setAllowMultipleFiles : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowMultipleFiles", [value]); - }, - - /* - * @private - * Setter for the 'simLimit' property. - * @method setSimUploadLimit - * @param value {Boolean} The value for the 'simLimit' property. - * @deprecated - */ - setSimUploadLimit : function (value /*int*/) { - this.uploaderswf.callSWF("setSimUploadLimit", [value]); - }, - - /* - * @private - * Setter for the 'fileFilters' property. - * @method setFileFilters - * @param value {Boolean} The value for the 'fileFilters' property. - * @deprecated - */ - setFileFilters : function (fileFilters /*Array*/) { - this.uploaderswf.callSWF("setFileFilters", [fileFilters]); - }, - - /* - * Enables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is reset from the "disabled" state. - * - * @method enable - * @deprecated - */ - enable : function () { - this.uploaderswf.callSWF("enable"); - }, - - /* - * Disables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is set to the 'disabled' state. - * - * @method enable - * @deprecated - */ - disable : function () { - this.uploaderswf.callSWF("disable"); - }, - - /* - * @private - * Called when the uploader SWF is initialized - * @method _initializeUploader - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _initializeUploader: function (event) { - this.publish("uploaderReady", {fireOnce:true}); - this.fire("uploaderReady", {}); - }, - - /* - * @private - * Called when an event is dispatched from Uploader - * @method _relayEvent - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _relayEvent: function (event) { - Y.log("Firing event..."); - Y.log(event.type); - this.fire(event.type, event); - }, - - toString: function() - { - return "Uploader " + this._id; - } - -}, -{ - ATTRS: { - /* - * The flag that allows Flash player to - * output debug messages to its trace stack - * (if the Flash debug player is used). - * - * @attribute log - * @type {Boolean} - * @default false - * @deprecated - */ - log: { - value: false, - setter : "setAllowLogging" - }, - - /* - * The flag that allows the user to select - * more than one files during the 'Browse' - * dialog (using 'Shift' or 'Ctrl' keys). - * - * @attribute multiFiles - * @type {Boolean} - * @default false - * @deprecated - */ - multiFiles : { - value: false, - setter : "setAllowMultipleFiles" - }, - - /* - * The number of files that can be uploaded - * simultaneously if the automatic queue management - * is used. This value can be in the range between 2 - * and 5. - * - * @attribute simLimit - * @type {Number} - * @default 2 - * @deprecated - */ - simLimit : { - value: 2, - setter : "setSimUploadLimit" - }, - - /* - * The array of filters on file extensions for - * the 'Browse' dialog. These filters only provide - * convenience for the user and do not strictly - * limit the selection to certain file extensions. - * Each item in the array must contain a 'description' - * property, and an 'extensions' property that must be - * in the form "*.ext;*.ext;*.ext;..." - * - * @attribute fileFilters - * @type {Array} - * @default [] - * @deprecated - */ - fileFilters : { - value: [], - setter : "setFileFilters" - }, - - /* - * The Node containing the uploader's 'Browse' button. - * - * @attribute boundingBox - * @type {Node} - * @default null - * @writeOnce - * @deprecated - */ - boundingBox : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The URL of the image sprite for skinning the uploader's 'Browse' button. - * - * @attribute buttonSkin - * @type {String} - * @default null - * @writeOnce - * @deprecated - */ - buttonSkin : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The flag indicating whether the uploader is rendered - * with a transparent background. - * - * @attribute transparent - * @type {Boolean} - * @default true - * @writeOnce - * @deprecated - */ - transparent : { - value: true, - writeOnce: 'initOnly' - }, - - /* - * The URL of the uploader's SWF. - * - * @attribute swfURL - * @type {String} - * @default "assets/uploader.swf" - * @writeOnce - * @deprecated - */ - swfURL : { - value : SWFURL, - writeOnce: 'initOnly' - } - - } -} -); -Y.Uploader = Uploader; - - -}, '3.9.1' ,{requires:['swf', 'base', 'node', 'event-custom']}); diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js deleted file mode 100644 index e21cd7b26b9..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("uploader-deprecated",function(e){var b=e.Event,c=e.Node;var a=e.Env.cdn+"uploader-deprecated/assets/uploader.swf";function d(f){d.superclass.constructor.apply(this,arguments);if(f.hasOwnProperty("boundingBox")){this.set("boundingBox",f.boundingBox);}if(f.hasOwnProperty("buttonSkin")){this.set("buttonSkin",f.buttonSkin);}if(f.hasOwnProperty("transparent")){this.set("transparent",f.transparent);}if(f.hasOwnProperty("swfURL")){this.set("swfURL",f.swfURL);}}e.extend(d,e.Base,{uploaderswf:null,_id:"",initializer:function(){this._id=e.guid("uploader");var f=c.one(this.get("boundingBox"));var i={version:"10.0.45",fixedAttributes:{allowScriptAccess:"always",allowNetworking:"all",scale:"noscale"},flashVars:{}};if(this.get("buttonSkin")!=""){i.flashVars["buttonSkin"]=this.get("buttonSkin");}if(this.get("transparent")){i.fixedAttributes["wmode"]="transparent";}this.uploaderswf=new e.SWF(f,this.get("swfURL"),i);var h=this.uploaderswf;var g=e.bind(this._relayEvent,this);h.on("swfReady",e.bind(this._initializeUploader,this));h.on("click",g);h.on("fileselect",g);h.on("mousedown",g);h.on("mouseup",g);h.on("mouseleave",g);h.on("mouseenter",g);h.on("uploadcancel",g);h.on("uploadcomplete",g);h.on("uploadcompletedata",g);h.on("uploaderror",g);h.on("uploadprogress",g);h.on("uploadstart",g);},removeFile:function(f){return this.uploaderswf.callSWF("removeFile",[f]);},clearFileList:function(){return this.uploaderswf.callSWF("clearFileList",[]);},upload:function(f,h,j,g,i){if(e.Lang.isArray(f)){return this.uploaderswf.callSWF("uploadThese",[f,h,j,g,i]);}else{if(e.Lang.isString(f)){return this.uploaderswf.callSWF("upload",[f,h,j,g,i]);}}},uploadThese:function(h,g,j,f,i){return this.uploaderswf.callSWF("uploadThese",[h,g,j,f,i]);},uploadAll:function(g,i,f,h){return this.uploaderswf.callSWF("uploadAll",[g,i,f,h]);},cancel:function(f){return this.uploaderswf.callSWF("cancel",[f]);},setAllowLogging:function(f){this.uploaderswf.callSWF("setAllowLogging",[f]);},setAllowMultipleFiles:function(f){this.uploaderswf.callSWF("setAllowMultipleFiles",[f]);},setSimUploadLimit:function(f){this.uploaderswf.callSWF("setSimUploadLimit",[f]);},setFileFilters:function(f){this.uploaderswf.callSWF("setFileFilters",[f]);},enable:function(){this.uploaderswf.callSWF("enable");},disable:function(){this.uploaderswf.callSWF("disable");},_initializeUploader:function(f){this.publish("uploaderReady",{fireOnce:true});this.fire("uploaderReady",{});},_relayEvent:function(f){this.fire(f.type,f);},toString:function(){return"Uploader "+this._id;}},{ATTRS:{log:{value:false,setter:"setAllowLogging"},multiFiles:{value:false,setter:"setAllowMultipleFiles"},simLimit:{value:2,setter:"setSimUploadLimit"},fileFilters:{value:[],setter:"setFileFilters"},boundingBox:{value:null,writeOnce:"initOnly"},buttonSkin:{value:null,writeOnce:"initOnly"},transparent:{value:true,writeOnce:"initOnly"},swfURL:{value:a,writeOnce:"initOnly"}}});e.Uploader=d;},"3.9.1",{requires:["swf","base","node","event-custom"]}); \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js deleted file mode 100644 index 9ad174bd20b..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js +++ /dev/null @@ -1,595 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('uploader-deprecated', function(Y) { - -/** - * Attention: this is the 3.4.1 `uploader` module has been deprecated in favor of a new - * uploader with an HTML5 layer. Please refer to the new Uploader User Guide for migration - * information. - * - * This module uses Flash player transport to upload files to the server, with support for - * file filtering, multiple file uploads and progress monitoring. - * @module uploader-deprecated - * @deprecated - */ - -var Event = Y.Event, - Node = Y.Node; - -var SWFURL = Y.Env.cdn + "uploader-deprecated/assets/uploader.swf"; - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                The Uploader widget is a tool for uploading files to the server.

                - * @module uploader-deprecated - * @title Uploader - * @requires base, node, event, swf - */ - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                Creates the Uploader instance and keeps the initialization data.

                - * - * @class Uploader - * @extends Y.Base - * @constructor - * @param {Object} config (optional) Configuration parameters for the Uploader. The following parameters are available: - *
                - *
                boundingBox : String|Node (required)
                - *
                - *
                buttonSkin : String (optional)
                - *
                - *
                transparent : String (optional)
                - *
                - *
                swfURL : String (optional)
                - *
                - *
                - * @deprecated - */ - -function Uploader (config /*Object*/) { - - Uploader.superclass.constructor.apply(this, arguments); - - if (config.hasOwnProperty("boundingBox")) { - this.set("boundingBox", config.boundingBox); - }; - - if (config.hasOwnProperty("buttonSkin")) { - this.set("buttonSkin", config.buttonSkin); - }; - if (config.hasOwnProperty("transparent")) { - this.set("transparent", config.transparent); - }; - if (config.hasOwnProperty("swfURL")) { - this.set("swfURL", config.swfURL); - }; -}; - - -Y.extend(Uploader, Y.Base, { - - /* - * The reference to the instance of Y.SWF that encapsulates the instance of the Flash player with uploader logic. - * - * @private - * @property uploaderswf - * @type {SWF} - * @default null - * @deprecated - */ - uploaderswf:null, - - /* - * The id of this instance of uploader. - * - * @private - * @property _id - * @type {String} - * @deprecated - */ - _id:"", - - /* - * Construction logic executed during Uploader instantiation. - * - * @method initializer - * @protected - * @deprecated - */ - initializer : function () { - - this._id = Y.guid("uploader"); - var oElement = Node.one(this.get("boundingBox")); - - var params = {version: "10.0.45", - fixedAttributes: {allowScriptAccess:"always", allowNetworking:"all", scale: "noscale"}, - flashVars: {}}; - - if (this.get("buttonSkin") != "") { - params.flashVars["buttonSkin"] = this.get("buttonSkin"); - } - if (this.get("transparent")) { - params.fixedAttributes["wmode"] = "transparent"; - } - - this.uploaderswf = new Y.SWF(oElement, this.get("swfURL"), params); - - var upswf = this.uploaderswf; - var relEvent = Y.bind(this._relayEvent, this); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploaderReady - * @param event {Event} The event object for the uploaderReady. - * @deprecated - */ - upswf.on ("swfReady", Y.bind(this._initializeUploader, this)); - - /* - * Fired when the mouse button is clicked on the Uploader's 'Browse' button. - * - * @event click - * @param event {Event} The event object for the click. - * @deprecated - */ - upswf.on ("click", relEvent); - - /* - * Fires when the user has finished selecting a set of files to be uploaded. - * - * @event fileselect - * @param event {Event} The event object for the fileSelect. - *
                - *
                fileList
                - *
                The file list Object with entries in the following format: - fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize}
                - *
                - * @deprecated - */ - upswf.on ("fileselect", relEvent); - - /* - * Fired when the mouse button is pressed on the Uploader's 'Browse' button. - * - * @event mousedown - * @param event {Event} The event object for the mousedown. - * @deprecated - */ - upswf.on ("mousedown", relEvent); - - /* - * Fired when the mouse button is raised on the Uploader's 'Browse' button. - * - * @event mouseup - * @param event {Event} The event object for the mouseup. - * @deprecated - */ - upswf.on ("mouseup", relEvent); - - /* - * Fired when the mouse leaves the Uploader's 'Browse' button. - * - * @event mouseleave - * @param event {Event} The event object for the mouseleave. - * @deprecated - */ - upswf.on ("mouseleave", relEvent); - - /* - * Fired when the mouse enters the Uploader's 'Browse' button. - * - * @event mouseenter - * @param event {Event} The event object for the mouseenter. - * @deprecated - */ - upswf.on ("mouseenter", relEvent); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploadcancel - * @param event {Event} The event object for the uploaderReady. - *
                - *
                ddEvent
                - *
                drag:start event from the thumb
                - *
                - * @deprecated - */ - upswf.on ("uploadcancel", relEvent); - - /* - * Fires when a specific file's upload is cancelled. - * - * @event uploadcomplete - * @param event {Event} The event object for the uploadcancel. - *
                - *
                id
                - *
                The id of the file whose upload has been cancelled.
                - *
                - * @deprecated - */ - upswf.on ("uploadcomplete", relEvent); - - /* - * If the server has sent a response to the file upload, this event is - * fired and the response is added to its payload. - * - * @event uploadcompletedata - * @param event {Event} The event object for the uploadcompletedata. - *
                - *
                id
                - *
                The id of the file for which the response is being provided.
                - *
                data
                - *
                The content of the server response.
                - *
                - * @deprecated - */ - upswf.on ("uploadcompletedata", relEvent); - - /* - * Provides error information if an error has occurred during the upload. - * - * @event uploaderror - * @param event {Event} The event object for the uploadeerror. - *
                - *
                id
                - *
                The id of the file for which the upload error has occurred.
                - *
                status
                - *
                Relevant error information.
                - *
                - * @deprecated - */ - upswf.on ("uploaderror", relEvent); - - /* - * Provides progress information on a specific file upload. - * - * @event uploadprogress - * @param event {Event} The event object for the uploadprogress. - *
                - *
                id
                - *
                The id of the file for which the progress information is being provided.
                - *
                bytesLoaded
                - *
                The number of bytes of the file that has been uploaded.
                - *
                bytesTotal
                - *
                The total number of bytes in the file that is being uploaded.
                - *
                - * @deprecated - */ - upswf.on ("uploadprogress", relEvent); - - /* - * Announces that the upload has been started for a specific file. - * - * @event uploadstart - * @param event {Event} The event object for the uploadstart. - *
                - *
                id
                - *
                The id of the file whose upload has been started.
                - *
                - * @deprecated - */ - upswf.on ("uploadstart", relEvent); - }, - - /* - * Removes a specific file from the upload queue. - * - * @method removeFile - * @param fileID {String} The ID of the file to be removed - * @return {Object} The updated file list, which is an object of the format: - * fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize} - * @deprecated - */ - removeFile : function (fileID /*String*/) { - return this.uploaderswf.callSWF("removeFile", [fileID]); - }, - - /* - * Clears the upload queue. - * - * @method clearFileList - * @return {Boolean} This method always returns true. - * @deprecated - */ - clearFileList : function () { - return this.uploaderswf.callSWF("clearFileList", []); - }, - - /* - * Starts the upload of a specific file. - * - * @method upload - * @param fileID {String} The ID of the file to be uploaded. - * @param url {String} The URL to upload the file to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @return {Boolean} This method always returns true. - * @deprecated - */ - upload : function (fileID /*String*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - if (Y.Lang.isArray(fileID)) { - return this.uploaderswf.callSWF("uploadThese", [fileID, url, method, postVars, postFileVarName]); - } - else if (Y.Lang.isString(fileID)) { - return this.uploaderswf.callSWF("upload", [fileID, url, method, postVars, postFileVarName]); - - } - }, - - /* - * Starts the upload of a set of files, as specified in the first argument. - * The upload queue is managed automatically. - * - * @method uploadThese - * @param fileIDs {Array} The array of IDs of the files to be uploaded. - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @deprecated - */ - uploadThese : function (fileIDs /*Array*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadThese", [fileIDs, url, method, postVars, postFileVarName]); - }, - - /* - * Starts the upload of the files in the upload queue. - * The upload queue is managed automatically. - * - * @method uploadAll - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default). - * @deprecated - */ - uploadAll : function (url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadAll", [url, method, postVars,postFileVarName]); - }, - - /* - * Cancels the upload of a specific file, if currently in progress. - * - * @method cancel - * @param fileID {String} (optional) The ID of the file whose upload should be cancelled. If no ID is specified, all uploads are cancelled. - * @deprecated - */ - cancel : function (fileID /*String*/) { - return this.uploaderswf.callSWF("cancel", [fileID]); - }, - - /* - * @private - * Setter for the 'log' property. - * @method setAllowLogging - * @param value {Boolean} The value for the 'log' property. - * @deprecated - */ - setAllowLogging : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowLogging", [value]); - }, - - /* - * @private - * Setter for the 'multiFiles' property. - * @method setAllowMultipleFiles - * @param value {Boolean} The value for the 'multiFiles' property. - * @deprecated - */ - setAllowMultipleFiles : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowMultipleFiles", [value]); - }, - - /* - * @private - * Setter for the 'simLimit' property. - * @method setSimUploadLimit - * @param value {Boolean} The value for the 'simLimit' property. - * @deprecated - */ - setSimUploadLimit : function (value /*int*/) { - this.uploaderswf.callSWF("setSimUploadLimit", [value]); - }, - - /* - * @private - * Setter for the 'fileFilters' property. - * @method setFileFilters - * @param value {Boolean} The value for the 'fileFilters' property. - * @deprecated - */ - setFileFilters : function (fileFilters /*Array*/) { - this.uploaderswf.callSWF("setFileFilters", [fileFilters]); - }, - - /* - * Enables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is reset from the "disabled" state. - * - * @method enable - * @deprecated - */ - enable : function () { - this.uploaderswf.callSWF("enable"); - }, - - /* - * Disables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is set to the 'disabled' state. - * - * @method enable - * @deprecated - */ - disable : function () { - this.uploaderswf.callSWF("disable"); - }, - - /* - * @private - * Called when the uploader SWF is initialized - * @method _initializeUploader - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _initializeUploader: function (event) { - this.publish("uploaderReady", {fireOnce:true}); - this.fire("uploaderReady", {}); - }, - - /* - * @private - * Called when an event is dispatched from Uploader - * @method _relayEvent - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _relayEvent: function (event) { - this.fire(event.type, event); - }, - - toString: function() - { - return "Uploader " + this._id; - } - -}, -{ - ATTRS: { - /* - * The flag that allows Flash player to - * output debug messages to its trace stack - * (if the Flash debug player is used). - * - * @attribute log - * @type {Boolean} - * @default false - * @deprecated - */ - log: { - value: false, - setter : "setAllowLogging" - }, - - /* - * The flag that allows the user to select - * more than one files during the 'Browse' - * dialog (using 'Shift' or 'Ctrl' keys). - * - * @attribute multiFiles - * @type {Boolean} - * @default false - * @deprecated - */ - multiFiles : { - value: false, - setter : "setAllowMultipleFiles" - }, - - /* - * The number of files that can be uploaded - * simultaneously if the automatic queue management - * is used. This value can be in the range between 2 - * and 5. - * - * @attribute simLimit - * @type {Number} - * @default 2 - * @deprecated - */ - simLimit : { - value: 2, - setter : "setSimUploadLimit" - }, - - /* - * The array of filters on file extensions for - * the 'Browse' dialog. These filters only provide - * convenience for the user and do not strictly - * limit the selection to certain file extensions. - * Each item in the array must contain a 'description' - * property, and an 'extensions' property that must be - * in the form "*.ext;*.ext;*.ext;..." - * - * @attribute fileFilters - * @type {Array} - * @default [] - * @deprecated - */ - fileFilters : { - value: [], - setter : "setFileFilters" - }, - - /* - * The Node containing the uploader's 'Browse' button. - * - * @attribute boundingBox - * @type {Node} - * @default null - * @writeOnce - * @deprecated - */ - boundingBox : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The URL of the image sprite for skinning the uploader's 'Browse' button. - * - * @attribute buttonSkin - * @type {String} - * @default null - * @writeOnce - * @deprecated - */ - buttonSkin : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The flag indicating whether the uploader is rendered - * with a transparent background. - * - * @attribute transparent - * @type {Boolean} - * @default true - * @writeOnce - * @deprecated - */ - transparent : { - value: true, - writeOnce: 'initOnly' - }, - - /* - * The URL of the uploader's SWF. - * - * @attribute swfURL - * @type {String} - * @default "assets/uploader.swf" - * @writeOnce - * @deprecated - */ - swfURL : { - value : SWFURL, - writeOnce: 'initOnly' - } - - } -} -); -Y.Uploader = Uploader; - - -}, '3.9.1' ,{requires:['swf', 'base', 'node', 'event-custom']}); diff --git a/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf b/lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf deleted file mode 100644 index deca8a2e7e8..00000000000 Binary files a/lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf and /dev/null differ diff --git a/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader/uploader-min.js b/lib/yuilib/3.9.1/build/uploader/uploader-min.js deleted file mode 100644 index 088619fbc97..00000000000 --- a/lib/yuilib/3.9.1/build/uploader/uploader-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("uploader",function(e,t){var n=e.config.win;n&&n.File&&n.FormData&&n.XMLHttpRequest?e.Uploader=e.UploaderHTML5:e.SWFDetect.isFlashVersionAtLeast(10,0,45)?e.Uploader=e.UploaderFlash:(e.namespace("Uploader"),e.Uploader.TYPE="none")},"3.9.1",{requires:["uploader-html5","uploader-flash"]}); diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css b/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css b/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js b/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js deleted file mode 100644 index 8741cc7354c..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-base",function(e,t){function R(e){var t=this,n,r,i=t.constructor;t._strs={},t._cssPrefix=i.CSS_PREFIX||s(i.NAME.toLowerCase()),e=e||{},R.superclass.constructor.call(t,e),r=t.get(T),r&&(r!==P&&(n=r),t.render(n))}var n=e.Lang,r=e.Node,i=e.ClassNameManager,s=i.getClassName,o,u=e.cached(function(e){return e.substring(0,1).toUpperCase()+e.substring(1)}),a="content",f="visible",l="hidden",c="disabled",h="focused",p="width",d="height",v="boundingBox",m="contentBox",g="parentNode",y="ownerDocument",b="auto",w="srcNode",E="body",S="tabIndex",x="id",T="render",N="rendered",C="destroyed",k="strings",L="
                ",A="Change",O="loading",M="_uiSet",_="",D=function(){},P=!0,H=!1,B,j={},F=[f,c,d,p,h,S],I=e.UA.webkit,q={};R.NAME="widget",B=R.UI_SRC="ui",R.ATTRS=j,j[x]={valueFn:"_guid",writeOnce:P},j[N]={value:H,readOnly:P},j[v]={value:null,setter:"_setBB",writeOnce:P},j[m]={valueFn:"_defaultCB",setter:"_setCB",writeOnce:P},j[S]={value:null,validator:"_validTabIndex"},j[h]={value:H,readOnly:P},j[c]={value:H},j[f]={value:P},j[d]={value:_},j[p]={value:_},j[k]={value:{},setter:"_strSetter",getter:"_strGetter"},j[T]={value:H,writeOnce:P},R.CSS_PREFIX=s(R.NAME.toLowerCase()),R.getClassName=function(){return s.apply(i,[R.CSS_PREFIX].concat(e.Array(arguments),!0))},o=R.getClassName,R.getByNode=function(t){var n,i=o();return t=r.one(t),t&&(t=t.ancestor("."+i,!0),t&&(n=q[e.stamp(t,!0)])),n||null},e.extend(R,e.Base,{getClassName:function(){return s.apply(i,[this._cssPrefix].concat(e.Array(arguments),!0))},initializer:function(t){var n=this.get(v);n instanceof r&&this._mapInstance(e.stamp(n)),this._applyParser&&this._applyParser(t)},_mapInstance:function(e){q[e]=this},destructor:function(){var t=this.get(v),n;t instanceof r&&(n=e.stamp(t,!0),n in q&&delete q[n],this._destroyBox())},destroy:function(e){return this._destroyAllNodes=e,R.superclass.destroy.apply(this)},_destroyBox:function(){var e=this.get(v),t=this.get(m),n=this._destroyAllNodes,r;r=e&&e.compareTo(t),this.UI_EVENTS&&this._destroyUIEvents(),this._unbindUI(e),n?(e.empty(),e.remove(P)):(t&&t.remove(P),r||e.remove(P))},render:function(e){return!this.get(C)&&!this.get(N)&&(this.publish(T,{queuable:H,fireOnce:P,defaultTargetOnly:P,defaultFn:this._defRenderFn}),this.fire(T,{parentNode:e?r.one(e):null})),this},_defRenderFn:function(e){this._parentNode=e.parentNode,this.renderer(),this._set(N,P),this._removeLoadingClassNames()},renderer:function(){var e=this;e._renderUI(),e.renderUI(),e._bindUI(),e.bindUI(),e._syncUI(),e.syncUI()},bindUI:D,renderUI:D,syncUI:D,hide:function(){return this.set(f,H)},show:function(){return this.set(f,P)},focus:function(){return this._set(h,P)},blur:function(){return this._set(h,H)},enable:function(){return this.set(c,H)},disable:function(){return this.set(c,P)},_uiSizeCB:function(e){this.get(m).toggleClass(o(a,"expanded"),e)},_renderBox:function(e){var t=this,n=t.get(m),i=t.get(v),s=t.get(w),o=t.DEF_PARENT_NODE,u=s&&s.get(y)||i.get(y)||n.get(y);s&&!s.compareTo(n)&&!n.inDoc(u)&&s.replace(n),!i.compareTo(n.get(g))&&!i.compareTo(n)&&(n.inDoc(u)&&n.replace(i),i.appendChild(n)),e=e||o&&r.one(o),e?e.appendChild(i):i.inDoc(u)||r.one(E).insert(i,0)},_setBB:function(e){return this._setBox(this.get(x),e,this.BOUNDING_TEMPLATE,!0)},_setCB:function(e){return this.CONTENT_TEMPLATE===null?this.get(v):this._setBox(null,e,this.CONTENT_TEMPLATE,!1)},_defaultCB:function(e){return this.get(w)||null},_setBox:function(t,n,i,s){return n=r.one(n),n||(n=r.create(i),s?this._bbFromTemplate=!0:this._cbFromTemplate=!0),n.get(x)||n.set(x,t||e.guid()),n},_renderUI:function(){this._renderBoxClassNames(),this._renderBox(this._parentNode)},_renderBoxClassNames:function(){var e=this._getClasses(),t,n=this.get(v),r;n.addClass(o());for(r=e.length-3;r>=0;r--)t=e[r],n.addClass(t.CSS_PREFIX||s(t.NAME.toLowerCase()));this.get(m).addClass(this.getClassName(a))},_removeLoadingClassNames:function(){var e=this.get(v),t=this.get(m),n=this.getClassName(O),r=o(O);e.removeClass(r).removeClass(n),t.removeClass(r).removeClass(n)},_bindUI:function(){this._bindAttrUI(this._UI_ATTRS.BIND),this._bindDOM()},_unbindUI:function(e){this._unbindDOM(e)},_bindDOM:function(){var t=this.get(v).get(y),n=R._hDocFocus;n||(n=R._hDocFocus=t.on("focus",this._onDocFocus,this),n.listeners={count:0}),n.listeners[e.stamp(this,!0)]=!0,n.listeners.count++,I&&(this._hDocMouseDown=t.on("mousedown",this._onDocMouseDown,this))},_unbindDOM:function(t){var n=R._hDocFocus,r=e.stamp(this,!0),i,s=this._hDocMouseDown;n&&(i=n.listeners,i[r]&&(delete i[r],i.count--),i.count===0&&(n.detach(),R._hDocFocus=null)),I&&s&&s.detach()},_syncUI:function(){this._syncAttrUI(this._UI_ATTRS.SYNC)},_uiSetHeight:function(e){this._uiSetDim(d,e),this._uiSizeCB(e!==_&&e!==b)},_uiSetWidth:function(e){this._uiSetDim(p,e)},_uiSetDim:function(e,t){this.get(v).setStyle(e,n.isNumber(t)?t+this.DEF_UNIT:t)},_uiSetVisible:function(e){this.get(v).toggleClass(this.getClassName(l),!e)},_uiSetDisabled:function(e){this.get(v).toggleClass(this.getClassName(c),e)},_uiSetFocused:function(e,t){var n=this.get(v);n.toggleClass(this.getClassName(h),e),t!==B&&(e?n.focus():n.blur())},_uiSetTabIndex:function(e){var t=this.get(v);n.isNumber(e)?t.set(S,e):t.removeAttribute(S)},_onDocMouseDown:function(e){this._domFocus&&this._onDocFocus(e)},_onDocFocus:function(e){var t=R.getByNode(e.target),n=R._active;n&&n!==t&&(n._domFocus=!1,n._set(h,!1,{src:B}),R._active=null),t&&(t._domFocus=!0,t._set(h,!0,{src:B}),R._active=t)},toString:function(){return this.name+"["+this.get(x)+"]"},DEF_UNIT:"px",DEF_PARENT_NODE:null,CONTENT_TEMPLATE:L,BOUNDING_TEMPLATE:L,_guid:function(){return e.guid()},_validTabIndex:function(e){return n.isNumber(e)||n.isNull(e)},_bindAttrUI:function(e){var t,n=e.length;for(t=0;t=0;r--)i=t[r].HTML_PARSER,i&&e.mix(n,i,!0);return n}})},"3.9.1",{requires:["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css b/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css deleted file mode 100644 index aa4479600b0..00000000000 --- a/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* WidgetModality core styles */ diff --git a/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js b/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js deleted file mode 100644 index e1ddde3b5e2..00000000000 --- a/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-modality",function(e,t){function y(e){}var n="widget",r="renderUI",i="bindUI",s="syncUI",o="boundingBox",u="contentBox",a="visible",f="zIndex",l="Change",c=e.Lang.isBoolean,h=e.ClassNameManager.getClassName,p="maskShow",d="maskHide",v="clickoutside",m="focusoutside",g=function(){ -/*! IS_POSITION_FIXED_SUPPORTED - Juriy Zaytsev (kangax) - http://yura.thinkweb2.com/cft/ */ -;var t=e.config.doc,n=null,r,i;return t.createElement&&(r=t.createElement("div"),r&&r.style&&(r.style.position="fixed",r.style.top="10px",i=t.body,i&&i.appendChild&&i.removeChild&&(i.appendChild(r),n=r.offsetTop===10,i.removeChild(r)))),n}(),b="modal",w="mask",E={modal:h(n,b),mask:h(n,w)};y.ATTRS={maskNode:{getter:"_getMaskNode",readOnly:!0},modal:{value:!1,validator:c},focusOn:{valueFn:function(){return[{eventName:v},{eventName:m}]},validator:e.Lang.isArray}},y.CLASSES=E,y._GET_MASK=function(){var t=e.one("."+E.mask),n=e.one("win");return t?t:(t=e.Node.create("
                ").addClass(E.mask),g?t.setStyles({position:"fixed",width:"100%",height:"100%",top:"0",left:"0",display:"block"}):t.setStyles({position:"absolute",width:n.get("winWidth")+"px",height:n.get("winHeight")+"px",top:"0",left:"0",display:"block"}),t)},y.STACK=[],y.prototype={initializer:function(){e.after(this._renderUIModal,this,r),e.after(this._syncUIModal,this,s),e.after(this._bindUIModal,this,i)},destructor:function(){this._uiSetHostVisibleModal(!1)},_uiHandlesModal:null,_renderUIModal:function(){var e=this.get(o);this._repositionMask(this),e.addClass(E.modal)},_bindUIModal:function(){this.after(a+l,this._afterHostVisibleChangeModal),this.after(f+l,this._afterHostZIndexChangeModal),this.after("focusOnChange",this._afterFocusOnChange),(!g||e.UA.ios&&e.UA.ios<5||e.UA.android&&e.UA.android<3)&&e.one("win").on("scroll",this._resyncMask,this)},_syncUIModal:function(){this._uiSetHostVisibleModal(this.get(a)),this._uiSetHostZIndexModal(this.get(f))},_focus:function(e){var t=this.get(o),n=t.get("tabIndex");t.set("tabIndex",n>=0?n:0),this.focus()},_blur:function(){this.blur()},_getMaskNode:function(){return y._GET_MASK()},_uiSetHostVisibleModal:function(t){var n=y.STACK,r=this.get("maskNode"),i=this.get("modal"),s,o;t?(e.Array.each(n,function(e){e._detachUIHandlesModal(),e._blur()}),n.unshift(this),this._repositionMask(this),this._uiSetHostZIndexModal(this.get(f)),i&&(r.show(),e.later(1,this,"_attachUIHandlesModal"),this._focus())):(o=e.Array.indexOf(n,this),o>=0&&n.splice(o,1),this._detachUIHandlesModal(),this._blur(),n.length?(s=n[0],this._repositionMask(s),s._uiSetHostZIndexModal(s.get(f)),s.get("modal")&&(e.later(1,s,"_attachUIHandlesModal"),s._focus())):r.getStyle("display")==="block"&&r.hide())},_uiSetHostZIndexModal:function(e){this.get("modal")&&this.get("maskNode").setStyle(f,e||0)},_attachUIHandlesModal:function(){if(this._uiHandlesModal||y.STACK[0]!==this)return;var t=this.get(o),n=this.get("maskNode"),r=this.get("focusOn"),i=e.bind(this._focus,this),s=[],u,a,f;for(u=0,a=r.length;u1?!0:!1;return t},_repositionMask:function(t){var n=this.get("modal"),r=t.get("modal"),i=this.get("maskNode"),s,u;if(n&&!r)i.remove(),this.fire(d);else if(!n&&r||n&&r)i.remove(),this.fire(d),s=t.get(o),u=s.get("parentNode")||e.one("body"),u.insert(i,u.get("firstChild")),this.fire(p)},_resyncMask:function(e){var t=e.currentTarget,n=t.get("docScrollX"),r=t.get("docScrollY"),i=t.get("innerWidth")||t.get("winWidth"),s=t.get("innerHeight")||t.get("winHeight"),o=this.get("maskNode");o.setStyles({top:r+"px",left:n+"px",width:i+"px",height:s+"px"})},_afterFocusOnChange:function(e){this._detachUIHandlesModal(),this.get(a)&&this._attachUIHandlesModal()}},e.WidgetModality=y},"3.9.1",{requires:["base-build","event-outside","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js b/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js deleted file mode 100644 index 634522d18bd..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position-align",function(e,t){function c(t){this._posNode||e.error("WidgetPosition needs to be added to the Widget, before WidgetPositionAlign is added"),e.after(this._bindUIPosAlign,this,"bindUI"),e.after(this._syncUIPosAlign,this,"syncUI")}var n=e.Lang,r="align",i="alignOn",s="visible",o="boundingBox",u="offsetWidth",a="offsetHeight",f="region",l="viewportRegion";c.ATTRS={align:{value:null},centered:{setter:"_setAlignCenter",lazyAdd:!1,value:!1},alignOn:{value:[],validator:e.Lang.isArray}},c.TL="tl",c.TR="tr",c.BL="bl",c.BR="br",c.TC="tc",c.RC="rc",c.BC="bc",c.LC="lc",c.CC="cc",c.prototype={_posAlignUIHandles:null,destructor:function(){this._detachPosAlignUIHandles()},_bindUIPosAlign:function(){this.after("alignChange",this._afterAlignChange),this.after("alignOnChange",this._afterAlignOnChange),this.after("visibleChange",this._syncUIPosAlign)},_syncUIPosAlign:function(){var e=this.get(r);this._uiSetVisiblePosAlign(this.get(s)),e&&this._uiSetAlign(e.node,e.points)},align:function(e,t){return arguments.length?this.set(r,{node:e,points:t}):this._syncUIPosAlign(),this},centered:function(e){return this.align(e,[c.CC,c.CC])},_setAlignCenter:function(e){return e&&this.set(r,{node:e===!0?null:e,points:[c.CC,c.CC]}),e},_uiSetAlign:function(t,r){if(!n.isArray(r)||r.length!==2){e.error("align: Invalid Points Arguments");return}var i=this._getRegion(t),s,o,u;if(!i)return;s=r[0],o=r[1];switch(o){case c.TL:u=[i.left,i.top];break;case c.TR:u=[i.right,i.top];break;case c.BL:u=[i.left,i.bottom];break;case c.BR:u=[i.right,i.bottom];break;case c.TC:u=[i.left+Math.floor(i.width/2),i.top];break;case c.BC:u=[i.left+Math.floor(i.width/2),i.bottom];break;case c.LC:u=[i.left,i.top+Math.floor(i.height/2)];break;case c.RC:u=[i.right,i.top+Math.floor(i.height/2)];break;case c.CC:u=[i.left+Math.floor(i.width/2),i.top+Math.floor(i.height/2)];break;default:}u&&this._doAlign(s,u[0],u[1])},_uiSetVisiblePosAlign:function(e){e?this._attachPosAlignUIHandles():this._detachPosAlignUIHandles()},_attachPosAlignUIHandles:function(){if(this._posAlignUIHandles)return;var t=this.get(o),n=e.bind(this._syncUIPosAlign,this),r=[];e.Array.each(this.get(i),function(i){var s=i.eventName,o=e.one(i.node)||t;s&&r.push(o.on(s,n))}),this._posAlignUIHandles=r},_detachPosAlignUIHandles:function(){var t=this._posAlignUIHandles;t&&((new e.EventHandle(t)).detach(),this._posAlignUIHandles=null)},_doAlign:function(e,t,n){var r=this._posNode,i;switch(e){case c.TL:i=[t,n];break;case c.TR:i=[t-r.get(u),n];break;case c.BL:i=[t,n-r.get(a)];break;case c.BR:i=[t-r.get(u),n-r.get(a)];break;case c.TC:i=[t-r.get(u)/2,n];break;case c.BC:i=[t-r.get(u)/2,n-r.get(a)];break;case c.LC:i=[t,n-r.get(a)/2];break;case c.RC:i=[t-r.get(u),n-r.get(a)/2];break;case c.CC:i=[t-r.get(u)/2,n-r.get(a)/2];break;default:}i&&this.move(i)},_getRegion:function(t){var n;return t?(t=e.Node.one(t),t&&(n=t.get(f))):n=this._posNode.get(l),n},_afterAlignChange:function(e){var t=e.newVal;t&&this._uiSetAlign(t.node,t.points)},_afterAlignOnChange:function(e){this._detachPosAlignUIHandles(),this.get(s)&&this._attachPosAlignUIHandles()}},e.WidgetPositionAlign=c},"3.9.1",{requires:["widget-position"]}); diff --git a/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js b/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js deleted file mode 100644 index e0f02fb0140..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position-constrain",function(e,t){function m(t){this._posNode||e.error("WidgetPosition needs to be added to the Widget, before WidgetPositionConstrain is added"),e.after(this._bindUIPosConstrained,this,a)}var n="constrain",r="constrain|xyChange",i="constrainChange",s="preventOverlap",o="align",u="",a="bindUI",f="xy",l="x",c="y",h=e.Node,p="viewportRegion",d="region",v;m.ATTRS={constrain:{value:null,setter:"_setConstrain"},preventOverlap:{value:!1}},v=m._PREVENT_OVERLAP={x:{tltr:1,blbr:1,brbl:1,trtl:1},y:{trbr:1,tlbl:1,bltl:1,brtr:1}},m.prototype={getConstrainedXY:function(e,t){t=t||this.get(n);var r=this._getRegion(t===!0?null:t),i=this._posNode.get(d);return[this._constrain(e[0],l,i,r),this._constrain(e[1],c,i,r)]},constrain:function(e,t){var r,i,s=t||this.get(n);s&&(r=e||this.get(f),i=this.getConstrainedXY(r,s),(i[0]!==r[0]||i[1]!==r[1])&&this.set(f,i,{constrained:!0}))},_setConstrain:function(e){return e===!0?e:h.one(e)},_constrain:function(e,t,n,r){if(r){this.get(s)&&(e=this._preventOverlap(e,t,n,r));var i=t==l,o=i?r.width:r.height,u=i?n.width:n.height,a=i?r.left:r.top,f=i?r.right-u:r.bottom-u;if(ef)uf&&(e=f):e=a}return e},_preventOverlap:function(e,t,n,r){var i=this.get(o),s=t===l,a,f,c,h,p,d;return i&&i.points&&v[t][i.points.join(u)]&&(f=this._getRegion(i.node),f&&(a=s?n.width:n.height,c=s?f.left:f.top,h=s?f.right:f.bottom,p=s?f.left-r.left:f.top-r.top,d=s?r.right-f.right:r.bottom-f.bottom),e>c?da&&(e=c-a):pa&&(e=h)),e},_bindUIPosConstrained:function(){this.after(i,this._afterConstrainChange),this._enableConstraints(this.get(n))},_afterConstrainChange:function(e){this._enableConstraints(e.newVal)},_enableConstraints:function(e){e?(this.constrain(),this._cxyHandle=this._cxyHandle||this.on(r,this._constrainOnXYChange)):this._cxyHandle&&(this._cxyHandle.detach(),this._cxyHandle=null)},_constrainOnXYChange:function(e){e.constrained||(e.newVal=this.getConstrainedXY(e.newVal))},_getRegion:function(e){var t;return e?(e=h.one(e),e&&(t=e.get(d))):t=this._posNode.get(p),t}},e.WidgetPositionConstrain=m},"3.9.1",{requires:["widget-position"]}); diff --git a/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js b/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js deleted file mode 100644 index 27251445b14..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position",function(e,t){function d(t){this._posNode=this.get(u),e.after(this._renderUIPosition,this,f),e.after(this._syncUIPosition,this,c),e.after(this._bindUIPosition,this,l)}var n=e.Lang,r=e.Widget,i="xy",s="position",o="positioned",u="boundingBox",a="relative",f="renderUI",l="bindUI",c="syncUI",h=r.UI_SRC,p="xyChange";d.ATTRS={x:{setter:function(e){this._setX(e)},getter:function(){return this._getX()},lazyAdd:!1},y:{setter:function(e){this._setY(e)},getter:function(){return this._getY()},lazyAdd:!1},xy:{value:[0,0],validator:function(e){return this._validateXY(e)}}},d.POSITIONED_CLASS_NAME=r.getClassName(o),d.prototype={_renderUIPosition:function(){this._posNode.addClass(d.POSITIONED_CLASS_NAME)},_syncUIPosition:function(){var e=this._posNode;e.getStyle(s)===a&&this.syncXY(),this._uiSetXY(this.get(i))},_bindUIPosition:function(){this.after(p,this._afterXYChange)},move:function(){var e=arguments,t=n.isArray(e[0])?e[0]:[e[0],e[1]];this.set(i,t)},syncXY:function(){this.set(i,this._posNode.getXY(),{src:h})},_validateXY:function(e){return n.isArray(e)&&n.isNumber(e[0])&&n.isNumber(e[1])},_setX:function(e){this.set(i,[e,this.get(i)[1]])},_setY:function(e){this.set(i,[this.get(i)[0],e])},_getX:function(){return this.get(i)[0]},_getY:function(){return this.get(i)[1]},_afterXYChange:function(e){e.src!=h&&this._uiSetXY(e.newVal)},_uiSetXY:function(e){this._posNode.setXY(e)}},e.WidgetPosition=d},"3.9.1",{requires:["base-build","node-screen","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js deleted file mode 100644 index bc4b48acace..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js +++ /dev/null @@ -1,44 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('widget-skin', function (Y, NAME) { - -/** - * Provides skin related utlility methods. - * - * @module widget - * @submodule widget-skin - */ - -var BOUNDING_BOX = "boundingBox", - CONTENT_BOX = "contentBox", - SKIN = "skin", - _getClassName = Y.ClassNameManager.getClassName; - -/** - * Returns the name of the skin that's currently applied to the widget. - * This is only really useful after the widget's DOM structure is in the - * document, either by render or by progressive enhancement. Searches up - * the Widget's ancestor axis for a class yui3-skin-(name), and returns the - * (name) portion. Otherwise, returns null. - * - * @method getSkinName - * @for Widget - * @return {String} the name of the skin, or null (yui3-skin-sam => sam) - */ - -Y.Widget.prototype.getSkinName = function () { - var root = this.get( CONTENT_BOX ) || this.get( BOUNDING_BOX ), - search = new RegExp( '\\b' + _getClassName( SKIN ) + '-(\\S+)' ), - match; - - if ( root ) { - root.ancestor( function ( node ) { - match = node.get( 'className' ).match( search ); - return match; - } ); - } - - return ( match ) ? match[1] : null; -}; - - -}, '3.9.1', {"requires": ["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js deleted file mode 100644 index 9bbdd1cdceb..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-skin",function(e,t){var n="boundingBox",r="contentBox",i="skin",s=e.ClassNameManager.getClassName;e.Widget.prototype.getSkinName=function(){var e=this.get(r)||this.get(n),t=new RegExp("\\b"+s(i)+"-(\\S+)"),o;return e&&e.ancestor(function(e){return o=e.get("className").match(t),o}),o?o[1]:null}},"3.9.1",{requires:["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js deleted file mode 100644 index bc4b48acace..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js +++ /dev/null @@ -1,44 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('widget-skin', function (Y, NAME) { - -/** - * Provides skin related utlility methods. - * - * @module widget - * @submodule widget-skin - */ - -var BOUNDING_BOX = "boundingBox", - CONTENT_BOX = "contentBox", - SKIN = "skin", - _getClassName = Y.ClassNameManager.getClassName; - -/** - * Returns the name of the skin that's currently applied to the widget. - * This is only really useful after the widget's DOM structure is in the - * document, either by render or by progressive enhancement. Searches up - * the Widget's ancestor axis for a class yui3-skin-(name), and returns the - * (name) portion. Otherwise, returns null. - * - * @method getSkinName - * @for Widget - * @return {String} the name of the skin, or null (yui3-skin-sam => sam) - */ - -Y.Widget.prototype.getSkinName = function () { - var root = this.get( CONTENT_BOX ) || this.get( BOUNDING_BOX ), - search = new RegExp( '\\b' + _getClassName( SKIN ) + '-(\\S+)' ), - match; - - if ( root ) { - root.ancestor( function ( node ) { - match = node.get( 'className' ).match( search ); - return match; - } ); - } - - return ( match ) ? match[1] : null; -}; - - -}, '3.9.1', {"requires": ["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css b/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css b/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js b/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js deleted file mode 100644 index 5ea7fd01e4c..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-stack",function(e,t){function O(t){this._stackNode=this.get(f),this._stackHandles={},e.after(this._renderUIStack,this,l),e.after(this._syncUIStack,this,h),e.after(this._bindUIStack,this,c)}var n=e.Lang,r=e.UA,i=e.Node,s=e.Widget,o="zIndex",u="shim",a="visible",f="boundingBox",l="renderUI",c="bindUI",h="syncUI",p="offsetWidth",d="offsetHeight",v="parentNode",m="firstChild",g="ownerDocument",y="width",b="height",w="px",E="shimdeferred",S="shimresize",x="visibleChange",T="widthChange",N="heightChange",C="shimChange",k="zIndexChange",L="contentUpdate",A="stacked";O.ATTRS={shim:{value:r.ie==6},zIndex:{value:0,setter:"_setZIndex"}},O.HTML_PARSER={zIndex:function(e){return this._parseZIndex(e)}},O.SHIM_CLASS_NAME=s.getClassName(u),O.STACKED_CLASS_NAME=s.getClassName(A),O.SHIM_TEMPLATE='',O.prototype={_syncUIStack:function(){this._uiSetShim(this.get(u)),this._uiSetZIndex(this.get(o))},_bindUIStack:function(){this.after(C,this._afterShimChange),this.after(k,this._afterZIndexChange)},_renderUIStack:function(){this._stackNode.addClass(O.STACKED_CLASS_NAME)},_parseZIndex:function(e){var t;return!e.inDoc()||e.getStyle("position")==="static"?t="auto":t=e.getComputedStyle("zIndex"),t==="auto"?null:t},_setZIndex:function(e){return n.isString(e)&&(e=parseInt(e,10)),n.isNumber(e)||(e=0),e},_afterShimChange:function(e){this._uiSetShim(e.newVal)},_afterZIndexChange:function(e){this._uiSetZIndex(e.newVal)},_uiSetZIndex:function(e){this._stackNode.setStyle(o,e)},_uiSetShim:function(e){e?(this.get(a)?this._renderShim():this._renderShimDeferred(),r.ie==6&&this._addShimResizeHandlers()):this._destroyShim()},_renderShimDeferred:function(){this._stackHandles[E]=this._stackHandles[E]||[];var e=this._stackHandles[E],t=function(e){e.newVal&&this._renderShim()};e.push(this.on(x,t))},_addShimResizeHandlers:function(){this._stackHandles[S]=this._stackHandles[S]||[];var e=this.sizeShim,t=this._stackHandles[S];t.push(this.after(x,e)),t.push(this.after(T,e)),t.push(this.after(N,e)),t.push(this.after(L,e))},_detachStackHandles:function(e){var t=this._stackHandles[e],n;if(t&&t.length>0)while(n=t.pop())n.detach()},_renderShim:function(){var e=this._shimNode,t=this._stackNode;e||(e=this._shimNode=this._getShimTemplate(),t.insertBefore(e,t.get(m)),this._detachStackHandles(E),this.sizeShim())},_destroyShim:function(){this._shimNode&&(this._shimNode.get(v).removeChild(this._shimNode),this._shimNode=null,this._detachStackHandles(E),this._detachStackHandles(S))},sizeShim:function(){var e=this._shimNode,t=this._stackNode;e&&r.ie===6&&this.get(a)&&(e.setStyle(y,t.get(p)+w),e.setStyle(b,t.get(d)+w))},_getShimTemplate:function(){return i.create(O.SHIM_TEMPLATE,this._stackNode.get(g))}},e.WidgetStack=O},"3.9.1",{requires:["base-build","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js b/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js deleted file mode 100644 index 859c0377cc1..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-stdmod",function(e,t){function H(t){this._stdModNode=this.get(w),e.before(this._renderUIStdMod,this,O),e.before(this._bindUIStdMod,this,M),e.before(this._syncUIStdMod,this,_)}var n=e.Lang,r=e.Node,i=e.UA,s=e.Widget,o="",u="hd",a="bd",f="ft",l="header",c="body",h="footer",p="fillHeight",d="stdmod",v="Node",m="Content",g="firstChild",y="childNodes",b="ownerDocument",w="contentBox",E="height",S="offsetHeight",x="auto",T="headerContentChange",N="bodyContentChange",C="footerContentChange",k="fillHeightChange",L="heightChange",A="contentUpdate",O="renderUI",M="bindUI",_="syncUI",D="_applyParsedConfig",P=e.Widget.UI_SRC;H.HEADER=l,H.BODY=c,H.FOOTER=h,H.AFTER="after",H.BEFORE="before",H.REPLACE="replace";var B=H.HEADER,j=H.BODY,F=H.FOOTER,I=B+m,q=F+m,R=j+m;H.ATTRS={headerContent:{value:null},footerContent:{value:null},bodyContent:{value:null},fillHeight:{value:H.BODY,validator:function(e){return this._validateFillHeight(e)}}},H.HTML_PARSER={headerContent:function(e){return this._parseStdModHTML(B)},bodyContent:function(e){return this._parseStdModHTML(j)},footerContent:function(e){return this._parseStdModHTML(F)}},H.SECTION_CLASS_NAMES={header:s.getClassName(u),body:s.getClassName(a),footer:s.getClassName(f)},H.TEMPLATES={header:'
                ',body:'
                ',footer:'
                '},H.prototype={_syncUIStdMod:function(){var e=this._stdModParsed;(!e||!e[I])&&this._uiSetStdMod(B,this.get(I)),(!e||!e[R])&&this._uiSetStdMod(j,this.get(R)),(!e||!e[q])&&this._uiSetStdMod(F,this.get(q)),this._uiSetFillHeight(this.get(p))},_renderUIStdMod:function(){this._stdModNode.addClass(s.getClassName(d)),this._renderStdModSections(),this.after(T,this._afterHeaderChange),this.after(N,this._afterBodyChange),this.after(C,this._afterFooterChange)},_renderStdModSections:function(){n.isValue(this.get(I))&&this._renderStdMod(B),n.isValue(this.get(R))&&this._renderStdMod(j),n.isValue(this.get(q))&&this._renderStdMod(F)},_bindUIStdMod:function(){this.after(k,this._afterFillHeightChange),this.after(L,this._fillHeight),this.after(A,this._fillHeight)},_afterHeaderChange:function(e){e.src!==P&&this._uiSetStdMod(B,e.newVal,e.stdModPosition)},_afterBodyChange:function(e){e.src!==P&&this._uiSetStdMod(j,e.newVal,e.stdModPosition)},_afterFooterChange:function(e){e.src!==P&&this._uiSetStdMod(F,e.newVal,e.stdModPosition)},_afterFillHeightChange:function(e){this._uiSetFillHeight(e.newVal)},_validateFillHeight:function(e){return!e||e==H.BODY||e==H.HEADER||e==H.FOOTER},_uiSetFillHeight:function(e){var t=this.getStdModNode(e),n=this._currFillNode;n&&t!==n&&n.setStyle(E,o),t&&(this._currFillNode=t),this._fillHeight()},_fillHeight:function(){if(this.get(p)){var e=this.get(E);e!=o&&e!=x&&this.fillHeight(this._currFillNode)}},_uiSetStdMod:function(e,t,r){if(n.isValue(t)){var i=this.getStdModNode(e,!0);this._addStdModContent(i,t,r),this.set(e+m,this._getStdModContent(e),{src:P})}else this._eraseStdMod(e);this.fire(A)},_renderStdMod:function(e){var t=this.get(w),n=this._findStdModSection(e);return n||(n=this._getStdModTemplate(e)),this._insertStdModSection(t,e,n),this[e+v]=n,this[e+v]},_eraseStdMod:function(e){var t=this.getStdModNode(e);t&&(t.remove(!0),delete this[e+v])},_insertStdModSection:function(e,t,n){var r=e.get(g);if(t===F||!r)e.appendChild(n);else if(t===B)e.insertBefore(n,r);else{var i=this[F+v];i?e.insertBefore(n,i):e.appendChild(n)}},_getStdModTemplate:function(e){return r.create(H.TEMPLATES[e],this._stdModNode.get(b))},_addStdModContent:function(e,t,n){switch(n){case H.BEFORE:n=0;break;case H.AFTER:n=undefined;break;default:n=H.REPLACE}e.insert(t,n)},_getPreciseHeight:function(e){var t=e?e.get(S):0,n="getBoundingClientRect";if(e&&e.hasMethod(n)){var r=e.invoke(n);r&&(t=r.bottom-r.top)}return t},_findStdModSection:function(e){return this.get(w).one("> ."+H.SECTION_CLASS_NAMES[e])},_parseStdModHTML:function(t){var n=this._findStdModSection(t);return n?(this._stdModParsed||(this._stdModParsed={},e.before(this._applyStdModParsedConfig,this,D)),this._stdModParsed[t+m]=1,n.get("innerHTML")):null},_applyStdModParsedConfig:function(e,t,n){var r=this._stdModParsed;r&&(r[I]=!(I in t)&&I in r,r[R]=!(R in t)&&R in r,r[q]=!(q in t)&&q in r)},_getStdModContent:function(e){return this[e+v]?this[e+v].get(y):null},setStdModContent:function(e,t,n){this.set(e+m,t,{stdModPosition:n})},getStdModNode:function(e,t){var n=this[e+v]||null;return!n&&t&&(n=this._renderStdMod(e)),n},fillHeight:function(e){if(e){var t=this.get(w),r=[this.headerNode,this.bodyNode,this.footerNode],s,o,u=0,a=0,f=!1;for(var l=0,c=r.length;l=0&&e.set(S,a)))}}},e.WidgetStdMod=H},"3.9.1",{requires:["base-build","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js b/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js deleted file mode 100644 index 88a1f35a41c..00000000000 --- a/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js +++ /dev/null @@ -1,7 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
                ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger -:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}); diff --git a/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js b/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js deleted file mode 100644 index de5c81f26a2..00000000000 --- a/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["intl-base"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
                ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js b/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js deleted file mode 100644 index 0feafd83fa0..00000000000 --- a/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js b/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js deleted file mode 100644 index 383d6689206..00000000000 --- a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js +++ /dev/null @@ -1,15 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
                ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires: -["yui-base"]}),YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.9.1"),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("loader-base",function(e,t){YUI.Env[e.version]||function(){var t=e.version,n="/build/",r=t+n,i=e.Env.base,s="gallery-2013.02.27-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h},p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]=l}();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.9.1",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.9.1",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native" -,test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-base":{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-responsive":{optional:["cssreset","cssfonts"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssreset","cssfonts"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base" -,"dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key" -,"event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim" -,test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["base-build","dom-screen","event-resize","node-pluginhost","plugin"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},profiler:{requires:["yui-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked" -,"series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="660f328e92276f36e9abfafb02169183"},"3.9.1",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js b/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js deleted file mode 100644 index 32d7a9ef644..00000000000 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-throttle",function(e,t){ -/*! Based on work by Simon Willison: http://gist.github.com/292562 */ -;e.throttle=function(t,n){n=n?n:e.config.throttleTime||150;if(n===-1)return function(){t.apply(null,arguments)};var r=e.Lang.now();return function(){var i=e.Lang.now();i-r>n&&(r=i,t.apply(null,arguments))}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui-min.js b/lib/yuilib/3.9.1/build/yui/yui-min.js deleted file mode 100644 index 61fb4013128..00000000000 --- a/lib/yuilib/3.9.1/build/yui/yui-min.js +++ /dev/null @@ -1,16 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
                ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity" -)&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("loader-base",function(e,t){YUI.Env[e.version]||function(){var t=e.version,n="/build/",r=t+n,i=e.Env.base,s="gallery-2013.02.27-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h}, -p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]=l}();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups -[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.9.1",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.9.1",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires: -["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-base":{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-responsive":{optional:["cssreset","cssfonts"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssreset","cssfonts"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local" -]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires -:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["base-build","dom-screen","event-resize","node-pluginhost","plugin"]},"node-style":{requires:["dom-style" -,"node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},profiler:{requires:["yui-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base" -]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="660f328e92276f36e9abfafb02169183"},"3.9.1",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/login/change_password.php b/login/change_password.php index 73f0e8e5b19..88a7cf50fb4 100644 --- a/login/change_password.php +++ b/login/change_password.php @@ -73,7 +73,7 @@ if (!get_user_preferences('auth_forcepasswordchange', false)) { } // do not allow "Logged in as" users to change any passwords -if (session_is_loggedinas()) { +if (\core\session\manager::is_loggedinas()) { print_error('cannotcallscript'); } diff --git a/login/index.php b/login/index.php index c4e21f61249..45d1a580d7f 100644 --- a/login/index.php +++ b/login/index.php @@ -275,7 +275,8 @@ if (empty($SESSION->wantsurl)) { $_SERVER["HTTP_REFERER"] != $CFG->wwwroot && $_SERVER["HTTP_REFERER"] != $CFG->wwwroot.'/' && $_SERVER["HTTP_REFERER"] != $CFG->httpswwwroot.'/login/' && - $_SERVER["HTTP_REFERER"] != $CFG->httpswwwroot.'/login/index.php') + strpos($_SERVER["HTTP_REFERER"], $CFG->httpswwwroot.'/login/?') !== 0 && + strpos($_SERVER["HTTP_REFERER"], $CFG->httpswwwroot.'/login/index.php') !== 0) // There might be some extra params such as ?lang=. ? $_SERVER["HTTP_REFERER"] : NULL; } diff --git a/login/token.php b/login/token.php index 412b24725e8..9fd88b069ef 100644 --- a/login/token.php +++ b/login/token.php @@ -68,7 +68,7 @@ if (!empty($user)) { enrol_check_plugins($user); // setup user session to check capability - session_set_user($user); + \core\session\manager::set_user($user); //check if the service exists and is enabled $service = $DB->get_record('external_services', array('shortname' => $serviceshortname, 'enabled' => 1)); @@ -116,8 +116,7 @@ if (!empty($user)) { $unsettoken = false; //if sid is set then there must be a valid associated session no matter the token type if (!empty($token->sid)) { - $session = session_get_instance(); - if (!$session->session_exists($token->sid)){ + if (!\core\session\manager::session_exists($token->sid)){ //this token will never be valid anymore, delete it $DB->delete_records('external_tokens', array('sid'=>$token->sid)); $unsettoken = true; diff --git a/mod/assignment/type/online/assignment.class.php b/mod/assignment/type/online/assignment.class.php index 63c436728d1..8888caa1c06 100644 --- a/mod/assignment/type/online/assignment.class.php +++ b/mod/assignment/type/online/assignment.class.php @@ -420,7 +420,7 @@ class assignment_online extends assignment_base { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, true, $options); } diff --git a/mod/book/tool/exportimscp/locallib.php b/mod/book/tool/exportimscp/locallib.php index 374dbd6b555..6bc14ef978e 100644 --- a/mod/book/tool/exportimscp/locallib.php +++ b/mod/book/tool/exportimscp/locallib.php @@ -125,7 +125,7 @@ function booktool_exportimscp_prepare_files($book, $context) { // Moodle and Book version $moodle_release = $CFG->release; $moodle_version = $CFG->version; - $book_version = $DB->get_field('modules', 'version', array('name'=>'book')); + $book_version = get_config('mod_book', 'version'); $bookname = format_string($book->name, true, array('context'=>$context)); // Load manifest header diff --git a/mod/chat/chat_ajax.php b/mod/chat/chat_ajax.php index d9e6b374829..b041b8970bc 100644 --- a/mod/chat/chat_ajax.php +++ b/mod/chat/chat_ajax.php @@ -68,7 +68,7 @@ case 'init': break; case 'chat': - session_get_instance()->write_close(); + \core\session\manager::write_close(); chat_delete_old_users(); $chat_message = clean_text($chat_message, FORMAT_MOODLE); @@ -77,22 +77,14 @@ case 'chat': } if (!empty($chat_message)) { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = $chat_message; - $message->timestamp = time(); + + chat_send_chatmessage($chatuser, $chat_message, 0, $cm); $chatuser->lastmessageping = time() - 2; $DB->update_record('chat_users', $chatuser); - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); - // response ok message + // Response OK message. echo json_encode(true); - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); - ob_end_flush(); } break; diff --git a/mod/chat/chatd.php b/mod/chat/chatd.php index a937b436852..567a95d00d3 100644 --- a/mod/chat/chatd.php +++ b/mod/chat/chatd.php @@ -345,6 +345,7 @@ EOD; switch($type) { case CHAT_SIDEKICK_BEEP: + // Incoming beep $msg = New stdClass; $msg->chatid = $this->sets_info[$sessionid]['chatid']; @@ -355,8 +356,8 @@ EOD; $msg->timestamp = time(); // Commit to DB - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($this->sets_info[$sessionid]['chatuser'], $msg->message, false, + $this->sets_info[$sessionid]['cm']); // OK, now push it out to all users $this->message_broadcast($msg, $this->sets_info[$sessionid]['user']); @@ -450,8 +451,8 @@ EOD; $msg->message = $msg->message; // Commit to DB - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($this->sets_info[$sessionid]['chatuser'], $msg->message, false, + $this->sets_info[$sessionid]['cm']); // Undo the hack $msg->message = $origmsg; @@ -517,6 +518,10 @@ EOD; $this->dismiss_half($sessionid); return false; } + if (!($cm = get_coursemodule_from_instance('chat', $chat->id, $course->id))) { + $this->dismiss_half($sessionid); + return false; + } global $CHAT_HTMLHEAD_JS, $CFG; @@ -531,6 +536,7 @@ EOD; 'courseid' => $course->id, 'chatuser' => $chatuser, 'chatid' => $chat->id, + 'cm' => $cm, 'user' => $user, 'userid' => $user->id, 'groupid' => $chatuser->groupid, @@ -573,8 +579,7 @@ EOD; $msg->message = 'enter'; $msg->timestamp = time(); - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($chatuser, $msg->message, true); $this->message_broadcast($msg, $this->sets_info[$sessionid]['user']); return true; @@ -781,8 +786,7 @@ EOD; $msg->timestamp = time(); $this->trace('User has disconnected, destroying uid '.$info['userid'].' with SID '.$sessionid, E_USER_WARNING); - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($info['chatuser'], $msg->message, true); // *************************** IMPORTANT // diff --git a/mod/chat/classes/event/instances_list_viewed.php b/mod/chat/classes/event/instances_list_viewed.php new file mode 100644 index 00000000000..d6bcade461e --- /dev/null +++ b/mod/chat/classes/event/instances_list_viewed.php @@ -0,0 +1,73 @@ +. + +/** + * mod_chat instances list viewed event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat instances list viewed event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class instances_list_viewed extends \core\event\course_module_instances_list_viewed { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "User $this->userid viewed the list of chat activities in the course $this->courseid."; + } + + /** + * Return the legacy event log data. + * + * @return array|null + */ + protected function get_legacy_logdata() { + return array($this->courseid, 'chat', 'view all', 'index.php?id=' . $this->courseid, ''); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_instances_list_viewed', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/index.php', array('id' => $this->courseid)); + } + +} diff --git a/mod/chat/classes/event/message_sent.php b/mod/chat/classes/event/message_sent.php new file mode 100644 index 00000000000..b8812038109 --- /dev/null +++ b/mod/chat/classes/event/message_sent.php @@ -0,0 +1,97 @@ +. + +/** + * mod_chat message sent event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat message sent event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class message_sent extends \core\event\base { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "The user $this->relateduserid has sent a message in a chat."; + } + + /** + * Return legacy log data. + * + * @return array + */ + protected function get_legacy_logdata() { + $message = $this->get_record_snapshot('chat_messages', $this->objectid); + return array($this->courseid, 'chat', 'talk', 'view.php?id=' . $this->context->instanceid, + $message->chatid, $this->context->instanceid, $this->relateduserid); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_message_sent', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/view.php', array('id' => $this->context->instanceid)); + } + + /** + * Init method. + * + * @return void + */ + protected function init() { + $this->data['crud'] = 'c'; + $this->data['level'] = self::LEVEL_PARTICIPATING; + $this->data['objecttable'] = 'chat_messages'; + } + + /** + * Custom validation. + * + * @return void + */ + protected function validate_data() { + if (!isset($this->relateduserid)) { + throw new \coding_exception('The property relateduserid must be set.'); + } + } + +} diff --git a/mod/chat/classes/event/sessions_viewed.php b/mod/chat/classes/event/sessions_viewed.php new file mode 100644 index 00000000000..e18562ba4b4 --- /dev/null +++ b/mod/chat/classes/event/sessions_viewed.php @@ -0,0 +1,96 @@ +. + +/** + * mod_chat sessions viewed event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat sessions viewed event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class sessions_viewed extends \core\event\content_viewed { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "The user {$this->userid} has viewed the sessions of the chat {$this->objectid}."; + } + + /** + * Return the legacy event log data. + * + * @return array|null + */ + protected function get_legacy_logdata() { + return array($this->courseid, 'chat', 'report', 'report.php?id=' . $this->context->instanceid, + $this->objectid, $this->context->instanceid); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_sessions_viewed', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/report.php', array('id' => $this->context->instanceid)); + } + + /** + * Init method. + * + * @return void + */ + protected function init() { + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_OTHER; + $this->data['objecttable'] = 'chat'; + } + + /** + * Custom validation. + * + * @throws \coding_exception + * @return void + */ + protected function validate_data() { + // The parent class requires this to be non-empty. We are setting it and ignore the parent validation. + $this->data['other']['content'] = ''; + } + +} diff --git a/mod/chat/gui_basic/index.php b/mod/chat/gui_basic/index.php index 8bb0b9d4e2e..c82620f4abd 100644 --- a/mod/chat/gui_basic/index.php +++ b/mod/chat/gui_basic/index.php @@ -93,19 +93,11 @@ if (!empty($refresh) and data_submitted()) { } else if (empty($refresh) and data_submitted() and confirm_sesskey()) { if ($message!='') { - $newmessage = new stdClass(); - $newmessage->chatid = $chat->id; - $newmessage->userid = $USER->id; - $newmessage->groupid = $groupid; - $newmessage->systrem = 0; - $newmessage->message = $message; - $newmessage->timestamp = time(); - $DB->insert_record('chat_messages', $newmessage); - $DB->insert_record('chat_messages_current', $newmessage); + + $chatuser = $DB->get_record('chat_users', array('sid' => $chat_sid)); + chat_send_chatmessage($chatuser, $message, 0, $cm); $DB->set_field('chat_users', 'lastmessageping', time(), array('sid'=>$chat_sid)); - - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); } chat_delete_old_users(); diff --git a/mod/chat/gui_header_js/insert.php b/mod/chat/gui_header_js/insert.php index 6b842d2977b..a8d24ac48bc 100644 --- a/mod/chat/gui_header_js/insert.php +++ b/mod/chat/gui_header_js/insert.php @@ -30,7 +30,7 @@ if (isguestuser()) { print_error('noguests'); } -session_get_instance()->write_close(); +\core\session\manager::write_close(); /// Delete old users now @@ -44,22 +44,10 @@ $chat_message = clean_text($chat_message, FORMAT_MOODLE); // Strip bad tags if (!empty($chat_message)) { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = $chat_message; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($chatuser, $chat_message, 0, $cm); $chatuser->lastmessageping = time() - 2; $DB->update_record('chat_users', $chatuser); - - if ($cm = get_coursemodule_from_instance('chat', $chat->id, $course->id)) { - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); - } } if ($chatuser->version == 'header_js') { diff --git a/mod/chat/gui_header_js/users.php b/mod/chat/gui_header_js/users.php index 825f0a7e492..35fff5deda9 100644 --- a/mod/chat/gui_header_js/users.php +++ b/mod/chat/gui_header_js/users.php @@ -39,16 +39,7 @@ if (!$cm = get_coursemodule_from_instance('chat', $chatuser->chatid, $courseid)) } if ($beep) { - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = "beep $beep"; - $message->system = 0; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); - + chat_send_chatmessage($chatuser, "beep $beep", 0, $cm); $chatuser->lastmessageping = time(); // A beep is a ping ;-) } diff --git a/mod/chat/index.php b/mod/chat/index.php index 540aaeaba2c..e0a237e61ef 100644 --- a/mod/chat/index.php +++ b/mod/chat/index.php @@ -14,8 +14,11 @@ if (! $course = $DB->get_record('course', array('id'=>$id))) { require_course_login($course); $PAGE->set_pagelayout('incourse'); -add_to_log($course->id, 'chat', 'view all', "index.php?id=$course->id", ''); - +$params = array( + 'context' => context_course::instance($id) +); +$event = \mod_chat\event\instances_list_viewed::create($params); +$event->trigger(); /// Get all required strings diff --git a/mod/chat/lang/en/chat.php b/mod/chat/lang/en/chat.php index b94b7f6ee31..e21799c222a 100644 --- a/mod/chat/lang/en/chat.php +++ b/mod/chat/lang/en/chat.php @@ -61,6 +61,9 @@ $string['chatreport'] = 'Chat sessions'; $string['chat:talk'] = 'Talk in a chat'; $string['chattime'] = 'Next chat time'; $string['entermessage'] = "Enter your message"; +$string['event_instances_list_viewed'] = 'Instances list viewed'; +$string['event_message_sent'] = 'Message sent'; +$string['event_sessions_viewed'] = 'Sessions viewed'; $string['idle'] = 'Idle'; $string['inputarea'] = 'Input area'; $string['invalidid'] = 'Could not find that chat room!'; diff --git a/mod/chat/lib.php b/mod/chat/lib.php index 39823327e8b..0089feb3885 100644 --- a/mod/chat/lib.php +++ b/mod/chat/lib.php @@ -602,16 +602,7 @@ function chat_login_user($chatid, $version, $groupid, $course) { if ($version == 'sockets') { // do not send 'enter' message, chatd will do it } else { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $groupid; - $message->message = 'enter'; - $message->system = 1; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($chatuser, 'enter', true); } } @@ -637,16 +628,7 @@ function chat_delete_old_users() { if ($oldusers = $DB->get_records_select('chat_users', $query, $params) ) { $DB->delete_records_select('chat_users', $query, $params); foreach ($oldusers as $olduser) { - $message = new stdClass(); - $message->chatid = $olduser->chatid; - $message->userid = $olduser->userid; - $message->groupid = $olduser->groupid; - $message->message = 'exit'; - $message->system = 1; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($olduser, 'exit', true); } } } @@ -708,6 +690,51 @@ function chat_update_chat_times($chatid=0) { } } +/** + * Send a message on the chat. + * + * @param object $chatuser The chat user record. + * @param string $messagetext The message to be sent. + * @param bool $system False for non-system messages, true for system messages. + * @param object $cm The course module object, pass it to save a database query when we trigger the event. + * @return int The message ID. + * @since 2.6 + */ +function chat_send_chatmessage($chatuser, $messagetext, $system = false, $cm = null) { + global $DB; + + $message = new stdClass(); + $message->chatid = $chatuser->chatid; + $message->userid = $chatuser->userid; + $message->groupid = $chatuser->groupid; + $message->message = $messagetext; + $message->system = $system ? 1 : 0; + $message->timestamp = time(); + + $messageid = $DB->insert_record('chat_messages', $message); + $DB->insert_record('chat_messages_current', $message); + $message->id = $messageid; + + if (!$system) { + + if (empty($cm)) { + $cm = get_coursemodule_from_instance('chat', $chatuser->chatid, $chatuser->course); + } + + $params = array( + 'context' => context_module::instance($cm->id), + 'objectid' => $message->id, + // We set relateduserid, because when triggered from the chat daemon, the event userid is null. + 'relateduserid' => $chatuser->userid + ); + $event = \mod_chat\event\message_sent::create($params); + $event->add_record_snapshot('chat_messages', $message); + $event->trigger(); + } + + return $message->id; +} + /** * @global object * @global object diff --git a/mod/chat/report.php b/mod/chat/report.php index 43ab03007fa..eab88ed9ccc 100644 --- a/mod/chat/report.php +++ b/mod/chat/report.php @@ -47,7 +47,17 @@ notice(get_string('nopermissiontoseethechatlog', 'chat')); } - add_to_log($course->id, 'chat', 'report', "report.php?id=$cm->id", $chat->id, $cm->id); + $params = array( + 'context' => $context, + 'objectid' => $chat->id, + 'other' => array( + 'start' => $start, + 'end' => $end + ) + ); + $event = \mod_chat\event\sessions_viewed::create($params); + $event->add_record_snapshot('chat', $chat); + $event->trigger(); $strchats = get_string('modulenameplural', 'chat'); $strchat = get_string('modulename', 'chat'); diff --git a/mod/chat/tests/events_test.php b/mod/chat/tests/events_test.php new file mode 100644 index 00000000000..1ba312f19af --- /dev/null +++ b/mod/chat/tests/events_test.php @@ -0,0 +1,161 @@ +. + +/** + * Events tests. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; +require_once($CFG->dirroot . '/mod/chat/lib.php'); + +/** + * Events tests class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_events_testcase extends advanced_testcase { + + public function test_message_sent() { + global $DB; + $this->resetAfterTest(); + + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + $user1 = $this->getDataGenerator()->create_user(); + $user2 = $this->getDataGenerator()->create_user(); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + $cm = $DB->get_record('course_modules', array('id' => $chat->cmid)); + + // Logging in first user to the chat. + $this->setUser($user1->id); + $sid1 = chat_login_user($chat->id, 'ajax', 0, $course); + + // Logging in second user to the chat. + $this->setUser($user2->id); + $sid2 = chat_login_user($chat->id, 'ajax', 0, $course); + + // Getting the chatuser record. + $chatuser1 = $DB->get_record('chat_users', array('sid' => $sid1)); + $chatuser2 = $DB->get_record('chat_users', array('sid' => $sid2)); + + $sink = $this->redirectEvents(); + + // Send a messaging from the first user. We pass the CM to chat_send_chatmessage() this time. + // This ensures that the event triggered when sending a message is filled with the correct information. + $this->setUser($user1->id); + $messageid = chat_send_chatmessage($chatuser1, 'Hello!', false, $cm); + $events = $sink->get_events(); + $this->assertCount(1, $events); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\message_sent', $event); + $this->assertEquals($messageid, $event->objectid); + $this->assertEquals($user1->id, $event->relateduserid); + $this->assertEquals($user1->id, $event->userid); + $expected = array($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id, $user1->id); + $this->assertEventLegacyLogData($expected, $event); + + // Send a messaging from the first user. We DO NOT pass the CM to chat_send_chatmessage() this time. + // This ensures that the event triggered when sending a message is filled with the correct information. + $sink->clear(); + $this->setUser($user2->id); + $messageid = chat_send_chatmessage($chatuser2, 'Hello!'); + $events = $sink->get_events(); + $this->assertCount(1, $events); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\message_sent', $event); + $this->assertEquals($messageid, $event->objectid); + $this->assertEquals($user2->id, $event->relateduserid); + $this->assertEquals($user2->id, $event->userid); + $expected = array($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id, $user2->id); + $this->assertEventLegacyLogData($expected, $event); + + // Sending a message from the system should not trigger any event. + $sink->clear(); + $this->setAdminUser(); + chat_send_chatmessage($chatuser1, 'enter', true); + $this->assertEquals(0, $sink->count()); + + $sink->close(); + } + + public function test_sessions_viewed() { + global $USER; + $this->resetAfterTest(); + + // Not much can be tested here as the event is only triggered on a page load, + // let's just check that the event contains the expected basic information. + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + + $params = array( + 'context' => context_module::instance($chat->cmid), + 'objectid' => $chat->id, + 'other' => array( + 'start' => 1234, + 'end' => 5678 + ) + ); + $event = \mod_chat\event\sessions_viewed::create($params); + $event->add_record_snapshot('chat', $chat); + $sink = $this->redirectEvents(); + $event->trigger(); + $events = $sink->get_events(); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\sessions_viewed', $event); + $this->assertEquals($USER->id, $event->userid); + $this->assertEquals(context_module::instance($chat->cmid), $event->get_context()); + $this->assertEquals(1234, $event->other['start']); + $this->assertEquals(5678, $event->other['end']); + $this->assertEquals($chat->id, $event->objectid); + $this->assertEquals($chat, $event->get_record_snapshot('chat', $chat->id)); + $expected = array($course->id, 'chat', 'report', "report.php?id=$chat->cmid", $chat->id, $chat->cmid); + $this->assertEventLegacyLogData($expected, $event); + } + + public function test_instances_list_viewed() { + global $USER; + $this->resetAfterTest(); + + // Not much can be tested here as the event is only triggered on a page load, + // let's just check that the event contains the expected basic information. + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + + $params = array( + 'context' => context_course::instance($course->id) + ); + $event = \mod_chat\event\instances_list_viewed::create($params); + $sink = $this->redirectEvents(); + $event->trigger(); + $events = $sink->get_events(); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\instances_list_viewed', $event); + $this->assertEquals($USER->id, $event->userid); + $this->assertEquals(context_course::instance($course->id), $event->get_context()); + $expected = array($course->id, 'chat', 'view all', "index.php?id=$course->id", ''); + $this->assertEventLegacyLogData($expected, $event); + } + +} diff --git a/mod/chat/tests/generator/lib.php b/mod/chat/tests/generator/lib.php new file mode 100644 index 00000000000..8947c3085fe --- /dev/null +++ b/mod/chat/tests/generator/lib.php @@ -0,0 +1,102 @@ +. + +/** + * mod_chat data generator. + * + * @package core + * @category test + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat data generator class. + * + * @package core + * @category test + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_generator extends testing_module_generator { + + /** + * @var int keep track of how many messages have been created. + */ + protected $messagecount = 0; + + /** + * To be called from data reset code only, + * do not use in tests. + * @return void + */ + public function reset() { + $this->messagecount = 0; + parent::reset(); + } + + /** + * Create new chat module instance + * @param array|stdClass $record + * @param array $options + * @return stdClass activity record with extra cmid field + */ + public function create_instance($record = null, array $options = null) { + global $CFG; + require_once("$CFG->dirroot/mod/chat/lib.php"); + + $this->instancecount++; + $i = $this->instancecount; + + $record = (object)(array)$record; + $options = (array)$options; + + if (empty($record->course)) { + throw new coding_exception('Module generator requires $record->course.'); + } + if (!isset($record->name)) { + $record->name = get_string('pluginname', 'chat') . ' ' . $i; + } + if (!isset($record->intro)) { + $record->intro = 'Test chat ' . $i; + } + if (!isset($record->introformat)) { + $record->introformat = FORMAT_MOODLE; + } + if (!isset($record->keepdays)) { + $record->keepdays = 0; + } + if (!isset($record->studentlogs)) { + $record->studentlogs = 0; + } + if (!isset($record->chattime)) { + $record->chattime = time() - 2; + } + if (!isset($record->schedule)) { + $record->schedule = 0; + } + if (!isset($record->timemodified)) { + $record->timemodified = time(); + } + + $record->coursemodule = $this->precreate_course_module($record->course, $options); + $id = chat_add_instance($record); + return $this->post_add_instance($id, $record->coursemodule); + } + +} diff --git a/mod/chat/tests/generator_test.php b/mod/chat/tests/generator_test.php new file mode 100644 index 00000000000..81ababa90d7 --- /dev/null +++ b/mod/chat/tests/generator_test.php @@ -0,0 +1,53 @@ +. + +/** + * Genarator tests. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +/** + * Genarator tests class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_genarator_testcase extends advanced_testcase { + + public function test_create_instance() { + global $DB; + $this->resetAfterTest(); + $this->setAdminUser(); + + $course = $this->getDataGenerator()->create_course(); + + $this->assertFalse($DB->record_exists('chat', array('course' => $course->id))); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + $this->assertEquals(1, $DB->count_records('chat', array('course' => $course->id))); + $this->assertTrue($DB->record_exists('chat', array('course' => $course->id))); + $this->assertTrue($DB->record_exists('chat', array('id' => $chat->id))); + + $params = array('course' => $course->id, 'name' => 'One more chat'); + $chat = $this->getDataGenerator()->create_module('chat', $params); + $this->assertEquals(2, $DB->count_records('chat', array('course' => $course->id))); + $this->assertEquals('One more chat', $DB->get_field_select('chat', 'name', 'id = :id', array('id' => $chat->id))); + } + +} diff --git a/mod/data/backup/moodle2/restore_data_activity_task.class.php b/mod/data/backup/moodle2/restore_data_activity_task.class.php index 3896158189b..b444f68fc39 100644 --- a/mod/data/backup/moodle2/restore_data_activity_task.class.php +++ b/mod/data/backup/moodle2/restore_data_activity_task.class.php @@ -120,4 +120,19 @@ class restore_data_activity_task extends restore_activity_task { return $rules; } + + /** + * Given a commment area, return the itemname that contains the itemid mappings. + * + * @param string $commentarea Comment area name e.g. database_entry. + * @return string name of the mapping used to determine the itemid. + */ + public function get_comment_mapping_itemname($commentarea) { + if ($commentarea == 'database_entry') { + $itemname = 'data_record'; + } else { + $itemname = parent::get_comment_mapping_itemname($commentarea); + } + return $itemname; + } } diff --git a/mod/feedback/delete_completed_form.php b/mod/feedback/delete_completed_form.php index a0f677dce99..3c3f513bce6 100644 --- a/mod/feedback/delete_completed_form.php +++ b/mod/feedback/delete_completed_form.php @@ -37,7 +37,7 @@ class mod_feedback_delete_completed_form extends moodleform { $mform->addElement('hidden', 'id'); $mform->setType('id', PARAM_INT); $mform->addElement('hidden', 'completedid'); - $mform->setType('completeid', PARAM_INT); + $mform->setType('completedid', PARAM_INT); $mform->addElement('hidden', 'do_show'); $mform->setType('do_show', PARAM_INT); $mform->addElement('hidden', 'confirmdelete'); diff --git a/mod/lti/classes/event/unknown_service_api_called.php b/mod/lti/classes/event/unknown_service_api_called.php new file mode 100644 index 00000000000..dad8f78bdb6 --- /dev/null +++ b/mod/lti/classes/event/unknown_service_api_called.php @@ -0,0 +1,95 @@ +. + +/** + * This file contains an event for an unknown service API call. + * + * @package mod_lti + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_lti\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * Event for when something happens with an unknown lti service API call. + * + * @package mod_lti + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class unknown_service_api_called extends \core\event\base { + + /** Old data to be used for the legacy event. */ + protected $legacydata; + + /** + * Set method for legacy data. + * + * @param stdClass $data legacy event data. + */ + public function set_legacy_data($data) { + $this->legacydata = $data; + } + + /** + * Init method. + */ + protected function init() { + $this->data['objecttable'] = 'lti'; + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_OTHER; + $this->data['context'] = \context_system::instance(); + } + + /** + * Returns localised description of what happened. + * + * @return string + */ + public function get_description() { + return 'An unknown call to a service api was made.'; + } + + /** + * Returns localised general event name. + * + * @return string + */ + public static function get_name() { + return get_string('ltiunknownserviceapicall', 'mod_lti'); + } + + /** + * Does this event replace a legacy event? + * + * @return null|string legacy event name + */ + public static function get_legacy_eventname() { + return 'lti_unknown_service_api_call'; + } + + /** + * Legacy event data if get_legacy_eventname() is not empty. + * + * @return mixed + */ + protected function get_legacy_eventdata() { + return $this->legacydata; + } + +} diff --git a/mod/lti/lang/en/lti.php b/mod/lti/lang/en/lti.php index 606e2d6110a..7f5f8a34512 100644 --- a/mod/lti/lang/en/lti.php +++ b/mod/lti/lang/en/lti.php @@ -237,6 +237,7 @@ $string['lti_launch_error_unsigned_help'] = '

                '; $string['lti_tool_request_added'] = 'Tool configuration request successfully submitted. You may need to contact an administrator to complete the tool configuration.'; $string['lti_tool_request_existing'] = 'A tool configuration for the tool domain has already been submitted.'; +$string['ltiunknownserviceapicall'] = 'LTI unknown service API call.'; $string['main_admin'] = 'General help'; $string['main_admin_help'] = 'External tools allow Moodle users to seamlessly interact with learning resources hosted remotely. Through a special launch protocol, the remote tool will have access to some general information about the launching user. For example, diff --git a/mod/lti/service.php b/mod/lti/service.php index b96f566294e..be8e2d6d386 100644 --- a/mod/lti/service.php +++ b/mod/lti/service.php @@ -145,19 +145,23 @@ switch ($messagetype) { //Fire an event if we get a web service request which we don't support directly. //This will allow others to extend the LTI services, which I expect to be a common //use case, at least until the spec matures. - $data = new stdClass(); - $data->body = $rawbody; - $data->xml = $xml; - $data->messagetype = $messagetype; - $data->consumerkey = $consumerkey; - $data->sharedsecret = $sharedsecret; + // Please note that you will have to change $eventdata['other']['body'] into an xml + // element in an event observer as done above. + $eventdata = array(); + $eventdata['other'] = array(); + $eventdata['other']['body'] = $rawbody; + $eventdata['other']['messagetype'] = $messagetype; + $eventdata['other']['consumerkey'] = $consumerkey; + $eventdata['other']['sharedsecret'] = $sharedsecret; //If an event handler handles the web service, it should set this global to true //So this code knows whether to send an "operation not supported" or not. global $lti_web_service_handled; $lti_web_service_handled = false; - events_trigger('lti_unknown_service_api_call', $data); + $event = \mod_lti\event\unknown_service_api_called::create($eventdata); + $event->set_legacy_data($eventdata); + $event->trigger(); if (!$lti_web_service_handled) { $responsexml = lti_get_response_xml( diff --git a/mod/quiz/adminlib.php b/mod/quiz/adminlib.php new file mode 100644 index 00000000000..16ff793bb4d --- /dev/null +++ b/mod/quiz/adminlib.php @@ -0,0 +1,57 @@ +. + +/** + * Quiz admin stuff. + * + * @package mod_quiz + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + + +/** + * Quiz admin stuff. + * + * @package mod_quiz + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class plugininfo_quiz extends plugininfo_base { + public function is_uninstall_allowed() { + return true; + } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB; + + // Do the opposite of db/install.php scripts - deregister the report. + + $DB->delete_records('quiz_reports', array('name'=>$this->name)); + + parent::uninstall_cleanup(); + } +} diff --git a/mod/quiz/classes/group_observers.php b/mod/quiz/classes/group_observers.php new file mode 100644 index 00000000000..c77e3d182f7 --- /dev/null +++ b/mod/quiz/classes/group_observers.php @@ -0,0 +1,113 @@ +. + +/** + * Group observers. + * + * @package mod_quiz + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_quiz; +defined('MOODLE_INTERNAL') || die(); + +require_once($CFG->dirroot . '/mod/quiz/locallib.php'); + +/** + * Group observers class. + * + * @package mod_quiz + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class group_observers { + + /** + * Flag whether a course reset is in progress or not. + * + * @var int The course ID. + */ + protected static $resetinprogress = false; + + /** + * A course reset has started. + * + * @param \core\event\base $event The event. + * @return void + */ + public static function course_reset_started($event) { + self::$resetinprogress = $event->courseid; + } + + /** + * A course reset has ended. + * + * @param \core\event\base $event The event. + * @return void + */ + public static function course_reset_ended($event) { + if (!empty(self::$resetinprogress)) { + if (!empty($event->other['reset_options']['reset_groups_remove'])) { + quiz_process_group_deleted_in_course($event->courseid); + } + if (!empty($event->other['reset_options']['reset_groups_members'])) { + quiz_update_open_attempts(array('courseid' => $event->courseid)); + } + } + + self::$resetinprogress = null; + } + + /** + * A group was deleted. + * + * @param \core\event\base $event The event. + * @return void + */ + public static function group_deleted($event) { + if (!empty(self::$resetinprogress)) { + // We will take care of that once the course reset ends. + return; + } + quiz_process_group_deleted_in_course($event->courseid); + } + + /** + * A group member was removed. + * + * @param \core\event\base $event The event. + * @return void + */ + public static function group_member_added($event) { + quiz_update_open_attempts(array('userid' => $event->relateduserid, 'groupid' => $event->objectid)); + } + + /** + * A group member was deleted. + * + * @param \core\event\base $event The event. + * @return void + */ + public static function group_member_removed($event) { + if (!empty(self::$resetinprogress)) { + // We will take care of that once the course reset ends. + return; + } + quiz_update_open_attempts(array('userid' => $event->relateduserid, 'groupid' => $event->objectid)); + } + +} diff --git a/mod/quiz/db/events.php b/mod/quiz/db/events.php index f2deac10e73..4cab28fecd3 100644 --- a/mod/quiz/db/events.php +++ b/mod/quiz/db/events.php @@ -44,28 +44,32 @@ $handlers = array( 'schedule' => 'cron', ), - // Handle group events, so that open quiz attempts with group overrides get - // updated check times. - 'groups_member_added' => array ( - 'handlerfile' => '/mod/quiz/locallib.php', - 'handlerfunction' => 'quiz_groups_member_added_handler', - 'schedule' => 'instant', +); + +$observers = array( + + // Handle group events, so that open quiz attempts with group overrides get updated check times. + array( + 'eventname' => '\core\event\course_reset_started', + 'callback' => '\mod_quiz\group_observers::course_reset_started', ), - 'groups_member_removed' => array ( - 'handlerfile' => '/mod/quiz/locallib.php', - 'handlerfunction' => 'quiz_groups_member_removed_handler', - 'schedule' => 'instant', + array( + 'eventname' => '\core\event\course_reset_ended', + 'callback' => '\mod_quiz\group_observers::course_reset_ended', ), - 'groups_members_removed' => array ( - 'handlerfile' => '/mod/quiz/locallib.php', - 'handlerfunction' => 'quiz_groups_members_removed_handler', - 'schedule' => 'instant', + array( + 'eventname' => '\core\event\group_deleted', + 'callback' => '\mod_quiz\group_observers::group_deleted' ), - 'groups_group_deleted' => array ( - 'handlerfile' => '/mod/quiz/locallib.php', - 'handlerfunction' => 'quiz_groups_group_deleted_handler', - 'schedule' => 'instant', + array( + 'eventname' => '\core\event\group_member_added', + 'callback' => '\mod_quiz\group_observers::group_member_added', ), + array( + 'eventname' => '\core\event\group_member_removed', + 'callback' => '\mod_quiz\group_observers::group_member_removed', + ), + ); /* List of events generated by the quiz module, with the fields on the event object. diff --git a/mod/quiz/locallib.php b/mod/quiz/locallib.php index 61313bfb150..a11c611fff0 100644 --- a/mod/quiz/locallib.php +++ b/mod/quiz/locallib.php @@ -1788,8 +1788,11 @@ function quiz_attempt_overdue_handler($event) { * Handle groups_member_added event * * @param object $event the event object. + * @deprecated since 2.6, see {@link \mod_quiz\group_observers::group_member_added()}. */ function quiz_groups_member_added_handler($event) { + debugging('quiz_groups_member_added_handler() is deprecated, please use ' . + '\mod_quiz\group_observers::group_member_added() instead.', DEBUG_DEVELOPER); quiz_update_open_attempts(array('userid'=>$event->userid, 'groupid'=>$event->groupid)); } @@ -1797,8 +1800,11 @@ function quiz_groups_member_added_handler($event) { * Handle groups_member_removed event * * @param object $event the event object. + * @deprecated since 2.6, see {@link \mod_quiz\group_observers::group_member_removed()}. */ function quiz_groups_member_removed_handler($event) { + debugging('quiz_groups_member_removed_handler() is deprecated, please use ' . + '\mod_quiz\group_observers::group_member_removed() instead.', DEBUG_DEVELOPER); quiz_update_open_attempts(array('userid'=>$event->userid, 'groupid'=>$event->groupid)); } @@ -1806,32 +1812,49 @@ function quiz_groups_member_removed_handler($event) { * Handle groups_group_deleted event * * @param object $event the event object. + * @deprecated since 2.6, see {@link \mod_quiz\group_observers::group_deleted()}. */ function quiz_groups_group_deleted_handler($event) { global $DB; + debugging('quiz_groups_group_deleted_handler() is deprecated, please use ' . + '\mod_quiz\group_observers::group_deleted() instead.', DEBUG_DEVELOPER); + quiz_process_group_deleted_in_course($event->courseid); +} + +/** + * Logic to happen when a/some group(s) has/have been deleted in a course. + * + * @param int $courseid The course ID. + * @return void + */ +function quiz_process_group_deleted_in_course($courseid) { + global $DB; // It would be nice if we got the groupid that was deleted. - // Instead, we just update all quizzes with orphaned group overrides + // Instead, we just update all quizzes with orphaned group overrides. $sql = "SELECT o.id, o.quiz FROM {quiz_overrides} o JOIN {quiz} quiz ON quiz.id = o.quiz LEFT JOIN {groups} grp ON grp.id = o.groupid WHERE quiz.course = :courseid AND grp.id IS NULL"; - $params = array('courseid'=>$event->courseid); + $params = array('courseid' => $courseid); $records = $DB->get_records_sql_menu($sql, $params); if (!$records) { return; // Nothing to do. } $DB->delete_records_list('quiz_overrides', 'id', array_keys($records)); - quiz_update_open_attempts(array('quizid'=>array_unique(array_values($records)))); + quiz_update_open_attempts(array('quizid' => array_unique(array_values($records)))); } /** * Handle groups_members_removed event * * @param object $event the event object. + * @deprecated since 2.6, see {@link \mod_quiz\group_observers::group_member_removed()}. */ function quiz_groups_members_removed_handler($event) { + debugging('quiz_groups_members_removed_handler() is deprecated, please use ' . + '\mod_quiz\group_observers::group_member_removed() instead.', DEBUG_DEVELOPER); if ($event->userid == 0) { quiz_update_open_attempts(array('courseid'=>$event->courseid)); } else { diff --git a/mod/quiz/report/overview/report.php b/mod/quiz/report/overview/report.php index 38bb483a769..5f62bc12c57 100644 --- a/mod/quiz/report/overview/report.php +++ b/mod/quiz/report/overview/report.php @@ -320,7 +320,7 @@ class quiz_overview_report extends quiz_attempts_report { * Unlock the session and allow the regrading process to run in the background. */ protected function unlock_session() { - session_get_instance()->write_close(); + \core\session\manager::write_close(); ignore_user_abort(true); } diff --git a/mod/quiz/report/statistics/db/install.xml b/mod/quiz/report/statistics/db/install.xml index 1a56de2ee7b..853270d3fb8 100644 --- a/mod/quiz/report/statistics/db/install.xml +++ b/mod/quiz/report/statistics/db/install.xml @@ -1,5 +1,5 @@ - @@ -7,8 +7,7 @@ - - + @@ -27,43 +26,5 @@
                - - - - - - - - - - - - - - - - - - - - - - -
                - - - - - - - - - - - - - - -
                diff --git a/mod/quiz/report/statistics/db/upgrade.php b/mod/quiz/report/statistics/db/upgrade.php index 1e87bf3200e..4beb458c895 100644 --- a/mod/quiz/report/statistics/db/upgrade.php +++ b/mod/quiz/report/statistics/db/upgrade.php @@ -37,43 +37,55 @@ function xmldb_quiz_statistics_upgrade($oldversion) { // Moodle v2.2.0 release upgrade line. // Put any upgrade step following this. - if ($oldversion < 2012061800) { - - // Changing type of field subqid on table quiz_question_response_stats to char. - $table = new xmldb_table('quiz_question_response_stats'); - $field = new xmldb_field('subqid', XMLDB_TYPE_CHAR, '100', null, XMLDB_NOTNULL, null, null, 'questionid'); - - // Launch change of type for field subqid. - $dbman->change_field_type($table, $field); - - // Statistics savepoint reached. - upgrade_plugin_savepoint(true, 2012061800, 'quiz', 'statistics'); - } - - if ($oldversion < 2012061801) { - - // Changing type of field aid on table quiz_question_response_stats to char. - $table = new xmldb_table('quiz_question_response_stats'); - $field = new xmldb_field('aid', XMLDB_TYPE_CHAR, '100', null, null, null, null, 'subqid'); - - // Launch change of type for field aid. - $dbman->change_field_type($table, $field); - - // Statistics savepoint reached. - upgrade_plugin_savepoint(true, 2012061801, 'quiz', 'statistics'); - } - // Moodle v2.3.0 release upgrade line // Put any upgrade step following this - // Moodle v2.4.0 release upgrade line // Put any upgrade step following this - // Moodle v2.5.0 release upgrade line. // Put any upgrade step following this. + if ($oldversion < 2013092000) { + + // Define table question_statistics to be dropped. + $table = new xmldb_table('quiz_question_statistics'); + + // Conditionally launch drop table for question_statistics. + if ($dbman->table_exists($table)) { + $dbman->drop_table($table); + } + + // Define table question_response_analysis to be dropped. + $table = new xmldb_table('quiz_question_response_stats'); + + // Conditionally launch drop table for question_response_analysis. + if ($dbman->table_exists($table)) { + $dbman->drop_table($table); + } + + $table = new xmldb_table('quiz_statistics'); + $field = new xmldb_field('quizid'); + + if ($dbman->field_exists($table, $field)) { + $dbman->drop_field($table, $field); + } + + $field = new xmldb_field('groupid'); + + if ($dbman->field_exists($table, $field)) { + $dbman->drop_field($table, $field); + } + + $field = new xmldb_field('hashcode', XMLDB_TYPE_CHAR, '40', null, XMLDB_NOTNULL, null, null, 'id'); + + if (!$dbman->field_exists($table, $field)) { + $dbman->add_field($table, $field); + } + + // Main savepoint reached. + upgrade_plugin_savepoint(true, 2013092000, 'quiz', 'statistics'); + } return true; } diff --git a/mod/quiz/report/statistics/lib.php b/mod/quiz/report/statistics/lib.php index 081d2a8f267..2dc07516897 100644 --- a/mod/quiz/report/statistics/lib.php +++ b/mod/quiz/report/statistics/lib.php @@ -68,24 +68,10 @@ function quiz_statistics_question_preview_pluginfile($previewcontext, $questioni function quiz_statistics_cron() { global $DB; + mtrace("\n Cleaning up old quiz statistics cache records...", ''); + $expiretime = time() - 5*HOURSECS; - $todelete = $DB->get_records_select_menu('quiz_statistics', - 'timemodified < ?', array($expiretime), '', 'id, 1'); - - if (!$todelete) { - return true; - } - - list($todeletesql, $todeleteparams) = $DB->get_in_or_equal(array_keys($todelete)); - - $DB->delete_records_select('quiz_question_statistics', - 'quizstatisticsid ' . $todeletesql, $todeleteparams); - - $DB->delete_records_select('quiz_question_response_stats', - 'quizstatisticsid ' . $todeletesql, $todeleteparams); - - $DB->delete_records_select('quiz_statistics', - 'id ' . $todeletesql, $todeleteparams); + $DB->delete_records_select('quiz_statistics', 'timemodified < ?', array($expiretime)); return true; } diff --git a/mod/quiz/report/statistics/qstats.php b/mod/quiz/report/statistics/qstats.php deleted file mode 100644 index 75001bf8f96..00000000000 --- a/mod/quiz/report/statistics/qstats.php +++ /dev/null @@ -1,405 +0,0 @@ -. - -/** - * Quiz statistics report calculations class. - * - * @package quiz_statistics - * @copyright 2008 Jamie Pratt - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - - -defined('MOODLE_INTERNAL') || die(); - - -/** - * This class has methods to compute the question statistics from the raw data. - * - * @copyright 2008 Jamie Pratt - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class quiz_statistics_question_stats { - public $questions; - public $subquestions = array(); - - protected $s; - protected $summarksavg; - protected $allattempts; - - /** @var mixed states from which to calculate stats - iteratable. */ - protected $lateststeps; - - protected $sumofmarkvariance = 0; - protected $randomselectors = array(); - - /** - * Constructor. - * @param $questions the questions. - * @param $s the number of attempts included in the stats. - * @param $summarksavg the average attempt summarks. - */ - public function __construct($questions, $s, $summarksavg) { - $this->s = $s; - $this->summarksavg = $summarksavg; - - foreach ($questions as $slot => $question) { - $question->_stats = $this->make_blank_question_stats(); - $question->_stats->questionid = $question->id; - $question->_stats->slot = $slot; - } - - $this->questions = $questions; - } - - /** - * @return object ready to hold all the question statistics. - */ - protected function make_blank_question_stats() { - $stats = new stdClass(); - $stats->slot = null; - $stats->s = 0; - $stats->totalmarks = 0; - $stats->totalothermarks = 0; - $stats->markvariancesum = 0; - $stats->othermarkvariancesum = 0; - $stats->covariancesum = 0; - $stats->covariancemaxsum = 0; - $stats->subquestion = false; - $stats->subquestions = ''; - $stats->covariancewithoverallmarksum = 0; - $stats->randomguessscore = null; - $stats->markarray = array(); - $stats->othermarksarray = array(); - return $stats; - } - - /** - * Load the data that will be needed to perform the calculations. - * - * @param int $quizid the quiz id. - * @param int $currentgroup the current group. 0 for none. - * @param array $groupstudents students in this group. - * @param bool $allattempts use all attempts, or just first attempts. - */ - public function load_step_data($quizid, $currentgroup, $groupstudents, $allattempts) { - global $DB; - - $this->allattempts = $allattempts; - - list($qsql, $qparams) = $DB->get_in_or_equal(array_keys($this->questions), - SQL_PARAMS_NAMED, 'q'); - list($fromqa, $whereqa, $qaparams) = quiz_statistics_attempts_sql( - $quizid, $currentgroup, $groupstudents, $allattempts, false); - - $this->lateststeps = $DB->get_records_sql(" - SELECT - qas.id, - quiza.sumgrades, - qa.questionid, - qa.slot, - qa.maxmark, - qas.fraction * qa.maxmark as mark - - FROM $fromqa - JOIN {question_attempts} qa ON qa.questionusageid = quiza.uniqueid - JOIN ( - SELECT questionattemptid, MAX(id) AS latestid - FROM {question_attempt_steps} - GROUP BY questionattemptid - ) lateststepid ON lateststepid.questionattemptid = qa.id - JOIN {question_attempt_steps} qas ON qas.id = lateststepid.latestid - - WHERE - qa.slot $qsql AND - $whereqa", $qparams + $qaparams); - } - - public function compute_statistics() { - set_time_limit(0); - - $subquestionstats = array(); - - // Compute the statistics of position, and for random questions, work - // out which questions appear in which positions. - foreach ($this->lateststeps as $step) { - $this->initial_steps_walker($step, $this->questions[$step->slot]->_stats); - - // If this is a random question what is the real item being used? - if ($step->questionid != $this->questions[$step->slot]->id) { - if (!isset($subquestionstats[$step->questionid])) { - $subquestionstats[$step->questionid] = $this->make_blank_question_stats(); - $subquestionstats[$step->questionid]->questionid = $step->questionid; - $subquestionstats[$step->questionid]->allattempts = $this->allattempts; - $subquestionstats[$step->questionid]->usedin = array(); - $subquestionstats[$step->questionid]->subquestion = true; - $subquestionstats[$step->questionid]->differentweights = false; - $subquestionstats[$step->questionid]->maxmark = $step->maxmark; - } else if ($subquestionstats[$step->questionid]->maxmark != $step->maxmark) { - $subquestionstats[$step->questionid]->differentweights = true; - } - - $this->initial_steps_walker($step, - $subquestionstats[$step->questionid], false); - - $number = $this->questions[$step->slot]->number; - $subquestionstats[$step->questionid]->usedin[$number] = $number; - - $randomselectorstring = $this->questions[$step->slot]->category . - '/' . $this->questions[$step->slot]->questiontext; - if (!isset($this->randomselectors[$randomselectorstring])) { - $this->randomselectors[$randomselectorstring] = array(); - } - $this->randomselectors[$randomselectorstring][$step->questionid] = - $step->questionid; - } - } - - foreach ($this->randomselectors as $key => $notused) { - ksort($this->randomselectors[$key]); - } - - // Compute the statistics of question id, if we need any. - $this->subquestions = question_load_questions(array_keys($subquestionstats)); - foreach ($this->subquestions as $qid => $subquestion) { - $subquestion->_stats = $subquestionstats[$qid]; - $subquestion->maxmark = $subquestion->_stats->maxmark; - $subquestion->_stats->randomguessscore = $this->get_random_guess_score($subquestion); - - $this->initial_question_walker($subquestion->_stats); - - if ($subquestionstats[$qid]->differentweights) { - // TODO output here really sucks, but throwing is too severe. - global $OUTPUT; - echo $OUTPUT->notification( - get_string('erroritemappearsmorethanoncewithdifferentweight', - 'quiz_statistics', $this->subquestions[$qid]->name)); - } - - if ($subquestion->_stats->usedin) { - sort($subquestion->_stats->usedin, SORT_NUMERIC); - $subquestion->_stats->positions = implode(',', $subquestion->_stats->usedin); - } else { - $subquestion->_stats->positions = ''; - } - } - - // Finish computing the averages, and put the subquestion data into the - // corresponding questions. - - // This cannot be a foreach loop because we need to have both - // $question and $nextquestion available, but apart from that it is - // foreach ($this->questions as $qid => $question). - reset($this->questions); - while (list($slot, $question) = each($this->questions)) { - $nextquestion = current($this->questions); - $question->_stats->allattempts = $this->allattempts; - $question->_stats->positions = $question->number; - $question->_stats->maxmark = $question->maxmark; - $question->_stats->randomguessscore = $this->get_random_guess_score($question); - - $this->initial_question_walker($question->_stats); - - if ($question->qtype == 'random') { - $randomselectorstring = $question->category.'/'.$question->questiontext; - if ($nextquestion && $nextquestion->qtype == 'random') { - $nextrandomselectorstring = $nextquestion->category . '/' . - $nextquestion->questiontext; - if ($randomselectorstring == $nextrandomselectorstring) { - continue; // Next loop iteration. - } - } - if (isset($this->randomselectors[$randomselectorstring])) { - $question->_stats->subquestions = implode(',', - $this->randomselectors[$randomselectorstring]); - } - } - } - - // Go through the records one more time. - foreach ($this->lateststeps as $step) { - $this->secondary_steps_walker($step, - $this->questions[$step->slot]->_stats); - - if ($this->questions[$step->slot]->qtype == 'random') { - $this->secondary_steps_walker($step, - $this->subquestions[$step->questionid]->_stats); - } - } - - $sumofcovariancewithoverallmark = 0; - foreach ($this->questions as $slot => $question) { - $this->secondary_question_walker($question->_stats); - - $this->sumofmarkvariance += $question->_stats->markvariance; - - if ($question->_stats->covariancewithoverallmark >= 0) { - $sumofcovariancewithoverallmark += - sqrt($question->_stats->covariancewithoverallmark); - $question->_stats->negcovar = 0; - } else { - $question->_stats->negcovar = 1; - } - } - - foreach ($this->subquestions as $subquestion) { - $this->secondary_question_walker($subquestion->_stats); - } - - foreach ($this->questions as $question) { - if ($sumofcovariancewithoverallmark) { - if ($question->_stats->negcovar) { - $question->_stats->effectiveweight = null; - } else { - $question->_stats->effectiveweight = 100 * - sqrt($question->_stats->covariancewithoverallmark) / - $sumofcovariancewithoverallmark; - } - } else { - $question->_stats->effectiveweight = null; - } - } - } - - /** - * Update $stats->totalmarks, $stats->markarray, $stats->totalothermarks - * and $stats->othermarksarray to include another state. - * - * @param object $step the state to add to the statistics. - * @param object $stats the question statistics we are accumulating. - * @param bool $positionstat whether this is a statistic of position of question. - */ - protected function initial_steps_walker($step, $stats, $positionstat = true) { - $stats->s++; - $stats->totalmarks += $step->mark; - $stats->markarray[] = $step->mark; - - if ($positionstat) { - $stats->totalothermarks += $step->sumgrades - $step->mark; - $stats->othermarksarray[] = $step->sumgrades - $step->mark; - - } else { - $stats->totalothermarks += $step->sumgrades; - $stats->othermarksarray[] = $step->sumgrades; - } - } - - /** - * Perform some computations on the per-question statistics calculations after - * we have been through all the states. - * - * @param object $stats quetsion stats to update. - */ - protected function initial_question_walker($stats) { - $stats->markaverage = $stats->totalmarks / $stats->s; - - if ($stats->maxmark != 0) { - $stats->facility = $stats->markaverage / $stats->maxmark; - } else { - $stats->facility = null; - } - - $stats->othermarkaverage = $stats->totalothermarks / $stats->s; - - sort($stats->markarray, SORT_NUMERIC); - sort($stats->othermarksarray, SORT_NUMERIC); - } - - /** - * Now we know the averages, accumulate the date needed to compute the higher - * moments of the question scores. - * - * @param object $step the state to add to the statistics. - * @param object $stats the question statistics we are accumulating. - * @param bool $positionstat whether this is a statistic of position of question. - */ - protected function secondary_steps_walker($step, $stats) { - $markdifference = $step->mark - $stats->markaverage; - if ($stats->subquestion) { - $othermarkdifference = $step->sumgrades - $stats->othermarkaverage; - } else { - $othermarkdifference = $step->sumgrades - $step->mark - - $stats->othermarkaverage; - } - $overallmarkdifference = $step->sumgrades - $this->summarksavg; - - $sortedmarkdifference = array_shift($stats->markarray) - $stats->markaverage; - $sortedothermarkdifference = array_shift($stats->othermarksarray) - - $stats->othermarkaverage; - - $stats->markvariancesum += pow($markdifference, 2); - $stats->othermarkvariancesum += pow($othermarkdifference, 2); - $stats->covariancesum += $markdifference * $othermarkdifference; - $stats->covariancemaxsum += $sortedmarkdifference * $sortedothermarkdifference; - $stats->covariancewithoverallmarksum += $markdifference * $overallmarkdifference; - } - - /** - * Perform more per-question statistics calculations. - * - * @param object $stats quetsion stats to update. - */ - protected function secondary_question_walker($stats) { - if ($stats->s > 1) { - $stats->markvariance = $stats->markvariancesum / ($stats->s - 1); - $stats->othermarkvariance = $stats->othermarkvariancesum / ($stats->s - 1); - $stats->covariance = $stats->covariancesum / ($stats->s - 1); - $stats->covariancemax = $stats->covariancemaxsum / ($stats->s - 1); - $stats->covariancewithoverallmark = $stats->covariancewithoverallmarksum / - ($stats->s - 1); - $stats->sd = sqrt($stats->markvariancesum / ($stats->s - 1)); - - } else { - $stats->markvariance = null; - $stats->othermarkvariance = null; - $stats->covariance = null; - $stats->covariancemax = null; - $stats->covariancewithoverallmark = null; - $stats->sd = null; - } - - if ($stats->markvariance * $stats->othermarkvariance) { - $stats->discriminationindex = 100 * $stats->covariance / - sqrt($stats->markvariance * $stats->othermarkvariance); - } else { - $stats->discriminationindex = null; - } - - if ($stats->covariancemax) { - $stats->discriminativeefficiency = 100 * $stats->covariance / - $stats->covariancemax; - } else { - $stats->discriminativeefficiency = null; - } - } - - /** - * @param object $questiondata - * @return number the random guess score for this question. - */ - protected function get_random_guess_score($questiondata) { - return question_bank::get_qtype( - $questiondata->qtype, false)->get_random_guess_score($questiondata); - } - - /** - * Used when computing CIC. - * @return number - */ - public function get_sum_of_mark_variance() { - return $this->sumofmarkvariance; - } -} diff --git a/mod/quiz/report/statistics/report.php b/mod/quiz/report/statistics/report.php index f30eca23073..9db615c7b52 100644 --- a/mod/quiz/report/statistics/report.php +++ b/mod/quiz/report/statistics/report.php @@ -28,9 +28,9 @@ defined('MOODLE_INTERNAL') || die(); require_once($CFG->dirroot . '/mod/quiz/report/statistics/statistics_form.php'); require_once($CFG->dirroot . '/mod/quiz/report/statistics/statistics_table.php'); require_once($CFG->dirroot . '/mod/quiz/report/statistics/statistics_question_table.php'); -require_once($CFG->dirroot . '/mod/quiz/report/statistics/qstats.php'); -require_once($CFG->dirroot . '/mod/quiz/report/statistics/responseanalysis.php'); - +require_once($CFG->dirroot . '/question/engine/statistics.php'); +require_once($CFG->dirroot . '/question/engine/responseanalysis.php'); +require_once($CFG->dirroot . '/mod/quiz/report/statistics/statisticslib.php'); /** * The quiz statistics report provides summary information about each question in @@ -104,9 +104,12 @@ class quiz_statistics_report extends quiz_default_report { } } + $qubaids = quiz_statistics_qubaids_condition($quiz->id, $currentgroup, $groupstudents, $useallattempts); + + // If recalculate was requested, handle that. if ($recalculate && confirm_sesskey()) { - $this->clear_cached_data($quiz->id, $currentgroup, $useallattempts); + $this->clear_cached_data($qubaids); redirect($reporturl); } @@ -164,21 +167,21 @@ class quiz_statistics_report extends quiz_default_report { if ($s) { $this->output_quiz_structure_analysis_table($s, $questions, $subquestions); - if ($this->table->is_downloading() == 'xhtml') { - $this->output_statistics_graph($quizstats->id, $s); + if ($this->table->is_downloading() == 'xhtml' && $s != 0) { + $this->output_statistics_graph($quiz->id, $currentgroup, $useallattempts); } foreach ($questions as $question) { if (question_bank::get_qtype( $question->qtype, false)->can_analyse_responses()) { $this->output_individual_question_response_analysis( - $question, $reporturl, $quizstats); + $question, $reporturl, $qubaids); } else if (!empty($question->_stats->subquestions)) { $subitemstodisplay = explode(',', $question->_stats->subquestions); foreach ($subitemstodisplay as $subitemid) { $this->output_individual_question_response_analysis( - $subquestions[$subitemid], $reporturl, $quizstats); + $subquestions[$subitemid], $reporturl, $qubaids); } } } @@ -194,7 +197,7 @@ class quiz_statistics_report extends quiz_default_report { $this->output_individual_question_data($quiz, $questions[$slot]); $this->output_individual_question_response_analysis( - $questions[$slot], $reporturl, $quizstats); + $questions[$slot], $reporturl, $qubaids); // Back to overview link. echo $OUTPUT->box('' . @@ -209,7 +212,7 @@ class quiz_statistics_report extends quiz_default_report { $this->output_individual_question_data($quiz, $subquestions[$qid]); $this->output_individual_question_response_analysis( - $subquestions[$qid], $reporturl, $quizstats); + $subquestions[$qid], $reporturl, $qubaids); // Back to overview link. echo $OUTPUT->box('' . @@ -232,7 +235,7 @@ class quiz_statistics_report extends quiz_default_report { if ($s) { echo $OUTPUT->heading(get_string('quizstructureanalysis', 'quiz_statistics')); $this->output_quiz_structure_analysis_table($s, $questions, $subquestions); - $this->output_statistics_graph($quizstats->id, $s); + $this->output_statistics_graph($quiz->id, $currentgroup, $useallattempts); } } @@ -323,12 +326,12 @@ class quiz_statistics_report extends quiz_default_report { /** * Display the response analysis for a question. - * @param object $question the question to report on. + * @param object $question the question to report on. * @param moodle_url $reporturl the URL to resisplay this report. - * @param object $quizstats Holds the quiz statistics. + * @param qubaid_condition $qubaids */ protected function output_individual_question_response_analysis($question, - $reporturl, $quizstats) { + $reporturl, $qubaids) { global $OUTPUT; if (!question_bank::get_qtype($question->qtype, false)->can_analyse_responses()) { @@ -361,8 +364,8 @@ class quiz_statistics_report extends quiz_default_report { } } - $responesstats = new quiz_statistics_response_analyser($question); - $responesstats->load_cached($quizstats->id); + $responesstats = new question_response_analyser($question); + $responesstats->load_cached($qubaids); $qtable->question_setup($reporturl, $question, $responesstats); if ($this->table->is_downloading()) { @@ -465,7 +468,7 @@ class quiz_statistics_report extends quiz_default_report { // The statistics. foreach ($todisplay as $property => $format) { - if (!isset($quizstats->$property) || empty($format[$property])) { + if (!isset($quizstats->$property) || !$format) { continue; } $value = $quizstats->$property; @@ -549,18 +552,16 @@ class quiz_statistics_report extends quiz_default_report { /** * Output the HTML needed to show the statistics graph. - * @param int $quizstatsid the id of the statistics to show in the graph. + * @param $quizid + * @param $currentgroup + * @param $useallattempts */ - protected function output_statistics_graph($quizstatsid, $s) { + protected function output_statistics_graph($quizid, $currentgroup, $useallattempts) { global $PAGE; - if ($s == 0) { - return; - } - $output = $PAGE->get_renderer('mod_quiz'); $imageurl = new moodle_url('/mod/quiz/report/statistics/statistics_graph.php', - array('id' => $quizstatsid)); + compact('quizid', 'currentgroup', 'useallattempts')); $graphname = get_string('statisticsreportgraph', 'quiz_statistics'); echo $output->graph($imageurl, $graphname); } @@ -568,53 +569,39 @@ class quiz_statistics_report extends quiz_default_report { /** * Return the stats data for when there are no stats to show. * - * @param array $questions question definitions. * @param int $firstattemptscount number of first attempts (optional). - * @param int $firstattemptscount total number of attempts (optional). - * @return array with three elements: + * @param int $allattemptscount total number of attempts (optional). + * @return array with two elements: * - integer $s Number of attempts included in the stats (0). - * - array $quizstats The statistics for overall attempt scores. - * - array $qstats The statistics for each question. + * - object $quizstats The statistics for overall attempt scores. */ - protected function get_emtpy_stats($questions, $firstattemptscount = 0, - $allattemptscount = 0) { + protected function get_empty_stats($firstattemptscount = 0, $allattemptscount = 0) { $quizstats = new stdClass(); $quizstats->firstattemptscount = $firstattemptscount; $quizstats->allattemptscount = $allattemptscount; - $qstats = new stdClass(); - $qstats->questions = $questions; - $qstats->subquestions = array(); - $qstats->responses = array(); - - return array(0, $quizstats, false); + return array(0, $quizstats); } /** * Compute the quiz statistics. * - * @param int $quizid the quiz id. - * @param int $currentgroup the current group. 0 for none. - * @param bool $nostudentsingroup true if there a no students. - * @param bool $useallattempts use all attempts, or just first attempts. - * @param array $groupstudents students in this group. - * @param array $questions question definitions. - * @return array with three elements: + * @param int $quizid the quiz id. + * @param int $currentgroup the current group. 0 for none. + * @param bool $useallattempts use all attempts, or just first attempts. + * @param array $groupstudents students in this group. + * @param int $p number of positions (slots). + * @param float $sumofmarkvariance sum of mark variance, calculated as part of question statistics + * @return array with two elements: * - integer $s Number of attempts included in the stats. - * - array $quizstats The statistics for overall attempt scores. - * - array $qstats The statistics for each question. + * - object $quizstats The statistics for overall attempt scores. */ - protected function compute_stats($quizid, $currentgroup, $nostudentsingroup, - $useallattempts, $groupstudents, $questions) { + protected function calculate_quiz_stats($quizid, $currentgroup, $useallattempts, $groupstudents, $p, $sumofmarkvariance) { global $DB; // Calculating MEAN of marks for all attempts by students // http://docs.moodle.org/dev/Quiz_item_analysis_calculations_in_practise // #Calculating_MEAN_of_grades_for_all_attempts_by_students. - if ($nostudentsingroup) { - return $this->get_emtpy_stats($questions); - } - list($fromqa, $whereqa, $qaparams) = quiz_statistics_attempts_sql( $quizid, $currentgroup, $groupstudents, true); @@ -628,7 +615,7 @@ class quiz_statistics_report extends quiz_default_report { GROUP BY CASE WHEN attempt = 1 THEN 1 ELSE 0 END", $qaparams); if (!$attempttotals) { - return $this->get_emtpy_stats($questions); + return $this->get_empty_stats(); } if (isset($attempttotals[1])) { @@ -660,10 +647,8 @@ class quiz_statistics_report extends quiz_default_report { $s = $usingattempts->countrecs; if ($s == 0) { - return $this->get_emtpy_stats($questions, $firstattempts->countrecs, - $allattempts->countrecs); + return $this->get_empty_stats($firstattempts->countrecs, $allattempts->countrecs); } - $summarksavg = $usingattempts->total / $usingattempts->countrecs; $quizstats = new stdClass(); $quizstats->allattempts = $useallattempts; @@ -726,113 +711,55 @@ class quiz_statistics_report extends quiz_default_report { if ($k2) { $quizstats->skewness = $k3 / (pow($k2, 3/2)); } - } - // Kurtosis. - if ($s > 3) { - $k4= $s*$s*((($s+1)*$m4)-(3*($s-1)*$m2*$m2))/(($s-1)*($s-2)*($s-3)); - if ($k2) { - $quizstats->kurtosis = $k4 / ($k2*$k2); + // Kurtosis. + if ($s > 3) { + $k4= $s*$s*((($s+1)*$m4)-(3*($s-1)*$m2*$m2))/(($s-1)*($s-2)*($s-3)); + if ($k2) { + $quizstats->kurtosis = $k4 / ($k2*$k2); + } } } } - $qstats = new quiz_statistics_question_stats($questions, $s, $summarksavg); - $qstats->load_step_data($quizid, $currentgroup, $groupstudents, $useallattempts); - $qstats->compute_statistics(); - if ($s > 1) { - $p = count($qstats->questions); // Number of positions. if ($p > 1 && isset($k2)) { $quizstats->cic = (100 * $p / ($p -1)) * - (1 - ($qstats->get_sum_of_mark_variance()) / $k2); + (1 - ($sumofmarkvariance / $k2)); $quizstats->errorratio = 100 * sqrt(1 - ($quizstats->cic / 100)); $quizstats->standarderror = $quizstats->errorratio * $quizstats->standarddeviation / 100; } } - return array($s, $quizstats, $qstats); + $this->cache_stats(quiz_statistics_qubaids_condition($quizid, $currentgroup, $groupstudents, $useallattempts), $quizstats); + + return array($s, $quizstats); } /** * Load the cached statistics from the database. * - * @param object $quiz the quiz settings - * @param int $currentgroup the current group. 0 for none. - * @param bool $nostudentsingroup true if there a no students. - * @param bool $useallattempts use all attempts, or just first attempts. - * @param array $groupstudents students in this group. - * @param array $questions question definitions. - * @return array with 4 elements: - * - $quizstats The statistics for overall attempt scores. - * - $questions The questions, with an additional _stats field. - * - $subquestions The subquestions, if any, with an additional _stats field. - * - $s Number of attempts included in the stats. - * If there is no cached data in the database, returns an array of four nulls. + * @param $qubaids qubaid_condition + * @return The statistics for overall attempt scores or false if not cached. */ - protected function try_loading_cached_stats($quiz, $currentgroup, - $nostudentsingroup, $useallattempts, $groupstudents, $questions) { + protected function get_cached_quiz_stats($qubaids) { global $DB; $timemodified = time() - self::TIME_TO_CACHE_STATS; - $quizstats = $DB->get_record_select('quiz_statistics', - 'quizid = ? AND groupid = ? AND allattempts = ? AND timemodified > ?', - array($quiz->id, $currentgroup, $useallattempts, $timemodified)); - - if (!$quizstats) { - // No cached data found. - return array(null, $questions, null, null); - } - - if ($useallattempts) { - $s = $quizstats->allattemptscount; - } else { - $s = $quizstats->firstattemptscount; - } - - $subquestions = array(); - $questionstats = $DB->get_records('quiz_question_statistics', - array('quizstatisticsid' => $quizstats->id)); - - $subquestionstats = array(); - foreach ($questionstats as $stat) { - if ($stat->slot) { - $questions[$stat->slot]->_stats = $stat; - } else { - $subquestionstats[$stat->questionid] = $stat; - } - } - - if (!empty($subquestionstats)) { - $subqstofetch = array_keys($subquestionstats); - $subquestions = question_load_questions($subqstofetch); - foreach ($subquestions as $subqid => $subq) { - $subquestions[$subqid]->_stats = $subquestionstats[$subqid]; - $subquestions[$subqid]->maxmark = $subq->defaultmark; - } - } - - return array($quizstats, $questions, $subquestions, $s); + return $DB->get_record_select('quiz_statistics', 'hashcode = ? AND timemodified > ?', + array($qubaids->get_hash_code(), $timemodified)); } /** - * Store the statistics in the cache tables in the database. - * - * @param object $quizid the quiz id. - * @param int $currentgroup the current group. 0 for none. - * @param bool $useallattempts use all attempts, or just first attempts. - * @param object $quizstats The statistics for overall attempt scores. - * @param array $questions The questions, with an additional _stats field. - * @param array $subquestions The subquestions, if any, with an additional _stats field. + * @param $qubaids qubaid_condition + * @param $quizstats object the quiz stats to cache */ - protected function cache_stats($quizid, $currentgroup, - $quizstats, $questions, $subquestions) { + protected function cache_stats($qubaids, $quizstats) { global $DB; $toinsert = clone($quizstats); - $toinsert->quizid = $quizid; - $toinsert->groupid = $currentgroup; + $toinsert->hashcode = $qubaids->get_hash_code(); $toinsert->timemodified = time(); // Fix up some dodgy data. @@ -844,19 +771,8 @@ class quiz_statistics_report extends quiz_default_report { } // Store the data. - $quizstats->id = $DB->insert_record('quiz_statistics', $toinsert); + $DB->insert_record('quiz_statistics', $toinsert); - foreach ($questions as $question) { - $question->_stats->quizstatisticsid = $quizstats->id; - $DB->insert_record('quiz_question_statistics', $question->_stats, false); - } - - foreach ($subquestions as $subquestion) { - $subquestion->_stats->quizstatisticsid = $quizstats->id; - $DB->insert_record('quiz_question_statistics', $subquestion->_stats, false); - } - - return $quizstats->id; } /** @@ -878,35 +794,45 @@ class quiz_statistics_report extends quiz_default_report { protected function get_quiz_and_questions_stats($quiz, $currentgroup, $nostudentsingroup, $useallattempts, $groupstudents, $questions) { - list($quizstats, $questions, $subquestions, $s) = - $this->try_loading_cached_stats($quiz, $currentgroup, $nostudentsingroup, - $useallattempts, $groupstudents, $questions); + $qubaids = quiz_statistics_qubaids_condition($quiz->id, $currentgroup, $groupstudents, $useallattempts); - if (is_null($quizstats)) { - list($s, $quizstats, $qstats) = $this->compute_stats($quiz->id, - $currentgroup, $nostudentsingroup, $useallattempts, $groupstudents, $questions); + $quizstats = $this->get_cached_quiz_stats($qubaids); + + $qstats = new question_statistics($questions); + + if (empty($quizstats)) { + // Recalculate now. + $qstats->calculate($qubaids); + + if ($nostudentsingroup) { + list($s, $quizstats) = $this->get_empty_stats(); + } else { + list($s, $quizstats) = $this->calculate_quiz_stats($quiz->id, $currentgroup, $useallattempts, + $groupstudents, count($questions), $qstats->get_sum_of_mark_variance()); + } + + $questions = $qstats->questions; + $subquestions = $qstats->subquestions; if ($s) { - $questions = $qstats->questions; - $subquestions = $qstats->subquestions; - - $quizstatisticsid = $this->cache_stats($quiz->id, $currentgroup, - $quizstats, $questions, $subquestions); - - $this->analyse_responses($quizstatisticsid, $quiz->id, $currentgroup, - $nostudentsingroup, $useallattempts, $groupstudents, - $questions, $subquestions); + $this->calculate_responses_for_all_questions_and_subquestions($qubaids, $questions, $subquestions); } + } else { + if ($useallattempts) { + $s = $quizstats->allattemptscount; + } else { + $s = $quizstats->firstattemptscount; + } + $qstats->get_cached($qubaids); + $questions = $qstats->questions; + $subquestions = $qstats->subquestions; + } return array($quizstats, $questions, $subquestions, $s); } - protected function analyse_responses($quizstatisticsid, $quizid, $currentgroup, - $nostudentsingroup, $useallattempts, $groupstudents, $questions, $subquestions) { - - $qubaids = quiz_statistics_qubaids_condition( - $quizid, $currentgroup, $groupstudents, $useallattempts); + protected function calculate_responses_for_all_questions_and_subquestions($qubaids, $questions, $subquestions) { $done = array(); foreach ($questions as $question) { @@ -915,9 +841,8 @@ class quiz_statistics_report extends quiz_default_report { } $done[$question->id] = 1; - $responesstats = new quiz_statistics_response_analyser($question); - $responesstats->analyse($qubaids); - $responesstats->store_cached($quizstatisticsid); + $responesstats = new question_response_analyser($question); + $responesstats->calculate($qubaids); } foreach ($subquestions as $question) { @@ -927,9 +852,8 @@ class quiz_statistics_report extends quiz_default_report { } $done[$question->id] = 1; - $responesstats = new quiz_statistics_response_analyser($question); - $responesstats->analyse($qubaids); - $responesstats->store_cached($quizstatisticsid); + $responesstats = new question_response_analyser($question); + $responesstats->calculate($qubaids); } } @@ -957,12 +881,13 @@ class quiz_statistics_report extends quiz_default_report { /** * Generate the snipped of HTML that says when the stats were last caculated, * with a recalcuate now button. - * @param object $quizstats the overall quiz statistics. - * @param int $quizid the quiz id. - * @param int $currentgroup the id of the currently selected group, or 0. - * @param array $groupstudents ids of students in the group. - * @param bool $useallattempts whether to use all attempts, instead of just - * first attempts. + * @param object $quizstats the overall quiz statistics. + * @param int $quizid the quiz id. + * @param int $currentgroup the id of the currently selected group, or 0. + * @param array $groupstudents ids of students in the group. + * @param bool $useallattempts whether to use all attempts, instead of just + * first attempts. + * @param moodle_url $reporturl url for this report * @return string a HTML snipped saying when the stats were last computed, * or blank if that is not appropriate. */ @@ -1008,28 +933,13 @@ class quiz_statistics_report extends quiz_default_report { /** * Clear the cached data for a particular report configuration. This will * trigger a re-computation the next time the report is displayed. - * @param int $quizid the quiz id. - * @param int $currentgroup a group id, or 0. - * @param bool $useallattempts whether all attempts, or just first attempts are included. + * @param $qubaids qubaid_condition */ - protected function clear_cached_data($quizid, $currentgroup, $useallattempts) { + protected function clear_cached_data($qubaids) { global $DB; - - $todelete = $DB->get_records_menu('quiz_statistics', array('quizid' => $quizid, - 'groupid' => $currentgroup, 'allattempts' => $useallattempts), '', 'id, 1'); - - if (!$todelete) { - return; - } - - list($todeletesql, $todeleteparams) = $DB->get_in_or_equal(array_keys($todelete)); - - $DB->delete_records_select('quiz_question_statistics', - 'quizstatisticsid ' . $todeletesql, $todeleteparams); - $DB->delete_records_select('quiz_question_response_stats', - 'quizstatisticsid ' . $todeletesql, $todeleteparams); - $DB->delete_records_select('quiz_statistics', - 'id ' . $todeletesql, $todeleteparams); + $DB->delete_records('quiz_statistics', array('hashcode' => $qubaids->get_hash_code())); + $DB->delete_records('question_statistics', array('hashcode' => $qubaids->get_hash_code())); + $DB->delete_records('question_response_analysis', array('hashcode' => $qubaids->get_hash_code())); } /** @@ -1067,42 +977,3 @@ class quiz_statistics_report extends quiz_default_report { } } -function quiz_statistics_attempts_sql($quizid, $currentgroup, $groupstudents, - $allattempts = true, $includeungraded = false) { - global $DB; - - $fromqa = '{quiz_attempts} quiza '; - - $whereqa = 'quiza.quiz = :quizid AND quiza.preview = 0 AND quiza.state = :quizstatefinished'; - $qaparams = array('quizid' => $quizid, 'quizstatefinished' => quiz_attempt::FINISHED); - - if (!empty($currentgroup) && $groupstudents) { - list($grpsql, $grpparams) = $DB->get_in_or_equal(array_keys($groupstudents), - SQL_PARAMS_NAMED, 'u'); - $whereqa .= " AND quiza.userid $grpsql"; - $qaparams += $grpparams; - } - - if (!$allattempts) { - $whereqa .= ' AND quiza.attempt = 1'; - } - - if (!$includeungraded) { - $whereqa .= ' AND quiza.sumgrades IS NOT NULL'; - } - - return array($fromqa, $whereqa, $qaparams); -} - -/** - * Return a {@link qubaid_condition} from the values returned by - * {@link quiz_statistics_attempts_sql} - * @param string $fromqa from quiz_statistics_attempts_sql. - * @param string $whereqa from quiz_statistics_attempts_sql. - */ -function quiz_statistics_qubaids_condition($quizid, $currentgroup, $groupstudents, - $allattempts = true, $includeungraded = false) { - list($fromqa, $whereqa, $qaparams) = quiz_statistics_attempts_sql($quizid, $currentgroup, - $groupstudents, $allattempts, $includeungraded); - return new qubaid_join($fromqa, 'quiza.uniqueid', $whereqa, $qaparams); -} diff --git a/mod/quiz/report/statistics/statistics_graph.php b/mod/quiz/report/statistics/statistics_graph.php index c7d7852fa05..be6c7a9d5a6 100644 --- a/mod/quiz/report/statistics/statistics_graph.php +++ b/mod/quiz/report/statistics/statistics_graph.php @@ -33,30 +33,14 @@ require_once(dirname(__FILE__) . '/../../../../config.php'); require_once($CFG->libdir . '/graphlib.php'); require_once($CFG->dirroot . '/mod/quiz/locallib.php'); require_once($CFG->dirroot . '/mod/quiz/report/reportlib.php'); - - -/** - * This helper function returns a sequence of colours each time it is called. - * Used for chooseing colours for graph data series. - * @return string colour name. - */ -function graph_get_new_colour() { - static $colourindex = -1; - $colours = array('red', 'green', 'yellow', 'orange', 'purple', 'black', - 'maroon', 'blue', 'ltgreen', 'navy', 'ltred', 'ltltgreen', 'ltltorange', - 'olive', 'gray', 'ltltred', 'ltorange', 'lime', 'ltblue', 'ltltblue'); - - $colourindex = ($colourindex + 1) % count($colours); - - return $colours[$colourindex]; -} +require_once($CFG->dirroot . '/mod/quiz/report/statistics/statisticslib.php'); // Get the parameters. -$quizstatisticsid = required_param('id', PARAM_INT); +$quizid = required_param('quizid', PARAM_INT); +$currentgroup = required_param('currentgroup', PARAM_INT); +$useallattempts = required_param('useallattempts', PARAM_INT); -// Load enough data to check permissions. -$quizstatistics = $DB->get_record('quiz_statistics', array('id' => $quizstatisticsid)); -$quiz = $DB->get_record('quiz', array('id' => $quizstatistics->quizid), '*', MUST_EXIST); +$quiz = $DB->get_record('quiz', array('id' => $quizid), '*', MUST_EXIST); $cm = get_coursemodule_from_instance('quiz', $quiz->id); // Check access. @@ -69,14 +53,21 @@ if (groups_get_activity_groupmode($cm)) { } else { $groups = array(); } -if ($quizstatistics->groupid && !in_array($quizstatistics->groupid, array_keys($groups))) { +if ($currentgroup && !in_array($currentgroup, array_keys($groups))) { print_error('groupnotamember', 'group'); } +$groupstudents = get_users_by_capability($modcontext, array('mod/quiz:reviewmyattempts', 'mod/quiz:attempt'), + '', '', '', '', $currentgroup, '', false); + +$qubaids = quiz_statistics_qubaids_condition($quizid, $currentgroup, $groupstudents, $useallattempts); // Load the rest of the required data. $questions = quiz_report_get_significant_questions($quiz); -$questionstatistics = $DB->get_records_select('quiz_question_statistics', - 'quizstatisticsid = ? AND slot IS NOT NULL', array($quizstatistics->id)); + +// Load enough data to check permissions. +$quizstatistics = $DB->get_record('quiz_statistics', array('hashcode' => $qubaids->get_hash_code())); +$questionstatistics = $DB->get_records_select('question_statistics', 'hashcode = ? AND slot IS NOT NULL', + array($qubaids->get_hash_code())); // Create the graph, and set the basic options. $graph = new graph(800, 600); @@ -108,7 +99,7 @@ $xdata = array(); foreach (array_keys($fieldstoplot) as $fieldtoplot) { $ydata[$fieldtoplot] = array(); $graph->y_format[$fieldtoplot] = array( - 'colour' => graph_get_new_colour(), + 'colour' => quiz_statistics_graph_get_new_colour(), 'bar' => 'fill', 'shadow_offset' => 1, 'legend' => $fieldstoplot[$fieldtoplot] diff --git a/mod/quiz/report/statistics/statistics_question_table.php b/mod/quiz/report/statistics/statistics_question_table.php index d50b0d40f05..508775b79d3 100644 --- a/mod/quiz/report/statistics/statistics_question_table.php +++ b/mod/quiz/report/statistics/statistics_question_table.php @@ -61,7 +61,7 @@ class quiz_statistics_question_table extends flexible_table { * @param bool $hassubqs */ public function question_setup($reporturl, $questiondata, - quiz_statistics_response_analyser $responesstats) { + question_response_analyser $responesstats) { $this->questiondata = $questiondata; $this->define_baseurl($reporturl->out()); diff --git a/mod/quiz/report/statistics/statisticslib.php b/mod/quiz/report/statistics/statisticslib.php new file mode 100644 index 00000000000..c947dc852d1 --- /dev/null +++ b/mod/quiz/report/statistics/statisticslib.php @@ -0,0 +1,84 @@ +. + +/** + * Common functions for the quiz statistics report. + * + * @package quiz_statistics + * @copyright 2013 The Open University + * @author James Pratt me@jamiep.org + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +function quiz_statistics_attempts_sql($quizid, $currentgroup, $groupstudents, + $allattempts = true, $includeungraded = false) { + global $DB; + + $fromqa = '{quiz_attempts} quiza '; + + $whereqa = 'quiza.quiz = :quizid AND quiza.preview = 0 AND quiza.state = :quizstatefinished'; + $qaparams = array('quizid' => (int)$quizid, 'quizstatefinished' => quiz_attempt::FINISHED); + + if (!empty($currentgroup) && $groupstudents) { + list($grpsql, $grpparams) = $DB->get_in_or_equal(array_keys($groupstudents), + SQL_PARAMS_NAMED, 'u'); + $whereqa .= " AND quiza.userid $grpsql"; + $qaparams += $grpparams; + } + + if (!$allattempts) { + $whereqa .= ' AND quiza.attempt = 1'; + } + + if (!$includeungraded) { + $whereqa .= ' AND quiza.sumgrades IS NOT NULL'; + } + + return array($fromqa, $whereqa, $qaparams); +} + +/** + * Return a {@link qubaid_condition} from the values returned by {@link quiz_statistics_attempts_sql}. + * + * @param int $quizid + * @param int $currentgroup + * @param array $groupstudents + * @param bool $allattempts + * @param bool $includeungraded + * @return \qubaid_join + */ +function quiz_statistics_qubaids_condition($quizid, $currentgroup, $groupstudents, + $allattempts = true, $includeungraded = false) { + list($fromqa, $whereqa, $qaparams) = quiz_statistics_attempts_sql($quizid, $currentgroup, + $groupstudents, $allattempts, $includeungraded); + return new qubaid_join($fromqa, 'quiza.uniqueid', $whereqa, $qaparams); +} + +/** + * This helper function returns a sequence of colours each time it is called. + * Used for choosing colours for graph data series. + * @return string colour name. + */ +function quiz_statistics_graph_get_new_colour() { + static $colourindex = -1; + $colours = array('red', 'green', 'yellow', 'orange', 'purple', 'black', + 'maroon', 'blue', 'ltgreen', 'navy', 'ltred', 'ltltgreen', 'ltltorange', + 'olive', 'gray', 'ltltred', 'ltorange', 'lime', 'ltblue', 'ltltblue'); + + $colourindex = ($colourindex + 1) % count($colours); + + return $colours[$colourindex]; +} diff --git a/mod/quiz/report/statistics/tests/statistics_test.php b/mod/quiz/report/statistics/tests/statistics_test.php index 1a7db855227..db191e439f2 100644 --- a/mod/quiz/report/statistics/tests/statistics_test.php +++ b/mod/quiz/report/statistics/tests/statistics_test.php @@ -15,7 +15,7 @@ // along with Moodle. If not, see . /** - * Unit tests for (some of) mod/quiz/report/statistics/qstats.php. + * Unit tests for (some of) /question/engine/statistics.php * * @package quiz_statistics * @category phpunit @@ -28,18 +28,18 @@ defined('MOODLE_INTERNAL') || die(); global $CFG; require_once($CFG->libdir . '/questionlib.php'); -require_once($CFG->dirroot . '/mod/quiz/report/statistics/qstats.php'); +require_once($CFG->dirroot . '/question/engine/statistics.php'); require_once($CFG->dirroot . '/mod/quiz/locallib.php'); require_once($CFG->dirroot . '/mod/quiz/report/reportlib.php'); /** - * Test helper subclass of quiz_statistics_question_stats + * Test helper subclass of question_statistics * * @copyright 2010 The Open University * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -class testable_quiz_statistics_question_stats extends quiz_statistics_question_stats { +class testable_question_statistics extends question_statistics { public function set_step_data($states) { $this->lateststeps = $states; } @@ -47,11 +47,38 @@ class testable_quiz_statistics_question_stats extends quiz_statistics_question_s protected function get_random_guess_score($questiondata) { return 0; } + + /** + * @param $qubaids qubaid_condition is ignored in this test + * @return array with three items + * - $lateststeps array of latest step data for the question usages + * - $summarks array of total marks for each usage, indexed by usage id + * - $summarksavg the average of the total marks over all the usages */ + protected function get_latest_steps($qubaids) { + $summarks = array(); + $fakeusageid = 0; + foreach ($this->lateststeps as $step) { + // The same 'sumgrades' field is available in step data for every slot, we will ignore all slots but slot 1. + // The step for slot 1 is always the first one in the csv file for each usage, we will use that to separate steps from + // each usage. + if ($step->slot == 1) { + $fakeusageid++; + $summarks[$fakeusageid] = $step->sumgrades; + } + unset($step->sumgrades); + $step->questionusageid = $fakeusageid; + } + + $summarksavg = array_sum($summarks) / count($summarks); + return array($this->lateststeps, $summarks, $summarksavg); + } + + protected function cache_stats($qubaids) { + // No caching wanted for tests. + } } - - /** - * Unit tests for (some of) quiz_statistics_question_stats. + * Unit tests for (some of) question_statistics. * * @copyright 2008 Jamie Pratt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later @@ -68,9 +95,9 @@ class quiz_statistics_question_stats_testcase extends basic_testcase { // Data is taken from questions mostly generated by // contrib/tools/generators/generator.php. $questions = $this->get_records_from_csv(__DIR__.'/fixtures/mdl_question.csv'); - $this->qstats = new testable_quiz_statistics_question_stats($questions, 22, 10045.45455); + $this->qstats = new testable_question_statistics($questions, 22, 10045.45455); $this->qstats->set_step_data($steps); - $this->qstats->compute_statistics(); + $this->qstats->calculate(null); // Values expected are taken from contrib/tools/quiz_tools/stats.xls. $facility = array(0, 0, 0, 0, null, null, null, 41.19318182, 81.36363636, diff --git a/mod/quiz/report/statistics/tests/stats_from_steps_walkthrough_test.php b/mod/quiz/report/statistics/tests/stats_from_steps_walkthrough_test.php index 50169d6e262..6e816cab706 100644 --- a/mod/quiz/report/statistics/tests/stats_from_steps_walkthrough_test.php +++ b/mod/quiz/report/statistics/tests/stats_from_steps_walkthrough_test.php @@ -17,7 +17,7 @@ /** * Quiz attempt walk through using data from csv file. * - * @package mod_quiz + * @package quiz_statistics * @category phpunit * @copyright 2013 The Open University * @author Jamie Pratt @@ -42,7 +42,8 @@ class testable_quiz_statistics_report extends quiz_statistics_report { public function get_stats($quiz, $useallattempts = true, $currentgroup = 0, $groupstudents = array(), $nostudentsingroup = false) { - $this->clear_cached_data($quiz->id, $currentgroup, $useallattempts); + $qubaids = quiz_statistics_qubaids_condition($quiz->id, $currentgroup, $groupstudents, $useallattempts); + $this->clear_cached_data($qubaids); $questions = $this->load_and_initialise_questions_for_calculations($quiz); return $this->get_quiz_and_questions_stats($quiz, $currentgroup, $nostudentsingroup, $useallattempts, $groupstudents, $questions); @@ -52,7 +53,7 @@ class testable_quiz_statistics_report extends quiz_statistics_report { /** * Quiz attempt walk through using data from csv file. * - * @package mod_quiz + * @package quiz_statistics * @category phpunit * @copyright 2013 The Open University * @author Jamie Pratt diff --git a/mod/quiz/report/statistics/version.php b/mod/quiz/report/statistics/version.php index 1f1d44e8448..81516932665 100644 --- a/mod/quiz/report/statistics/version.php +++ b/mod/quiz/report/statistics/version.php @@ -24,7 +24,7 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2013050100; -$plugin->requires = 2013050100; +$plugin->version = 2013092000; +$plugin->requires = 2013092000; $plugin->cron = 18000; $plugin->component = 'quiz_statistics'; diff --git a/mod/resource/backup/moodle1/lib.php b/mod/resource/backup/moodle1/lib.php index 8fb5af344da..30eaba7058e 100644 --- a/mod/resource/backup/moodle1/lib.php +++ b/mod/resource/backup/moodle1/lib.php @@ -113,9 +113,11 @@ class moodle1_mod_resource_handler extends moodle1_mod_handler { // use the version of the successor instead of the current mod/resource // beware - the version.php declares info via $module object, do not use // a variable of such name here - $module = new stdClass(); + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; include $CFG->dirroot.'/mod/'.$successor->get_modname().'/version.php'; - $cminfo['version'] = $module->version; + $cminfo['version'] = $plugin->version; // stash the new course module information for this successor $cminfo['modulename'] = $successor->get_modname(); diff --git a/mod/scorm/backup/moodle2/backup_scorm_stepslib.php b/mod/scorm/backup/moodle2/backup_scorm_stepslib.php index 11712d028f1..64694426181 100644 --- a/mod/scorm/backup/moodle2/backup_scorm_stepslib.php +++ b/mod/scorm/backup/moodle2/backup_scorm_stepslib.php @@ -42,7 +42,7 @@ class backup_scorm_activity_structure_step extends backup_activity_structure_ste 'whatgrade', 'maxattempt', 'forcecompleted', 'forcenewattempt', 'lastattemptlock', 'displayattemptstatus', 'displaycoursestructure', 'updatefreq', 'sha1hash', 'md5hash', 'revision', 'launch', - 'skipview', 'hidebrowse', 'hidetoc', 'hidenav', + 'skipview', 'hidebrowse', 'hidetoc', 'nav', 'navpositionleft', 'navpositiontop', 'auto', 'popup', 'options', 'width', 'height', 'timeopen', 'timeclose', 'timemodified', 'completionstatusrequired', 'completionscorerequired')); diff --git a/mod/scorm/datamodels/scorm_13lib.php b/mod/scorm/datamodels/scorm_13lib.php index 906d288f147..eca069ffcfb 100644 --- a/mod/scorm/datamodels/scorm_13lib.php +++ b/mod/scorm/datamodels/scorm_13lib.php @@ -986,7 +986,11 @@ function scorm_seq_rollup_rule_check ($sco, $userid, $action) { function scorm_seq_flow_tree_traversal($activity, $direction, $childrenflag, $prevdirection, $seq, $userid, $skip = false) { $revdirection = false; $parent = scorm_get_parent($activity); - $children = scorm_get_available_children($parent); + if (!empty($parent)) { + $children = scorm_get_available_children($parent); + } else { + $children = array(); + } $childrensize = count($children); if (($prevdirection != null && $prevdirection == 'backward') && ($children[$childrensize-1]->id == $activity->id)) { diff --git a/mod/scorm/db/install.xml b/mod/scorm/db/install.xml index d69f1ea6a00..6661d0f0c68 100644 --- a/mod/scorm/db/install.xml +++ b/mod/scorm/db/install.xml @@ -1,5 +1,5 @@ - @@ -31,7 +31,9 @@ - + + + diff --git a/mod/scorm/db/upgrade.php b/mod/scorm/db/upgrade.php index 870a9886f12..f2171b85fb2 100644 --- a/mod/scorm/db/upgrade.php +++ b/mod/scorm/db/upgrade.php @@ -129,6 +129,52 @@ function xmldb_scorm_upgrade($oldversion) { upgrade_mod_savepoint(true, 2013081303, 'scorm'); } + if ($oldversion < 2013090100) { + global $CFG; + $table = new xmldb_table('scorm'); + + $field = new xmldb_field('nav', XMLDB_TYPE_INTEGER, '1', XMLDB_UNSIGNED, true, null, 1, 'hidetoc'); + if (!$dbman->field_exists($table, $field)) { + $dbman->add_field($table, $field); + } + + $field = new xmldb_field('navpositionleft', XMLDB_TYPE_INTEGER, '10', XMLDB_UNSIGNED, null, null, -100, 'nav'); + if (!$dbman->field_exists($table, $field)) { + $dbman->add_field($table, $field); + } + + $field = new xmldb_field('navpositiontop', XMLDB_TYPE_INTEGER, '10', XMLDB_UNSIGNED, null, null, -100, 'navpositionleft'); + if (!$dbman->field_exists($table, $field)) { + $dbman->add_field($table, $field); + } + + $field = new xmldb_field('hidenav'); + if ($dbman->field_exists($table, $field)) { + // Update nav setting to show floating navigation buttons under TOC. + $DB->set_field('scorm', 'nav', 2, array('hidenav' => 0)); + $DB->set_field('scorm', 'navpositionleft', 215, array('hidenav' => 2)); + $DB->set_field('scorm', 'navpositiontop', 300, array('hidenav' => 2)); + + // Update nav setting to disable navigation buttons. + $DB->set_field('scorm', 'nav', 0, array('hidenav' => 1)); + // Drop hidenav field. + $dbman->drop_field($table, $field); + } + + $hide = get_config('scorm', 'hidenav'); + unset_config('hidenav', 'scorm'); + if (!empty($hide)) { + require_once($CFG->dirroot . '/mod/scorm/lib.php'); + set_config('nav', SCORM_NAV_DISABLED, 'scorm'); + } + + $hideadv = get_config('scorm', 'hidenav_adv'); + unset_config('hidenav_adv', 'scorm'); + set_config('nav_adv', $hideadv, 'scorm'); + + upgrade_mod_savepoint(true, 2013090100, 'scorm'); + } + return true; } diff --git a/mod/scorm/lang/en/scorm.php b/mod/scorm/lang/en/scorm.php index f39efdaa8fe..bb484893580 100644 --- a/mod/scorm/lang/en/scorm.php +++ b/mod/scorm/lang/en/scorm.php @@ -33,6 +33,7 @@ $string['activityoverview'] = 'You have SCORM packages that need attention'; $string['activitypleasewait'] = 'Activity loading, please wait ...'; $string['adminsettings'] = 'Admin settings'; $string['advanced'] = 'Parameters'; +$string['aliasonly'] = 'When selecting an imsmanifest.xml file from a repository you must use an alias/shortcut for this file.'; $string['allowapidebug'] = 'Activate API debug and tracing (set the capture mask with apidebugmask)'; $string['allowtypeexternal'] = 'Enable external package type'; $string['allowtypeexternalaicc'] = 'Enable direct AICC URL'; @@ -67,6 +68,8 @@ $string['browsemode'] = 'Preview mode'; $string['browserepository'] = 'Browse repository'; $string['calculatedweight'] = 'Calculated weight'; $string['cannotfindsco'] = 'Could not find SCO'; +$string['collapsetocwinsize'] = 'Collapse TOC when window size below'; +$string['collapsetocwinsizedesc'] = 'This setting lets you specify the window size below which the TOC should automatically collapse.'; $string['compatibilitysettings'] = 'Compatibility settings'; $string['completed'] = 'Completed'; $string['completionscorerequired'] = 'Require minimum score'; @@ -118,6 +121,7 @@ $string['finishscorm'] = 'If you have finished viewing this resource, {$a}'; $string['finishscormlinkname'] = 'click here to return to the course page'; $string['firstaccess'] = 'First access'; $string['firstattempt'] = 'First attempt'; +$string['floating'] = 'Floating'; $string['forcecompleted'] = 'Force completed'; $string['forcecompleted_help'] = 'If enabled, the status of the current attempt is forced to "completed". (Only applicable to SCORM 1.2 packages.)'; $string['forcecompleteddesc'] = 'This preference sets the default value for the force completed setting'; @@ -130,6 +134,8 @@ $string['forcejavascriptmessage'] = 'JavaScript is required to view this object, $string['found'] = 'Manifest found'; $string['frameheight'] = 'The height of the stage frame or window.'; $string['framewidth'] = 'The width of the stage frame or window.'; +$string['fromleft'] = 'From left'; +$string['fromtop'] = 'From top'; $string['fullscreen'] = 'Fill the whole screen'; $string['general'] = 'General data'; $string['gradeaverage'] = 'Average grade'; @@ -155,8 +161,6 @@ $string['hidebrowse'] = 'Disable preview mode'; $string['hidebrowse_help'] = 'Preview mode allows a student to browse an activity before attempting it. If preview mode is disabled, the preview button is hidden.'; $string['hidebrowsedesc'] = 'Preview mode allows a student to browse an activity before attempting it.'; $string['hideexit'] = 'Hide exit link'; -$string['hidenav'] = 'Hide navigation buttons'; -$string['hidenavdesc'] = 'Whether to show or hide the navigation buttons.'; $string['hidereview'] = 'Hide review button'; $string['hidetoc'] = 'Display course structure in player'; $string['hidetoc_help'] = 'How the table of contents is displayed in the SCORM player'; @@ -167,6 +171,7 @@ $string['identifier'] = 'Question identifier'; $string['incomplete'] = 'Incomplete'; $string['info'] = 'Info'; $string['interactions'] = 'Interactions'; +$string['repositorynotsupported'] = 'Only file system repositories are supported when linking directly to an imsmanifest.xml file.'; $string['trackid'] = 'Id'; $string['trackid_help'] = 'This is the identifier set by your SCORM package for this question, the SCORM specification doesn\'t allow the full question text to be provided.'; $string['trackcorrectcount'] = 'Correct count'; @@ -194,6 +199,7 @@ $string['tracktype_help'] = 'Type of the question, for example "choice" or "shor $string['trackweight'] = 'Weight'; $string['trackweight_help'] = 'Weight assigned to the question when calculating score.'; $string['invalidactivity'] = 'SCORM activity is incorrect'; +$string['invalidmanifestname'] = 'Only imsmanifest.xml or .zip files may be selected'; $string['invalidurl'] = 'Invalid URL specified'; $string['invalidurlhttpcheck'] = 'Invalid URL specified. Debug message:
                {$a->cmsg}
                '; $string['invalidhacpsession'] = 'Invalid HACP session'; @@ -227,6 +233,17 @@ SCORM activities may be used * As an assessment tool'; $string['modulename_link'] = 'mod/scorm/view'; $string['modulenameplural'] = 'SCORM packages'; +$string['nav'] = 'Show Navigation'; +$string['nav_help'] = 'This setting specifies wether to show or hide the navigation buttons and their position. + +There are 3 options: + +* No - Do not show the navigation buttons +* Under content - Show the navigation buttons under SCORM package content +* Float - Allows to manually specify the navigation buttons position from left and from top with respect to the window.'; +$string['navdesc'] = 'This setting specifies wether to show/hide navigation buttons and their position.'; +$string['navpositionleft'] = 'Position of navigation buttons from left in pixels.'; +$string['navpositiontop'] = 'Position of navigation buttons from top in pixels.'; $string['newattempt'] = 'Start a new attempt'; $string['next'] = 'Continue'; $string['noactivity'] = 'Nothing to report'; @@ -340,6 +357,7 @@ $string['typeaiccurl'] = 'External AICC URL'; $string['typeexternal'] = 'External SCORM manifest'; $string['typelocal'] = 'Uploaded package'; $string['typelocalsync'] = 'Downloaded package'; +$string['undercontent'] = 'Under content'; $string['unziperror'] = 'An error occurs during package unzip'; $string['updatefreq'] = 'Auto-update frequency'; $string['updatefreq_error'] = 'Auto-update frequency can only be set when the package file is hosted externally'; diff --git a/mod/scorm/lib.php b/mod/scorm/lib.php index a3d17cd7508..c1e63298d86 100644 --- a/mod/scorm/lib.php +++ b/mod/scorm/lib.php @@ -34,6 +34,11 @@ define('SCORM_TOC_HIDDEN', 1); define('SCORM_TOC_POPUP', 2); define('SCORM_TOC_DISABLED', 3); +// Used to show/hide navigation buttons and set their position. +define('SCORM_NAV_DISABLED', 0); +define('SCORM_NAV_UNDER_CONTENT', 1); +define('SCORM_NAV_FLOATING', 2); + //used to check what SCORM version is being used. define('SCORM_12', 1); define('SCORM_13', 2); @@ -953,6 +958,22 @@ function scorm_pluginfile($course, $cm, $context, $filearea, $args, $forcedownlo $fullpath = "/$context->id/mod_scorm/package/0/$relativepath"; $lifetime = 0; // no caching here + } else if ($filearea === 'imsmanifest') { // This isn't a real filearea, it's a url parameter for this type of package. + $revision = (int)array_shift($args); // Prevents caching problems - ignored here. + $relativepath = implode('/', $args); + + // Get imsmanifest file. + $fs = get_file_storage(); + $files = $fs->get_area_files($context->id, 'mod_scorm', 'package', 0, '', false); + $file = reset($files); + + // Check that the package file is an imsmanifest.xml file - if not then this method is not allowed. + $packagefilename = $file->get_filename(); + if (strtolower($packagefilename) !== 'imsmanifest.xml') { + return false; + } + + $file->send_relative_file($relativepath); } else { return false; } diff --git a/mod/scorm/loadSCO.php b/mod/scorm/loadSCO.php index 8b39f3e0fdf..330944e2dc2 100644 --- a/mod/scorm/loadSCO.php +++ b/mod/scorm/loadSCO.php @@ -148,11 +148,14 @@ if (scorm_external_link($sco->launch)) { //TODO: does this happen? $result = $launcher; } else if ($scorm->scormtype === SCORM_TYPE_EXTERNAL) { - // Remote learning activity + // Remote learning activity. $result = dirname($scorm->reference).'/'.$launcher; +} else if ($scorm->scormtype === SCORM_TYPE_LOCAL && strtolower($scorm->reference) == 'imsmanifest.xml') { + // This SCORM content sits in a repository that allows relative links. + $result = "$CFG->wwwroot/pluginfile.php/$context->id/mod_scorm/imsmanifest/$scorm->revision/$launcher"; } else if ($scorm->scormtype === SCORM_TYPE_LOCAL or $scorm->scormtype === SCORM_TYPE_LOCALSYNC) { - //note: do not convert this to use get_file_url() or moodle_url() - //SCORM does not work without slasharguments and moodle_url() encodes querystring vars + // Note: do not convert this to use get_file_url() or moodle_url() + // SCORM does not work without slasharguments and moodle_url() encodes querystring vars. $result = "$CFG->wwwroot/pluginfile.php/$context->id/mod_scorm/content/$scorm->revision/$launcher"; } diff --git a/mod/scorm/loaddatamodel.php b/mod/scorm/loaddatamodel.php index 297375d25e8..f9d6ba1bff6 100644 --- a/mod/scorm/loaddatamodel.php +++ b/mod/scorm/loaddatamodel.php @@ -29,6 +29,7 @@ $id = optional_param('id', 0, PARAM_INT); // Course Module ID, or $a = optional_param('a', 0, PARAM_INT); // scorm ID. $scoid = required_param('scoid', PARAM_INT); // sco ID. $mode = optional_param('mode', '', PARAM_ALPHA); // navigation mode. +$currentorg = optional_param('currentorg', '', PARAM_RAW); // Selected organization. $attempt = required_param('attempt', PARAM_INT); // new attempt. if (!empty($id)) { diff --git a/mod/scorm/locallib.php b/mod/scorm/locallib.php index b1cde822434..77d958ffc3a 100644 --- a/mod/scorm/locallib.php +++ b/mod/scorm/locallib.php @@ -149,6 +149,17 @@ function scorm_get_popup_display_array() { 1 => get_string('popup', 'scorm')); } +/** + * Returns an array of the array of navigation buttons display options + * + * @return array an array of navigation buttons display options + */ +function scorm_get_navigation_display_array() { + return array(SCORM_NAV_DISABLED => get_string('no'), + SCORM_NAV_UNDER_CONTENT => get_string('undercontent', 'scorm'), + SCORM_NAV_FLOATING => get_string('floating', 'scorm')); +} + /** * Returns an array of the array of attempt options * @@ -199,6 +210,7 @@ function scorm_parse($scorm, $full) { $fs = get_file_storage(); $packagefile = false; + $packagefileimsmanifest = false; if ($scorm->scormtype === SCORM_TYPE_LOCAL) { if ($packagefile = $fs->get_file($context->id, 'mod_scorm', 'package', 0, '/', $scorm->reference)) { @@ -206,6 +218,9 @@ function scorm_parse($scorm, $full) { $packagefile->import_external_file_contents(); } $newhash = $packagefile->get_contenthash(); + if (strtolower($packagefile->get_filename()) == 'imsmanifest.xml') { + $packagefileimsmanifest = true; + } } else { $newhash = null; } @@ -228,8 +243,8 @@ function scorm_parse($scorm, $full) { if ($packagefile) { if (!$full and $packagefile and $scorm->sha1hash === $newhash) { if (strpos($scorm->version, 'SCORM') !== false) { - if ($fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { - // no need to update + if ($packagefileimsmanifest || $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { + // No need to update. return; } } else if (strpos($scorm->version, 'AICC') !== false) { @@ -237,18 +252,25 @@ function scorm_parse($scorm, $full) { return; } } + if (!$packagefileimsmanifest) { + // Now extract files. + $fs->delete_area_files($context->id, 'mod_scorm', 'content'); - // now extract files - $fs->delete_area_files($context->id, 'mod_scorm', 'content'); - - $packer = get_file_packer('application/zip'); - $packagefile->extract_to_storage($packer, $context->id, 'mod_scorm', 'content', 0, '/'); + $packer = get_file_packer('application/zip'); + $packagefile->extract_to_storage($packer, $context->id, 'mod_scorm', 'content', 0, '/'); + } } else if (!$full) { return; } + if ($packagefileimsmanifest) { + require_once("$CFG->dirroot/mod/scorm/datamodels/scormlib.php"); + // Direct link to imsmanifest.xml file. + if (!scorm_parse_scorm($scorm, $packagefile)) { + $scorm->version = 'ERROR'; + } - if ($manifest = $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { + } else if ($manifest = $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { require_once("$CFG->dirroot/mod/scorm/datamodels/scormlib.php"); // SCORM if (!scorm_parse_scorm($scorm, $manifest)) { @@ -1445,7 +1467,7 @@ function scorm_get_toc_object($user, $scorm, $currentorg='', $scoid='', $mode='n } // Get the parent scoes! - $result = scorm_get_toc_get_parent_child($result); + $result = scorm_get_toc_get_parent_child($result, $currentorg); // Be safe, prevent warnings from showing up while returning array if (!isset($scoid)) { @@ -1455,10 +1477,15 @@ function scorm_get_toc_object($user, $scorm, $currentorg='', $scoid='', $mode='n return array('scoes' => $result, 'usertracks' => $usertracks, 'scoid' => $scoid); } -function scorm_get_toc_get_parent_child(&$result) { +function scorm_get_toc_get_parent_child(&$result, $currentorg) { $final = array(); $level = 0; - $prevparent = '/'; + // Organization is always the root, prevparent. + if (!empty($currentorg)) { + $prevparent = $currentorg; + } else { + $prevparent = '/'; + } foreach ($result as $sco) { if ($sco->parent == '/') { @@ -1587,7 +1614,7 @@ function scorm_format_toc_for_treeview($user, $scorm, $scoes, $usertracks, $cmid if ($sco->scormtype == 'sco') { $result->toc .= $sco->statusicon.' 
                '.format_string($sco->title).''.$score."\n"; } else { - $result->toc .= ' '.format_string($sco->title).''.$score."\n"; + $result->toc .= ' '.format_string($sco->title).''.$score."\n"; } } else { if ($sco->scormtype == 'sco') { @@ -1599,9 +1626,9 @@ function scorm_format_toc_for_treeview($user, $scorm, $scoes, $usertracks, $cmid } else { if (!empty($sco->launch)) { if ($sco->scormtype == 'sco') { - $result->toc .= ''.$sco->statusicon.' '.format_string($sco->title).' '.$score.''; + $result->toc .= ''.$sco->statusicon.' '.format_string($sco->title).' '.$score.''; } else { - $result->toc .= ' '.format_string($sco->title).' '.$score.''; + $result->toc .= ' '.format_string($sco->title).' '.$score.''; } } else { if ($sco->scormtype == 'sco') { @@ -1710,8 +1737,9 @@ function scorm_get_toc($user, $scorm, $cmid, $toclink=TOCJSLINK, $currentorg='', $organizationsco = null; if ($tocheader) { - $result->toc = "
                \n"; - $result->toc .= "
                \n"; + $result->toc = "
                \n"; + $result->toc .= "
                \n"; + $result->toc .= "
                \n"; $result->toc .= "
                \n"; } @@ -1761,8 +1789,12 @@ function scorm_get_toc($user, $scorm, $cmid, $toclink=TOCJSLINK, $currentorg='', $result->attemptleft = $treeview->attemptleft; if ($tocheader) { - $result->toc .= "
                \n"; + $result->toc .= "
                \n"; + $result->toc .= "
                \n"; + $result->toc .= "
                \n"; + $result->toc .= "
                "; $result->toc .= "
                \n"; + $result->toc .= "
                \n"; } return $result; diff --git a/mod/scorm/mod_form.php b/mod/scorm/mod_form.php index 99d9d875f90..6172dd25d78 100644 --- a/mod/scorm/mod_form.php +++ b/mod/scorm/mod_form.php @@ -89,7 +89,7 @@ class mod_scorm_mod_form extends moodleform_mod { // New local package upload. $filemanageroptions = array(); - $filemanageroptions['accepted_types'] = array('.zip'); + $filemanageroptions['accepted_types'] = array('.zip', '.xml'); $filemanageroptions['maxbytes'] = 0; $filemanageroptions['maxfiles'] = 1; $filemanageroptions['subdirs'] = 0; @@ -162,11 +162,28 @@ class mod_scorm_mod_form extends moodleform_mod { $mform->setAdvanced('hidetoc', $cfgscorm->hidetoc_adv); $mform->disabledIf('hidetoc', 'scormtype', 'eq', SCORM_TYPE_AICCURL); - // Hide Navigation panel. - $mform->addElement('selectyesno', 'hidenav', get_string('hidenav', 'scorm')); - $mform->setDefault('hidenav', $cfgscorm->hidenav); - $mform->setAdvanced('hidenav', $cfgscorm->hidenav_adv); - $mform->disabledIf('hidenav', 'hidetoc', 'noteq', 0); + // Navigation panel display. + $mform->addElement('select', 'nav', get_string('nav', 'scorm'), scorm_get_navigation_display_array()); + $mform->addHelpButton('nav', 'nav', 'scorm'); + $mform->setDefault('nav', $cfgscorm->nav); + $mform->setAdvanced('nav', $cfgscorm->nav_adv); + $mform->disabledIf('nav', 'hidetoc', 'noteq', SCORM_TOC_SIDE); + + // Navigation panel position from left. + $mform->addElement('text', 'navpositionleft', get_string('fromleft', 'scorm'), 'maxlength="5" size="5"'); + $mform->setDefault('navpositionleft', $cfgscorm->navpositionleft); + $mform->setType('navpositionleft', PARAM_INT); + $mform->setAdvanced('navpositionleft', $cfgscorm->navpositionleft_adv); + $mform->disabledIf('navpositionleft', 'hidetoc', 'noteq', SCORM_TOC_SIDE); + $mform->disabledIf('navpositionleft', 'nav', 'noteq', SCORM_NAV_FLOATING); + + // Navigation panel position from top. + $mform->addElement('text', 'navpositiontop', get_string('fromtop', 'scorm'), 'maxlength="5" size="5"'); + $mform->setDefault('navpositiontop', $cfgscorm->navpositiontop); + $mform->setType('navpositiontop', PARAM_INT); + $mform->setAdvanced('navpositiontop', $cfgscorm->navpositiontop_adv); + $mform->disabledIf('navpositiontop', 'hidetoc', 'noteq', SCORM_TOC_SIDE); + $mform->disabledIf('navpositiontop', 'nav', 'noteq', SCORM_NAV_FLOATING); // Display attempt status. $mform->addElement('select', 'displayattemptstatus', get_string('displayattemptstatus', 'scorm'), @@ -353,7 +370,21 @@ class mod_scorm_mod_form extends moodleform_mod { // Make sure updatefreq is not set if using normal local file. $errors['updatefreq'] = get_string('updatefreq_error', 'mod_scorm'); } - $errors = array_merge($errors, scorm_validate_package($file)); + if (strtolower($file->get_filename()) == 'imsmanifest.xml') { + if (!$file->is_external_file()) { + $errors['packagefile'] = get_string('aliasonly', 'mod_scorm'); + } else { + $repository = repository::get_repository_by_id($file->get_repository_id(), CONTEXT_SYSTEM); + if (!$repository->supports_relative_file()) { + $errors['packagefile'] = get_string('repositorynotsupported', 'mod_scorm'); + } + } + } else if (strtolower(substr($file->get_filename(), -3)) == 'xml') { + $errors['packagefile'] = get_string('invalidmanifestname', 'mod_scorm'); + } else { + // Validate this SCORM package. + $errors = array_merge($errors, scorm_validate_package($file)); + } } } else if ($type === SCORM_TYPE_EXTERNAL) { diff --git a/mod/scorm/module.js b/mod/scorm/module.js index 817b377f642..dd943b96495 100644 --- a/mod/scorm/module.js +++ b/mod/scorm/module.js @@ -24,16 +24,17 @@ mod_scorm_launch_next_sco = null; mod_scorm_launch_prev_sco = null; mod_scorm_activate_item = null; +mod_scorm_parse_toc_tree = null; scorm_layout_widget = null; M.mod_scorm = {}; -M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launch_sco, scoes_nav) { +M.mod_scorm.init = function(Y, nav_display, navposition_left, navposition_top, hide_toc, collapsetocwinsize, toc_title, window_name, launch_sco, scoes_nav) { var scorm_disable_toc = false; var scorm_hide_nav = true; var scorm_hide_toc = true; if (hide_toc == 0) { - if (hide_nav != 1) { + if (nav_display !== 0) { scorm_hide_nav = false; } scorm_hide_toc = false; @@ -47,32 +48,98 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc var scorm_bloody_labelclick = false; var scorm_nav_panel; - Y.use('yui2-resize', 'yui2-dragdrop', 'yui2-container', 'yui2-button', 'yui2-layout', 'yui2-treeview', 'yui2-json', 'yui2-event', function(Y) { + Y.use('button', 'dd-plugin', 'panel', 'resize', 'gallery-sm-treeview', function(Y) { - Y.YUI2.widget.TextNode.prototype.getContentHtml = function() { - var sb = []; - sb[sb.length] = this.href ? '':''; - return sb.join(""); + return node; }; + Y.TreeView.prototype.openAll = function () { + var tree = this; + Y.all('.yui3-treeview-can-have-children').each(function() { + var node = tree.getNodeById(this.get('id')); + node.open(); + }); + }; + + // TODO: Remove next(), previous() prototype functions after YUI has been updated to 3.11.0 - MDL-41208. + Y.Tree.Node.prototype.next = function () { + if (this.parent) { + return this.parent.children[this.index() + 1]; + } + }; + + Y.Tree.Node.prototype.previous = function () { + if (this.parent) { + return this.parent.children[this.index() - 1]; + } + }; + + var scorm_parse_toc_tree = function(srcNode) { + var SELECTORS = { + child: '> li', + label: '> li, > a', + textlabel : '> li, > span', + subtree: '> ul, > li' + }, + children = []; + + srcNode.all(SELECTORS.child).each(function(childNode) { + var child = {}, + labelNode = childNode.one(SELECTORS.label), + textNode = childNode.one(SELECTORS.textlabel), + subTreeNode = childNode.one(SELECTORS.subtree); + + if (labelNode) { + var title = labelNode.getAttribute('title'); + var scoid = labelNode.getData('scoid'); + child.label = labelNode.get('outerHTML'); + // Will be good to change to url instead of title. + if (title && title !== '#') { + child.title = title; + } + if (typeof scoid !== 'undefined') { + child.scoid = scoid; + } + } else if (textNode) { + // The selector did not find a label node with anchor. + child.label = textNode.get('outerHTML'); + } + + if (subTreeNode) { + child.children = scorm_parse_toc_tree(subTreeNode); + } + + children.push(child); + }); + + return children; + }; + + mod_scorm_parse_toc_tree = scorm_parse_toc_tree; + var scorm_activate_item = function(node) { if (!node) { return; } + // Check if the item is already active, avoid recursive calls. + if (Y.one('#scorm_object')) { + var scorm_active_url = Y.one('#scorm_object').getAttribute('src'); + var node_full_url = M.cfg.wwwroot + '/mod/scorm/loadSCO.php?' + node.title; + if (node_full_url === scorm_active_url) { + return; + } + } scorm_current_node = node; - scorm_current_node.highlight(); + // Avoid recursive calls. + if (!scorm_current_node.state.selected) { + scorm_current_node.select(); + } // remove any reference to the old API if (window.API) { @@ -99,7 +166,7 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc document.getElementById('external-scormapi').src = api_url; } - var content = new Y.YUI2.util.Element('scorm_content'); + var content = Y.one('#scorm_content'); var obj = document.createElement('iframe'); obj.setAttribute('id', 'scorm_object'); obj.setAttribute('type', 'text/html'); @@ -111,10 +178,10 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc if(! mine) { alert(M.str.scorm.popupsblocked); } - mine.close() + mine.close(); } - var old = Y.YUI2.util.Dom.get('scorm_object'); + var old = Y.one('#scorm_object'); if (old) { if(window_name) { var cwidth = scormplayerdata.cwidth; @@ -125,16 +192,13 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc content.replaceChild(obj, old); } } else { - content.appendChild(obj); + content.prepend(obj); } - scorm_resize_frame(); - - var left = scorm_layout_widget.getUnitByPosition('left'); - if (left.expand) { - scorm_current_node.focus(); - } if (scorm_hide_nav == false) { + if (nav_display === 1 && navposition_left > 0 && navposition_top > 0) { + Y.one('#scorm_object').addClass(cssclasses.scorm_nav_under_content); + } scorm_fixnav(); } }; @@ -146,95 +210,112 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc * @return void */ var scorm_fixnav = function() { - scorm_buttons[0].set('disabled', (scorm_skipprev(scorm_current_node) == null || scorm_skipprev(scorm_current_node).title == null || - scoes_nav[launch_sco].hideprevious == 1)); - scorm_buttons[1].set('disabled', (scorm_prev(scorm_current_node) == null || scorm_prev(scorm_current_node).title == null || - scoes_nav[launch_sco].hideprevious == 1)); - scorm_buttons[2].set('disabled', (scorm_up(scorm_current_node) == null) || scorm_up(scorm_current_node).title == null); - scorm_buttons[3].set('disabled', (((scorm_next(scorm_current_node) == null || scorm_next(scorm_current_node).title == null) && - (scoes_nav[launch_sco].flow != 1)) || (scoes_nav[launch_sco].hidecontinue == 1))); - scorm_buttons[4].set('disabled', (scorm_skipnext(scorm_current_node) == null || scorm_skipnext(scorm_current_node).title == null || - scoes_nav[launch_sco].hidecontinue == 1)); + var skipprevnode = scorm_skipprev(scorm_current_node); + var prevnode = scorm_prev(scorm_current_node); + var skipnextnode = scorm_skipnext(scorm_current_node); + var nextnode = scorm_next(scorm_current_node); + var upnode = scorm_up(scorm_current_node); + + scorm_buttons[0].set('disabled', ((skipprevnode === null) || + (typeof(skipprevnode.scoid) === 'undefined') || + (scoes_nav[skipprevnode.scoid].isvisible === "false") || + (skipprevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[1].set('disabled', ((prevnode === null) || + (typeof(prevnode.scoid) === 'undefined') || + (scoes_nav[prevnode.scoid].isvisible === "false") || + (prevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[2].set('disabled', (upnode === null) || + (typeof(upnode.scoid) === 'undefined') || + (scoes_nav[upnode.scoid].isvisible === "false") || + (upnode.title === null)); + + scorm_buttons[3].set('disabled', ((nextnode === null) || + ((nextnode.title === null) && (scoes_nav[launch_sco].flow !== 1)) || + (typeof(nextnode.scoid) === 'undefined') || + (scoes_nav[nextnode.scoid].isvisible === "false") || + (scoes_nav[launch_sco].hidecontinue === 1))); + + scorm_buttons[4].set('disabled', ((skipnextnode === null) || + (skipnextnode.title === null) || + (typeof(skipnextnode.scoid) === 'undefined') || + (scoes_nav[skipnextnode.scoid].isvisible === "false") || + scoes_nav[launch_sco].hidecontinue === 1)); }; - var scorm_resize_parent = function() { - // fudge IE7 to redraw the screen - parent.resizeBy(-10, -10); - parent.resizeBy(10, 10); - var ifr = Y.YUI2.util.Dom.get('scorm_object'); - if (ifr) { - ifr.detachEvent("onload", scorm_resize_parent); + var scorm_toggle_toc = function(windowresize) { + var toc = Y.one('#scorm_toc'); + var scorm_content = Y.one('#scorm_content'); + var scorm_toc_toggle_btn = Y.one('#scorm_toc_toggle_btn'); + var toc_disabled = toc.hasClass('disabled'); + var disabled_by = toc.getAttribute('disabled-by'); + // Remove width element style from resize handle. + toc.setStyle('width', null); + scorm_content.setStyle('width', null); + if (windowresize === true) { + if (disabled_by === 'user') { + return; + } + var body = Y.one('body'); + if (body.get('winWidth') < collapsetocwinsize) { + toc.addClass(cssclasses.disabled) + .setAttribute('disabled-by', 'screen-size'); + scorm_toc_toggle_btn.setHTML('>') + .set('title', M.util.get_string('show', 'moodle')); + scorm_content.removeClass(cssclasses.scorm_grid_content_toc_visible) + .addClass(cssclasses.scorm_grid_content_toc_hidden); + } else if (body.get('winWidth') > collapsetocwinsize) { + toc.removeClass(cssclasses.disabled) + .removeAttribute('disabled-by'); + scorm_toc_toggle_btn.setHTML('<') + .set('title', M.util.get_string('hide', 'moodle')); + scorm_content.removeClass(cssclasses.scorm_grid_content_toc_hidden) + .addClass(cssclasses.scorm_grid_content_toc_visible); + } + return; + } + if (toc_disabled) { + toc.removeClass(cssclasses.disabled) + .removeAttribute('disabled-by'); + scorm_toc_toggle_btn.setHTML('<') + .set('title', M.util.get_string('hide', 'moodle')); + scorm_content.removeClass(cssclasses.scorm_grid_content_toc_hidden) + .addClass(cssclasses.scorm_grid_content_toc_visible); + } else { + toc.addClass(cssclasses.disabled) + .setAttribute('disabled-by', 'user'); + scorm_toc_toggle_btn.setHTML('>') + .set('title', M.util.get_string('show', 'moodle')); + scorm_content.removeClass(cssclasses.scorm_grid_content_toc_visible) + .addClass(cssclasses.scorm_grid_content_toc_hidden); } }; - var scorm_resize_layout = function(alsowidth) { + var scorm_resize_layout = function() { if (window_name) { return; } - if (alsowidth) { - scorm_layout_widget.setStyle('width', ''); - var newwidth = scorm_get_htmlelement_size('content', 'width'); - } // make sure that the max width of the TOC doesn't go to far - var left = scorm_layout_widget.getUnitByPosition('left'); - var maxwidth = parseInt(Y.YUI2.util.Dom.getStyle('scorm_layout', 'width')); - left.set('maxWidth', (maxwidth - 50)); - var cwidth = left.get('width'); + var scorm_toc_node = Y.one('#scorm_toc'); + var maxwidth = parseInt(Y.one('#scorm_layout').getComputedStyle('width'), 10); + scorm_toc_node.setStyle('maxWidth', (maxwidth - 200)); + var cwidth = parseInt(scorm_toc_node.getComputedStyle('width'), 10); if (cwidth > (maxwidth - 1)) { - left.set('width', (maxwidth - 50)); + scorm_toc_node.setStyle('width', (maxwidth - 50)); } - scorm_layout_widget.setStyle('height', '100%'); - var center = scorm_layout_widget.getUnitByPosition('center'); - center.setStyle('height', '100%'); - - // calculate the rough new height - newheight = Y.YUI2.util.Dom.getViewportHeight() -5; + // Calculate the rough new height from the viewport height. + newheight = Y.one('body').get('winHeight') -5; if (newheight < 600) { newheight = 600; } - scorm_layout_widget.set('height', newheight); + Y.one('#scorm_layout').setStyle('height', newheight); - scorm_layout_widget.render(); - scorm_resize_frame(); - - if (scorm_nav_panel) { - scorm_nav_panel.align('bl', 'bl'); - } - }; - - var scorm_get_htmlelement_size = function(el, prop) { - var val = Y.YUI2.util.Dom.getStyle(el, prop); - if (val == 'auto') { - if (el.get) { - el = el.get('element'); // get real HTMLElement from YUI element - } - val = Y.YUI2.util.Dom.getComputedStyle(Y.YUI2.util.Dom.get(el), prop); - } - return parseInt(val); - }; - - var scorm_resize_frame = function() { - var obj = Y.YUI2.util.Dom.get('scorm_object'); - if (obj) { - var content = scorm_layout_widget.getUnitByPosition('center').get('wrap'); - // basically trap IE6 and 7 - if (Y.YUI2.env.ua.ie > 5 && Y.YUI2.env.ua.ie < 8) { - if( obj.style.setAttribute ) { - obj.style.setAttribute("cssText", 'width: ' +(content.offsetWidth - 6)+'px; height: ' + (content.offsetHeight - 10)+'px;'); - } - else { - obj.style.setAttribute('width', (content.offsetWidth - 6)+'px', 0); - obj.style.setAttribute('height', (content.offsetHeight - 10)+'px', 0); - } - } - else { - obj.style.width = (content.offsetWidth)+'px'; - obj.style.height = (content.offsetHeight - 10)+'px'; - } - } }; // Handle AJAX Request @@ -245,14 +326,20 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc }; var scorm_up = function(node, update_launch_sco) { - var node = scorm_tree_node.getHighlightedNode(); - if (node.depth > 0 && typeof scoes_nav[launch_sco].parentscoid != 'undefined') { + if (node.parent && node.parent.parent && typeof scoes_nav[launch_sco].parentscoid !== 'undefined') { var parentscoid = scoes_nav[launch_sco].parentscoid; - node.parent.title = scoes_nav[parentscoid].url; + var parent = node.parent; + if (parent.title !== scoes_nav[parentscoid].url) { + parent = scorm_tree_node.getNodeByAttribute('title', scoes_nav[parentscoid].url); + if (parent === null) { + parent = scorm_tree_node.rootNode.children[0]; + parent.title = scoes_nav[parentscoid].url; + } + } if (update_launch_sco) { launch_sco = parentscoid; } - return node.parent; + return parent; } return null; }; @@ -266,12 +353,18 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc }; var scorm_prev = function(node, update_launch_sco) { - if (node.previousSibling && node.previousSibling.children.length && - typeof scoes_nav[launch_sco].prevscoid != 'undefined') { - var node = scorm_lastchild(node.previousSibling); + if (node.previous() && node.previous().children.length && + typeof scoes_nav[launch_sco].prevscoid !== 'undefined') { + node = scorm_lastchild(node.previous()); if (node) { var prevscoid = scoes_nav[launch_sco].prevscoid; - node.title = scoes_nav[prevscoid].url; + if (node.title !== scoes_nav[prevscoid].url) { + node = scorm_tree_node.getNodeByAttribute('title', scoes_nav[prevscoid].url); + if (node === null) { + node = scorm_tree_node.rootNode.children[0]; + node.title = scoes_nav[prevscoid].url; + } + } if (update_launch_sco) { launch_sco = prevscoid; } @@ -284,32 +377,53 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc }; var scorm_skipprev = function(node, update_launch_sco) { - if (node.previousSibling && typeof scoes_nav[launch_sco].prevsibling != 'undefined') { + if (node.previous() && typeof scoes_nav[launch_sco].prevsibling !== 'undefined') { var prevsibling = scoes_nav[launch_sco].prevsibling; - node.previousSibling.title = scoes_nav[prevsibling].url; + var previous = node.previous(); + var prevscoid = scoes_nav[launch_sco].prevscoid; + if (previous.title !== scoes_nav[prevscoid].url) { + previous = scorm_tree_node.getNodeByAttribute('title', scoes_nav[prevsibling].url); + if (previous === null) { + previous = scorm_tree_node.rootNode.children[0]; + previous.title = scoes_nav[prevsibling].url; + } + } if (update_launch_sco) { launch_sco = prevsibling; } - return node.previousSibling; - } else if (node.depth > 0 && typeof scoes_nav[launch_sco].parentscoid != 'undefined') { + return previous; + } else if (node.parent && node.parent.parent && typeof scoes_nav[launch_sco].parentscoid !== 'undefined') { var parentscoid = scoes_nav[launch_sco].parentscoid; - node.parent.title = scoes_nav[parentscoid].url; + var parent = node.parent; + if (parent.title !== scoes_nav[parentscoid].url) { + parent = scorm_tree_node.getNodeByAttribute('title', scoes_nav[parentscoid].url); + if (parent === null) { + parent = scorm_tree_node.rootNode.children[0]; + parent.title = scoes_nav[parentscoid].url; + } + } if (update_launch_sco) { launch_sco = parentscoid; } - return node.parent; + return parent; } return null; }; var scorm_next = function(node, update_launch_sco) { if (node === false) { - return scorm_tree_node.getRoot().children[0]; + return scorm_tree_node.children[0]; } if (node.children.length && typeof scoes_nav[launch_sco].nextscoid != 'undefined') { - var node = node.children[0]; + node = node.children[0]; var nextscoid = scoes_nav[launch_sco].nextscoid; - node.title = scoes_nav[nextscoid].url; + if (node.title !== scoes_nav[nextscoid].url) { + node = scorm_tree_node.getNodeByAttribute('title', scoes_nav[nextscoid].url); + if (node === null) { + node = scorm_tree_node.rootNode.children[0]; + node.title = scoes_nav[nextscoid].url; + } + } if (update_launch_sco) { launch_sco = nextscoid; } @@ -319,297 +433,419 @@ M.mod_scorm.init = function(Y, hide_nav, hide_toc, toc_title, window_name, launc }; var scorm_skipnext = function(node, update_launch_sco) { - if (node.nextSibling && typeof scoes_nav[launch_sco].nextsibling != 'undefined') { + var next = node.next(); + if (next && next.title && typeof scoes_nav[launch_sco] !== 'undefined' && typeof scoes_nav[launch_sco].nextsibling !== 'undefined') { var nextsibling = scoes_nav[launch_sco].nextsibling; - node.nextSibling.title = scoes_nav[nextsibling].url; + if (next.title !== scoes_nav[nextsibling].url) { + next = scorm_tree_node.getNodeByAttribute('title', scoes_nav[nextsibling].url); + if (next === null) { + next = scorm_tree_node.rootNode.children[0]; + next.title = scoes_nav[nextsibling].url; + } + } if (update_launch_sco) { launch_sco = nextsibling; } - return node.nextSibling; - } else if (node.depth > 0 && typeof scoes_nav[launch_sco].parentscoid != 'undefined') { + return next; + } else if (node.parent && node.parent.parent && typeof scoes_nav[launch_sco].parentscoid !== 'undefined') { var parentscoid = scoes_nav[launch_sco].parentscoid; + var parent = node.parent; + if (parent.title !== scoes_nav[parentscoid].url) { + parent = scorm_tree_node.getNodeByAttribute('title', scoes_nav[parentscoid].url); + if (parent === null) { + parent = scorm_tree_node.rootNode.children[0]; + } + } if (update_launch_sco) { launch_sco = parentscoid; } - return scorm_skipnext(node.parent, update_launch_sco); + return scorm_skipnext(parent, update_launch_sco); } return null; }; // Launch prev sco var scorm_launch_prev_sco = function() { - var result = null; - if (scoes_nav[launch_sco].flow == 1) { + var result = null; + if (scoes_nav[launch_sco].flow === 1) { var datastring = scoes_nav[launch_sco].url + '&function=scorm_seq_flow&request=backward'; result = scorm_ajax_request(M.cfg.wwwroot + '/mod/scorm/datamodels/sequencinghandler.php?', datastring); mod_scorm_seq = encodeURIComponent(result); result = Y.JSON.parse (result); if (typeof result.nextactivity.id != undefined) { - var node = scorm_prev(scorm_tree_node.getHighlightedNode()) + var node = scorm_prev(scorm_tree_node.getSelectedNodes()[0]); if (node == null) { - // Avoid use of TreeView for Navigation - node = scorm_tree_node.getHighlightedNode(); + // Avoid use of TreeView for Navigation. + node = scorm_tree_node.getSelectedNodes()[0]; + } + if (node.title !== scoes_nav[result.nextactivity.id].url) { + node = scorm_tree_node.getNodeByAttribute('title', scoes_nav[result.nextactivity.id].url); + if (node === null) { + node = scorm_tree_node.rootNode.children[0]; + node.title = scoes_nav[result.nextactivity.id].url; + } } - node.title = scoes_nav[result.nextactivity.id].url; launch_sco = result.nextactivity.id; scorm_activate_item(node); scorm_fixnav(); } else { - scorm_activate_item(scorm_prev(scorm_tree_node.getHighlightedNode(), true)); + scorm_activate_item(scorm_prev(scorm_tree_node.getSelectedNodes()[0], true)); } - } else { - scorm_activate_item(scorm_prev(scorm_tree_node.getHighlightedNode(), true)); - } + } else { + scorm_activate_item(scorm_prev(scorm_tree_node.getSelectedNodes()[0], true)); + } }; // Launch next sco var scorm_launch_next_sco = function () { - var result = null; - if (scoes_nav[launch_sco].flow == 1) { + var result = null; + if (scoes_nav[launch_sco].flow === 1) { var datastring = scoes_nav[launch_sco].url + '&function=scorm_seq_flow&request=forward'; result = scorm_ajax_request(M.cfg.wwwroot + '/mod/scorm/datamodels/sequencinghandler.php?', datastring); mod_scorm_seq = encodeURIComponent(result); result = Y.JSON.parse (result); - if (typeof result.nextactivity.id != undefined) { - var node = scorm_next(scorm_tree_node.getHighlightedNode()) - if (node == null) { - // Avoid use of TreeView for Navigation - node = scorm_tree_node.getHighlightedNode(); - } + if (typeof result.nextactivity !== 'undefined' && typeof result.nextactivity.id !== 'undefined') { + var node = scorm_next(scorm_tree_node.getSelectedNodes()[0]); + if (node === null) { + // Avoid use of TreeView for Navigation. + node = scorm_tree_node.getSelectedNodes()[0]; + } + node = scorm_tree_node.getNodeByAttribute('title', scoes_nav[result.nextactivity.id].url); + if (node === null) { + node = scorm_tree_node.rootNode.children[0]; node.title = scoes_nav[result.nextactivity.id].url; - launch_sco = result.nextactivity.id; - scorm_activate_item(node); - scorm_fixnav(); + } + launch_sco = result.nextactivity.id; + scorm_activate_item(node); + scorm_fixnav(); } else { - scorm_activate_item(scorm_next(scorm_tree_node.getHighlightedNode(), true)); + scorm_activate_item(scorm_next(scorm_tree_node.getSelectedNodes()[0], true)); } - } else { - scorm_activate_item(scorm_next(scorm_tree_node.getHighlightedNode(), true)); - } + } else { + scorm_activate_item(scorm_next(scorm_tree_node.getSelectedNodes()[0], true)); + } }; mod_scorm_launch_prev_sco = scorm_launch_prev_sco; mod_scorm_launch_next_sco = scorm_launch_next_sco; + var cssclasses = { + // YUI grid class: use 100% of the available width to show only content, TOC hidden. + scorm_grid_content_toc_hidden: 'yui3-u-1', + // YUI grid class: use 1/5 of the available width to show TOC. + scorm_grid_toc: 'yui3-u-1-5', + // YUI grid class: use 1/24 of the available width to show TOC toggle button. + scorm_grid_toggle: 'yui3-u-1-24', + // YUI grid class: use 3/4 of the available width to show content, TOC visible. + scorm_grid_content_toc_visible: 'yui3-u-3-4', + // Reduce height of #scorm_object to accomodate nav buttons under content. + scorm_nav_under_content: 'scorm_nav_under_content', + disabled: 'disabled' + }; // layout - Y.YUI2.widget.LayoutUnit.prototype.STR_COLLAPSE = M.str.moodle.hide; - Y.YUI2.widget.LayoutUnit.prototype.STR_EXPAND = M.str.moodle.show; + Y.one('#scorm_toc_title').setHTML(toc_title); if (scorm_disable_toc) { - scorm_layout_widget = new Y.YUI2.widget.Layout('scorm_layout', { - minWidth: 255, - minHeight: 600, - units: [ - { position: 'left', body: 'scorm_toc', header: toc_title, width: 0, resize: true, gutter: '0px 0px 0px 0px', collapse: false}, - { position: 'center', body: '
                ', gutter: '0px 0px 0px 0px', scroll: true} - ] - }); + Y.one('#scorm_toc').addClass(cssclasses.disabled); + Y.one('#scorm_toc_toggle').addClass(cssclasses.disabled); + Y.one('#scorm_content').addClass(cssclasses.scorm_grid_content_toc_hidden); } else { - scorm_layout_widget = new Y.YUI2.widget.Layout('scorm_layout', { - minWidth: 255, - minHeight: 600, - units: [ - { position: 'left', body: 'scorm_toc', header: toc_title, width: 250, resize: true, gutter: '2px 5px 5px 2px', collapse: true, minWidth:250, maxWidth: 590}, - { position: 'center', body: '
                ', gutter: '2px 5px 5px 2px', scroll: true} - ] - }); + Y.one('#scorm_toc').addClass(cssclasses.scorm_grid_toc); + Y.one('#scorm_toc_toggle').addClass(cssclasses.scorm_grid_toggle); + Y.one('#scorm_toc_toggle_btn') + .setHTML('<') + .setAttribute('title', M.util.get_string('hide', 'moodle')); + Y.one('#scorm_content').addClass(cssclasses.scorm_grid_content_toc_visible); + scorm_toggle_toc(true); } - scorm_layout_widget.render(); - var left = scorm_layout_widget.getUnitByPosition('left'); - if (!scorm_disable_toc) { - left.on('collapse', function() { - scorm_resize_frame(); - }); - left.on('expand', function() { - scorm_resize_frame(); - }); - } - // ugly resizing hack that works around problems with resizing of iframes and objects - left._resize.on('startResize', function() { - var obj = Y.YUI2.util.Dom.get('scorm_object'); - obj.style.display = 'none'; - }); - left._resize.on('endResize', function() { - var obj = Y.YUI2.util.Dom.get('scorm_object'); - obj.style.display = 'block'; - scorm_resize_frame(); - }); - // hide the TOC if that is the default if (!scorm_disable_toc) { if (scorm_hide_toc == true) { - left.collapse(); + Y.one('#scorm_toc').addClass(cssclasses.disabled); + Y.one('#scorm_toc_toggle_btn') + .setHTML('>') + .setAttribute('title', M.util.get_string('show', 'moodle')); + Y.one('#scorm_content') + .removeClass(cssclasses.scorm_grid_content_toc_visible) + .addClass(cssclasses.scorm_grid_content_toc_hidden); } } + + // TOC Resize handle. + var layout_width = parseInt(Y.one('#scorm_layout').getComputedStyle('width'), 10); + var scorm_resize_handle = new Y.Resize({ + node: '#scorm_toc', + handles: 'r', + defMinWidth: 0.2 * layout_width + }); // TOC tree - var tree = new Y.YUI2.widget.TreeView('scorm_tree'); + var toc_source = Y.one('#scorm_tree > ul'); + var toc = scorm_parse_toc_tree(toc_source); + // Empty container after parsing toc. + var el = document.getElementById('scorm_tree'); + el.innerHTML = ''; + var tree = new Y.TreeView({ + container: '#scorm_tree', + nodes: toc, + multiSelect: false + }); scorm_tree_node = tree; - tree.singleNodeHighlight = true; - tree.subscribe('labelClick', function(node) { + // Trigger after instead of on, avoid recursive calls. + tree.after('select', function(e) { + var node = e.node; if (node.title == '' || node.title == null) { return; //this item has no navigation } + // If item is already active, return; avoid recursive calls. + if (Y.one('#scorm_data')) { + var scorm_active_url = Y.one('#scorm_object').getAttribute('src'); + var node_full_url = M.cfg.wwwroot + '/mod/scorm/loadSCO.php?' + node.title; + if (node_full_url === scorm_active_url) { + return; + } + } + // Update launch_sco. + if (typeof node.scoid !== 'undefined') { + launch_sco = node.scoid; + } scorm_activate_item(node); if (node.children.length) { scorm_bloody_labelclick = true; } }); if (!scorm_disable_toc) { - tree.subscribe('collapse', function(node) { + tree.on('close', function(e) { if (scorm_bloody_labelclick) { scorm_bloody_labelclick = false; return false; } }); - tree.subscribe('expand', function(node) { + tree.subscribe('open', function(e) { if (scorm_bloody_labelclick) { scorm_bloody_labelclick = false; return false; } }); } - tree.expandAll(); tree.render(); + tree.openAll(); // On getting the window, always set the focus on the current item - Y.YUI2.util.Event.on(window, 'focus', function (e) { - var current = scorm_tree_node.getHighlightedNode(); - var left = scorm_layout_widget.getUnitByPosition('left'); - if (current && left.expand) { - current.focus(); + Y.one(Y.config.win).on('focus', function (e) { + var current = scorm_tree_node.getSelectedNodes()[0]; + var toc_disabled = Y.one('#scorm_toc').hasClass('disabled'); + if (current.id && !toc_disabled) { + Y.one('#' + current.id).focus(); } }); // navigation if (scorm_hide_nav == false) { - var left = scorm_layout_widget.getUnitByPosition('left'); - navposition = Y.YUI2.util.Dom.getXY(left); - navposition[1] += 200; - scorm_nav_panel = new Y.YUI2.widget.Panel('scorm_navpanel', { visible:true, draggable:true, close:false, xy: navposition, - autofillheight: "body"} ); - scorm_nav_panel.setHeader(M.str.scorm.navigation); + // TODO: make some better&accessible buttons. + var navbuttonshtml = ' ' + + '  ' + + ' '; + if (nav_display === 1) { + Y.one('#scorm_navpanel').setHTML(navbuttonshtml); + } else { + // Nav panel is floating type. + var navposition = null; + if (navposition_left < 0 && navposition_top < 0) { + // Set default XY. + navposition = Y.one('#scorm_toc').getXY(); + navposition[1] += 200; + } else { + // Set user defined XY. + navposition = []; + navposition[0] = parseInt(navposition_left, 10); + navposition[1] = parseInt(navposition_top, 10); + } + scorm_nav_panel = new Y.Panel({ + fillHeight: "body", + headerContent: M.util.get_string('navigation', 'scorm'), + visible: true, + xy: navposition, + zIndex: 999 + }); + scorm_nav_panel.set('bodyContent', navbuttonshtml); + scorm_nav_panel.removeButton('close'); + scorm_nav_panel.plug(Y.Plugin.Drag, {handles: ['.yui3-widget-hd']}); + scorm_nav_panel.render(); + } - //TODO: make some better&accessible buttons - scorm_nav_panel.setBody(''); - scorm_nav_panel.render(); - scorm_buttons[0] = new Y.YUI2.widget.Button('nav_skipprev'); - scorm_buttons[1] = new Y.YUI2.widget.Button('nav_prev'); - scorm_buttons[2] = new Y.YUI2.widget.Button('nav_up'); - scorm_buttons[3] = new Y.YUI2.widget.Button('nav_next'); - scorm_buttons[4] = new Y.YUI2.widget.Button('nav_skipnext'); - scorm_buttons[0].on('click', function(ev) { - scorm_activate_item(scorm_skipprev(scorm_tree_node.getHighlightedNode(), true)); + scorm_buttons[0] = new Y.Button({ + srcNode: '#nav_skipprev', + render: true, + on: { + 'click' : function(ev) { + scorm_activate_item(scorm_skipprev(scorm_tree_node.getSelectedNodes()[0], true)); + }, + 'keydown' : function(ev) { + if (ev.domEvent.keyCode === 13 || ev.domEvent.keyCode === 32) { + scorm_activate_item(scorm_skipprev(scorm_tree_node.getSelectedNodes()[0], true)); + } + } + } }); - scorm_buttons[1].on('click', function(ev) { - scorm_launch_prev_sco(); + scorm_buttons[1] = new Y.Button({ + srcNode: '#nav_prev', + render: true, + on: { + 'click' : function(ev) { + scorm_launch_prev_sco(); + }, + 'keydown' : function(ev) { + if (ev.domEvent.keyCode === 13 || ev.domEvent.keyCode === 32) { + scorm_launch_prev_sco(); + } + } + } }); - scorm_buttons[2].on('click', function(ev) { - scorm_activate_item(scorm_up(scorm_tree_node.getHighlightedNode(), true)); + scorm_buttons[2] = new Y.Button({ + srcNode: '#nav_up', + render: true, + on: { + 'click' : function(ev) { + scorm_activate_item(scorm_up(scorm_tree_node.getSelectedNodes()[0], true)); + }, + 'keydown' : function(ev) { + if (ev.domEvent.keyCode === 13 || ev.domEvent.keyCode === 32) { + scorm_activate_item(scorm_up(scorm_tree_node.getSelectedNodes()[0], true)); + } + } + } }); - scorm_buttons[3].on('click', function(ev) { - scorm_launch_next_sco(); + scorm_buttons[3] = new Y.Button({ + srcNode: '#nav_next', + render: true, + on: { + 'click' : function(ev) { + scorm_launch_next_sco(); + }, + 'keydown' : function(ev) { + if (ev.domEvent.keyCode === 13 || ev.domEvent.keyCode === 32) { + scorm_launch_next_sco(); + } + } + } }); - scorm_buttons[4].on('click', function(ev) { - scorm_activate_item(scorm_skipnext(scorm_tree_node.getHighlightedNode(), true)); + scorm_buttons[4] = new Y.Button({ + srcNode: '#nav_skipnext', + render: true, + on: { + 'click' : function(ev) { + scorm_activate_item(scorm_skipnext(scorm_tree_node.getSelectedNodes()[0], true)); + }, + 'keydown' : function(ev) { + if (ev.domEvent.keyCode === 13 || ev.domEvent.keyCode === 32) { + scorm_activate_item(scorm_skipnext(scorm_tree_node.getSelectedNodes()[0], true)); + } + } + } }); - scorm_nav_panel.render(); } // finally activate the chosen item - var scorm_first_url = tree.getRoot().children[0]; + var scorm_first_url = null; + if (tree.rootNode.children[0].title !== scoes_nav[launch_sco].url) { + var node = tree.getNodeByAttribute('title', scoes_nav[launch_sco].url); + if (node !== null) { + scorm_first_url = node; + } + } else { + scorm_first_url = tree.rootNode.children[0]; + } + if (scorm_first_url == null) { // This is probably a single sco with no children (AICC Direct uses this). - scorm_first_url = tree.getRoot(); + scorm_first_url = tree.rootNode; } scorm_first_url.title = scoes_nav[launch_sco].url; scorm_activate_item(scorm_first_url); // resizing - scorm_resize_layout(false); + scorm_resize_layout(); + // Collapse/expand TOC. + Y.one('#scorm_toc_toggle').on('click', scorm_toggle_toc); + Y.one('#scorm_toc_toggle').on('key', scorm_toggle_toc, 'down:enter,32'); // fix layout if window resized - window.onresize = function() { - scorm_resize_layout(true); - }; + Y.on("windowresize", function() { + scorm_resize_layout(); + var toc_displayed = Y.one('#scorm_toc').getComputedStyle('display') !== 'none'; + if ((!scorm_disable_toc && !scorm_hide_toc) || toc_displayed) { + scorm_toggle_toc(true); + } + // Set 20% as minWidth constrain of TOC. + var layout_width = parseInt(Y.one('#scorm_layout').getComputedStyle('width'), 10); + scorm_resize_handle.set('defMinWidth', 0.2 * layout_width); + }); + // On resize drag, change width of scorm_content. + scorm_resize_handle.on('resize:resize', function() { + var tocwidth = parseInt(Y.one('#scorm_toc').getComputedStyle('width'), 10); + var layoutwidth = parseInt(Y.one('#scorm_layout').getStyle('width'), 10); + Y.one('#scorm_content').setStyle('width', (layoutwidth - tocwidth - 60)); + }); }); }; M.mod_scorm.connectPrereqCallback = { - success: function(o) { - YUI().use('yui2-treeview', 'yui2-layout', function(Y) { - // MDL-29159 The core version of getContentHtml doesn't escape text properly. - Y.YUI2.widget.TextNode.prototype.getContentHtml = function() { - var sb = []; - sb[sb.length] = this.href ? '':''; - return sb.join(""); - }; - - if (o.responseText !== undefined) { - var tree = new Y.YUI2.widget.TreeView('scorm_tree'); - if (scorm_tree_node && o.responseText) { - var hnode = scorm_tree_node.getHighlightedNode(); - var hidx = null; - if (hnode) { - hidx = hnode.index + scorm_tree_node.getNodeCount(); - } - // all gone - var root_node = scorm_tree_node.getRoot(); - while (root_node.children.length > 0) { - scorm_tree_node.removeNode(root_node.children[0]); - } - } - // make sure the temporary tree element is not there - var el_old_tree = document.getElementById('scormtree123'); - if (el_old_tree) { - el_old_tree.parentNode.removeChild(el_old_tree); - } - var el_new_tree = document.createElement('div'); - var pagecontent = document.getElementById("page-content"); - el_new_tree.setAttribute('id','scormtree123'); - el_new_tree.innerHTML = o.responseText; - // make sure it doesnt show - el_new_tree.style.display = 'none'; - pagecontent.appendChild(el_new_tree) - // ignore the first level element as this is the title - var startNode = el_new_tree.firstChild.firstChild; - if (startNode.tagName == 'LI') { - // go back to the beginning - startNode = el_new_tree; - } - //var sXML = new XMLSerializer().serializeToString(startNode); - scorm_tree_node.buildTreeFromMarkup('scormtree123'); - var el = document.getElementById('scormtree123'); - el.parentNode.removeChild(el); - scorm_tree_node.expandAll(); - scorm_tree_node.render(); - if (hidx != null) { - hnode = scorm_tree_node.getNodeByIndex(hidx); - if (hnode) { - hnode.highlight(); - var left = scorm_layout_widget.getUnitByPosition('left'); - if (left.expand) { - hnode.focus(); + // All gone with clear, add new root node. + scorm_tree_node.clear(scorm_tree_node.createNode()); + } + // Make sure the temporary tree element is not there. + var el_old_tree = document.getElementById('scormtree123'); + if (el_old_tree) { + el_old_tree.parentNode.removeChild(el_old_tree); + } + var el_new_tree = document.createElement('div'); + var pagecontent = document.getElementById("page-content"); + el_new_tree.setAttribute('id','scormtree123'); + el_new_tree.innerHTML = o.responseText; + // Make sure it does not show. + el_new_tree.style.display = 'none'; + pagecontent.appendChild(el_new_tree); + // Ignore the first level element as this is the title. + var startNode = el_new_tree.firstChild.firstChild; + if (startNode.tagName == 'LI') { + // Go back to the beginning. + startNode = el_new_tree; + } + var toc_source = Y.one('#scormtree123 > ul'); + var toc = mod_scorm_parse_toc_tree(toc_source); + scorm_tree_node.appendNode(scorm_tree_node.rootNode, toc); + var el = document.getElementById('scormtree123'); + el.parentNode.removeChild(el); + scorm_tree_node.render(); + scorm_tree_node.openAll(); + if (stitle !== null) { + snode = scorm_tree_node.getNodeByAttribute('title', stitle); + // Do not let destroyed node to be selected. + if (snode && !snode.state.destroyed) { + snode.select(); + var toc_disabled = Y.one('#scorm_toc').hasClass('disabled'); + if (!toc_disabled) { + if (!snode.state.selected) { + snode.select(); } } } } - }); + } }, - failure: function(o) { + failure: function(id, o) { // TODO: do some sort of error handling. } diff --git a/mod/scorm/player.php b/mod/scorm/player.php index 6a5b84f60be..d5e4b34b756 100644 --- a/mod/scorm/player.php +++ b/mod/scorm/player.php @@ -84,6 +84,13 @@ $forcejs = get_config('scorm', 'forcejavascript'); if (!empty($forcejs)) { $PAGE->add_body_class('forcejavascript'); } +$collapsetocwinsize = get_config('scorm', 'collapsetocwinsize'); +if (empty($collapsetocwinsize)) { + // Set as default window size to collapse TOC. + $collapsetocwinsize = 767; +} else { + $collapsetocwinsize = intval($collapsetocwinsize); +} require_login($course, false, $cm); @@ -246,7 +253,7 @@ if ($result->prerequisites) { ?> id, $mode, $attempt); +$scoes = scorm_get_toc_object($USER, $scorm, $currentorg, $sco->id, $mode, $attempt); $adlnav = scorm_get_adlnav_json($scoes['scoes']); if (empty($scorm->popup) || $displaymode == 'popup') { @@ -258,7 +265,9 @@ if (empty($scorm->popup) || $displaymode == 'popup') { 'fullpath' => '/mod/scorm/module.js', 'requires' => array('json'), ); - $PAGE->requires->js_init_call('M.mod_scorm.init', array($scorm->hidenav, $scorm->hidetoc, $result->toctitle, $name, $sco->id, $adlnav), false, $jsmodule); + $scorm->nav = intval($scorm->nav); + $PAGE->requires->js_init_call('M.mod_scorm.init', array($scorm->nav, $scorm->navpositionleft, $scorm->navpositiontop, $scorm->hidetoc, + $collapsetocwinsize, $result->toctitle, $name, $sco->id, $adlnav), false, $jsmodule); } if (!empty($forcejs)) { echo $OUTPUT->box(get_string("forcejavascriptmessage", "scorm"), "generalbox boxaligncenter forcejavascriptmessage"); diff --git a/mod/scorm/settings.php b/mod/scorm/settings.php index aacb8e213df..8781dd922bb 100644 --- a/mod/scorm/settings.php +++ b/mod/scorm/settings.php @@ -60,9 +60,21 @@ if ($ADMIN->fulltree) { get_string('hidetoc', 'scorm'), get_string('hidetocdesc', 'scorm'), array('value' => 0, 'adv' => true), scorm_get_hidetoc_array())); - $settings->add(new admin_setting_configselect_with_advanced('scorm/hidenav', - get_string('hidenav', 'scorm'), get_string('hidenavdesc', 'scorm'), - array('value' => 0, 'adv' => false), $yesno)); + $settings->add(new admin_setting_configselect_with_advanced('scorm/nav', + get_string('nav', 'scorm'), get_string('navdesc', 'scorm'), + array('value' => SCORM_NAV_UNDER_CONTENT, 'adv' => true), scorm_get_navigation_display_array())); + + $settings->add(new admin_setting_configtext_with_advanced('scorm/navpositionleft', + get_string('fromleft', 'scorm'), get_string('navpositionleft', 'scorm'), + array('value' => -100, 'adv' => true))); + + $settings->add(new admin_setting_configtext_with_advanced('scorm/navpositiontop', + get_string('fromtop', 'scorm'), get_string('navpositiontop', 'scorm'), + array('value' => -100, 'adv' => true))); + + $settings->add(new admin_setting_configtext_with_advanced('scorm/collapsetocwinsize', + get_string('collapsetocwinsize', 'scorm'), get_string('collapsetocwinsizedesc', 'scorm'), + array('value' => 767, 'adv' => true))); $settings->add(new admin_setting_configselect_with_advanced('scorm/displayattemptstatus', get_string('displayattemptstatus', 'scorm'), get_string('displayattemptstatusdesc', 'scorm'), diff --git a/mod/scorm/styles.css b/mod/scorm/styles.css index c36fe31b6eb..664f4b6aa26 100644 --- a/mod/scorm/styles.css +++ b/mod/scorm/styles.css @@ -3,24 +3,35 @@ .path-mod-scorm .scorm-center {text-align: center;} .path-mod-scorm .scorm-right {text-align: right;} .path-mod-scorm .scoframe {position: relative;width: 100%;height: 100%;} +.ios #scormpage #scorm_content {-webkit-overflow-scrolling: touch; overflow: scroll;} -#page-mod-scorm-player #scormobject {height: 100%;} #page-mod-scorm-player #scormtop {position: relative;width: 100%;height: 30px;} #page-mod-scorm-player #scormbrowse {position: absolute;left: 5px;top: 0px;} #page-mod-scorm-player #scormnav {position: absolute;right: 5px;top: 0px;text-align: center;top: 3px;width: 100%;} #page-mod-scorm-player #scormbox {width: 74%;height: 100%;position: absolute;right: 0px;top: 0px;} #page-mod-scorm-player #scormpage {position: relative;width: 100%;height: 100%;} -#page-mod-scorm-player #scormpage #toctree {position:relative;width:100%;overflow-x: auto;overflow-y: auto;} +#page-mod-scorm-player #scormpage #toctree {position:relative;width:100%;} #page-mod-scorm-player #tocbox {position: relative;left: 0px;width: 100%;height: 100%;font-size: 0.8em;} #page-mod-scorm-player #toctree { overflow: visible; } #page-mod-scorm-player #tochead {position: relative;text-align: center;top: 3px;height: 30px;} #page-mod-scorm-player #scormpage .scoframe {frameborder: 0;} +#page-mod-scorm-player #scormpage #scorm_object {border: none; width: 98%; height: 98%;} +#page-mod-scorm-player #scormpage #scorm_object.scorm_nav_under_content {height: 95%;} +#page-mod-scorm-player #scormpage #scorm_content {height: 100%;} +#page-mod-scorm-player #scormpage #scorm_toc {position: relative;} +#page-mod-scorm-player #scormpage #scorm_toc_title {font-size: 1.2em; font-weight: bold;} +#page-mod-scorm-player #scormpage #scorm_tree {border-right: 5px solid rgb(239, 245, 255);} +#page-mod-scorm-player #scormpage #scorm_navpanel {text-align: center;} #page-mod-scorm-player .toc, #page-mod-scorm-player .no-toc {width: 100%;} #page-mod-scorm-player .structlist {list-style-type: none;white-space: nowrap;} #page-mod-scorm-player .structurelist {position: relative;list-style-type: none;width: 96%;margin:0;padding:0;} #page-mod-scorm-player .structurelist ul {padding-left: 0.5em;margin-left: 0.5em;} +#page-mod-scorm-player #scormpage #scorm_toc.disabled, +#page-mod-scorm-player #scormpage #scorm_toc_toggle.disabled { + display:none +} #page-mod-scorm-view .structurelist {list-style-type: none;white-space: nowrap;} #page-mod-scorm-view .structurelist {list-style-type: none;white-space: nowrap;} @@ -45,3 +56,37 @@ word-break: break-all; } +#page-mod-scorm-player #scormpage span.yui3-treeview-icon {display: none;} +#page-mod-scorm-player #scormpage li.yui3-treeview-has-children > div.yui3-treeview-row > span.yui3-treeview-icon {display: block;} + +#page-mod-scorm-player #scormpage div.yui3-u-1, +#page-mod-scorm-player #scormpage div.yui3-u-3-4, +#page-mod-scorm-player #scormpage div.yui3-u-1-5, +#page-mod-scorm-player #scormpage div.yui3-u-1-24 { + display: inline-block; + *display: inline; + zoom: 1; + letter-spacing: normal; + word-spacing: normal; + vertical-align: top; + text-rendering: auto; +} + +#page-mod-scorm-player #scormpage div.yui3-u-1 {display: block;} + +#page-mod-scorm-player #scormpage div.yui3-u-3-4 {width: 75%;} + +#page-mod-scorm-player #scormpage div.yui3-u-1-5 {width: 20%;} + +#page-mod-scorm-player #scormpage div.yui3-u-1-24 {width: 4.1666%;} + +#page-mod-scorm-player #scormpage div.yui3-g-r {*letter-spacing: normal; *word-spacing: -0.43em;} + +/** +* Opera as of 12 on Windows needs word-spacing. +* The ".opera-only" selector is used to prevent actual prefocus styling +* and is not required in markup. +*/ +#page-mod-scorm-player .opera-only :-o-prefocus, + +#page-mod-scorm-player #scormpage div.yui3-g-r img {max-width: 100%;} diff --git a/mod/scorm/version.php b/mod/scorm/version.php index 56084add8c6..3b43237306f 100644 --- a/mod/scorm/version.php +++ b/mod/scorm/version.php @@ -25,7 +25,7 @@ defined('MOODLE_INTERNAL') || die(); -$module->version = 2013081303; // The current module version (Date: YYYYMMDDXX) +$module->version = 2013090100; // The current module version (Date: YYYYMMDDXX) $module->requires = 2013050100; // Requires this Moodle version $module->component = 'mod_scorm'; // Full name of the plugin (used for diagnostics) $module->cron = 300; diff --git a/mod/workshop/allocation/scheduled/classes/observer.php b/mod/workshop/allocation/scheduled/classes/observer.php new file mode 100644 index 00000000000..727edc7c29a --- /dev/null +++ b/mod/workshop/allocation/scheduled/classes/observer.php @@ -0,0 +1,84 @@ +. + +/** + * Event observers for workshopallocation_scheduled. + * + * @package workshopallocation_scheduled + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace workshopallocation_scheduled; +defined('MOODLE_INTERNAL') || die(); + +/** + * Class for workshopallocation_scheduled observers. + * + * @package workshopallocation_scheduled + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class observer { + + /** + * Triggered when the '\mod_workshop\event\course_module_viewed' event is triggered. + * + * This does the same job as {@link workshopallocation_scheduled_cron()} but for the + * single workshop. The idea is that we do not need to wait for cron to execute. + * Displaying the workshop main view.php can trigger the scheduled allocation, too. + * + * @param \mod_workshop\event\course_module_viewed $event + * @return bool + */ + public static function workshop_viewed($event) { + global $DB, $CFG; + + require_once($CFG->dirroot . '/mod/workshop/locallib.php'); + + $workshop = $event->get_record_snapshot('workshop', $event->objectid); + $course = $event->get_record_snapshot('course', $event->courseid); + $cm = $event->get_record_snapshot('course_modules', $event->contextinstanceid); + + $workshop = new \workshop($workshop, $cm, $course); + $now = time(); + + // Non-expensive check to see if the scheduled allocation can even happen. + if ($workshop->phase == \workshop::PHASE_SUBMISSION and $workshop->submissionend > 0 and $workshop->submissionend < $now) { + + // Make sure the scheduled allocation has been configured for this workshop, that it has not + // been executed yet and that the passed workshop record is still valid. + $sql = "SELECT a.id + FROM {workshopallocation_scheduled} a + JOIN {workshop} w ON a.workshopid = w.id + WHERE w.id = :workshopid + AND a.enabled = 1 + AND w.phase = :phase + AND w.submissionend > 0 + AND w.submissionend < :now + AND (a.timeallocated IS NULL OR a.timeallocated < w.submissionend)"; + $params = array('workshopid' => $workshop->id, 'phase' => \workshop::PHASE_SUBMISSION, 'now' => $now); + + if ($DB->record_exists_sql($sql, $params)) { + // Allocate submissions for assessments. + $allocator = $workshop->allocator_instance('scheduled'); + $result = $allocator->execute(); + // Todo inform the teachers about the results. + } + } + return true; + } +} diff --git a/mod/workshop/allocation/scheduled/db/events.php b/mod/workshop/allocation/scheduled/db/events.php index d9137fc881a..33c0c1713bd 100644 --- a/mod/workshop/allocation/scheduled/db/events.php +++ b/mod/workshop/allocation/scheduled/db/events.php @@ -27,14 +27,9 @@ defined('MOODLE_INTERNAL') || die(); -$handlers = array( - - // The workshop main page is displayed to the user - 'workshop_viewed' => array( - 'handlerfile' => '/mod/workshop/allocation/scheduled/lib.php', - 'handlerfunction' => 'workshopallocation_scheduled_workshop_viewed', - 'schedule' => 'instant', - 'internal' => 1, - ), - +$observers = array( + array( + 'eventname' => '\mod_workshop\event\course_module_viewed', + 'callback' => '\workshopallocation_scheduled\observer::workshop_viewed', + ) ); diff --git a/mod/workshop/allocation/scheduled/lib.php b/mod/workshop/allocation/scheduled/lib.php index 8809e93def2..11095a97b58 100644 --- a/mod/workshop/allocation/scheduled/lib.php +++ b/mod/workshop/allocation/scheduled/lib.php @@ -285,50 +285,3 @@ function workshopallocation_scheduled_cron() { // todo inform the teachers about the results } } - -//////////////////////////////////////////////////////////////////////////////// -// Events API -//////////////////////////////////////////////////////////////////////////////// - -/** - * Handler for the 'workshop_viewed' event - * - * This does the same job as {@link workshopallocation_scheduled_cron()} but for the - * single workshop. The idea is that we do not need to wait forcron to execute. - * Displaying the workshop main view.php can trigger the scheduled allocation, too. - * - * @param stdClass $event event data - * @return bool - */ -function workshopallocation_scheduled_workshop_viewed($event) { - global $DB; - - $workshop = $event->workshop; - $now = time(); - - // Non-expensive check to see if the scheduled allocation can even happen. - if ($workshop->phase == workshop::PHASE_SUBMISSION and $workshop->submissionend > 0 and $workshop->submissionend < $now) { - - // Make sure the scheduled allocation has been configured for this workshop, that it has not - // been executed yet and that the passed workshop record is still valid. - $sql = "SELECT a.id - FROM {workshopallocation_scheduled} a - JOIN {workshop} w ON a.workshopid = w.id - WHERE w.id = :workshopid - AND a.enabled = 1 - AND w.phase = :phase - AND w.submissionend > 0 - AND w.submissionend < :now - AND (a.timeallocated IS NULL OR a.timeallocated < w.submissionend)"; - $params = array('workshopid' => $workshop->id, 'phase' => workshop::PHASE_SUBMISSION, 'now' => $now); - - if ($DB->record_exists_sql($sql, $params)) { - // Allocate submissions for assessments. - $allocator = $workshop->allocator_instance('scheduled'); - $result = $allocator->execute(); - // todo inform the teachers about the results - } - } - - return true; -} diff --git a/mod/workshop/classes/event/course_module_viewed.php b/mod/workshop/classes/event/course_module_viewed.php new file mode 100644 index 00000000000..88226cdd6ff --- /dev/null +++ b/mod/workshop/classes/event/course_module_viewed.php @@ -0,0 +1,106 @@ +. + +/** + * This file contains an event for when a workshop activity is viewed. + * + * @package mod_workshop + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_workshop\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * Event for when a workshop activity is viewed. + * + * @package mod_workshop + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class course_module_viewed extends \core\event\content_viewed { + + /** + * Init method. + */ + protected function init() { + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_PARTICIPATING; + $this->data['objecttable'] = 'workshop'; + } + + /** + * Does this event replace a legacy event? + * + * @return string legacy event name + */ + public static function get_legacy_eventname() { + return 'workshop_viewed'; + } + + /** + * Returns non-localised description of what happened. + * + * @return string + */ + public function get_description() { + return 'User with id ' . $this->userid . ' viewed content ' . $this->get_url() . ' In phase ' . $this->other['content']; + } + + /** + * Returns localised general event name. + * + * @return string + */ + public static function get_name() { + return get_string('workshopviewed', 'workshop'); + } + + /** + * Returns relevant URL. + * @return \moodle_url + */ + public function get_url() { + $url = '/mod/workshop/view.php'; + return new \moodle_url($url, array('id'=>$this->context->instanceid)); + } + + /** + * Legacy event data if get_legacy_eventname() is not empty. + * + * @return mixed + */ + protected function get_legacy_eventdata() { + global $USER; + + $workshop = $this->get_record_snapshot('workshop', $this->objectid); + $course = $this->get_record_snapshot('course', $this->courseid); + $cm = $this->get_record_snapshot('course_modules', $this->context->instanceid); + $workshop = new \workshop($workshop, $cm, $course); + return (object)array('workshop' => $workshop, 'user' => $USER); + } + + /** + * replace add_to_log() statement. + * + * @return array of parameters to be passed to legacy add_to_log() function. + */ + protected function get_legacy_logdata() { + $url = new \moodle_url('view.php', array('id' => $this->context->instanceid)); + return array($this->courseid, 'workshop', 'view', $url->out(), $this->objectid, $this->context->instanceid); + } +} diff --git a/mod/workshop/lang/en/workshop.php b/mod/workshop/lang/en/workshop.php index 9c99b1e9296..ef53bf0e3e9 100644 --- a/mod/workshop/lang/en/workshop.php +++ b/mod/workshop/lang/en/workshop.php @@ -311,6 +311,7 @@ $string['workshop:viewauthornames'] = 'View author names'; $string['workshop:viewauthorpublished'] = 'View authors of published submissions'; $string['workshop:viewpublishedsubmissions'] = 'View published submissions'; $string['workshop:viewreviewernames'] = 'View reviewer names'; +$string['workshopviewed'] = 'Workshop viewed'; $string['yourassessment'] = 'Your assessment'; $string['yourgrades'] = 'Your grades'; $string['yoursubmission'] = 'Your submission'; diff --git a/mod/workshop/view.php b/mod/workshop/view.php index 7272cfc964f..dfa245f2be1 100644 --- a/mod/workshop/view.php +++ b/mod/workshop/view.php @@ -41,30 +41,37 @@ $sorthow = optional_param('sorthow', 'ASC', PARAM_ALPHA); $eval = optional_param('eval', null, PARAM_PLUGIN); if ($id) { - $cm = get_coursemodule_from_id('workshop', $id, 0, false, MUST_EXIST); - $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); - $workshop = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); + $cm = get_coursemodule_from_id('workshop', $id, 0, false, MUST_EXIST); + $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); + $workshoprecord = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); } else { - $workshop = $DB->get_record('workshop', array('id' => $w), '*', MUST_EXIST); - $course = $DB->get_record('course', array('id' => $workshop->course), '*', MUST_EXIST); - $cm = get_coursemodule_from_instance('workshop', $workshop->id, $course->id, false, MUST_EXIST); + $workshoprecord = $DB->get_record('workshop', array('id' => $w), '*', MUST_EXIST); + $course = $DB->get_record('course', array('id' => $workshoprecord->course), '*', MUST_EXIST); + $cm = get_coursemodule_from_instance('workshop', $workshoprecord->id, $course->id, false, MUST_EXIST); } require_login($course, true, $cm); require_capability('mod/workshop:view', $PAGE->context); -$workshop = new workshop($workshop, $cm, $course); -$workshop->log('view'); +$workshop = new workshop($workshoprecord, $cm, $course); // Mark viewed $completion = new completion_info($course); $completion->set_module_viewed($cm); -// Fire the event -events_trigger('workshop_viewed', (object)array( - 'workshop' => $workshop, - 'user' => $USER, -)); +$eventdata = array(); +$eventdata['objectid'] = $workshop->id; +$eventdata['context'] = $workshop->context; +$eventdata['courseid'] = $course->id; +$eventdata['other']['content'] = $workshop->phase; + +$PAGE->set_url($workshop->view_url()); +$event = \mod_workshop\event\course_module_viewed::create($eventdata); +$event->add_record_snapshot('course', $course); +$event->add_record_snapshot('workshop', $workshoprecord); +$event->add_record_snapshot('course_modules', $cm); +$event->set_page_detail(); +$event->trigger(); // If the phase is to be switched, do it asap. This just has to happen after triggering // the event so that the scheduled allocator had a chance to allocate submissions. @@ -82,7 +89,6 @@ if (!is_null($editmode) && $PAGE->user_allowed_editing()) { $USER->editing = $editmode; } -$PAGE->set_url($workshop->view_url()); $PAGE->set_title($workshop->name); $PAGE->set_heading($course->fullname); diff --git a/pix/e/abbr.png b/pix/e/abbr.png new file mode 100644 index 00000000000..93c2f08a59f Binary files /dev/null and b/pix/e/abbr.png differ diff --git a/pix/e/abbr.svg b/pix/e/abbr.svg new file mode 100644 index 00000000000..be8883c064b --- /dev/null +++ b/pix/e/abbr.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/absolute.png b/pix/e/absolute.png new file mode 100644 index 00000000000..acd5351d3df Binary files /dev/null and b/pix/e/absolute.png differ diff --git a/pix/e/absolute.svg b/pix/e/absolute.svg new file mode 100644 index 00000000000..1e79d6e2b33 --- /dev/null +++ b/pix/e/absolute.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/acronym.png b/pix/e/acronym.png new file mode 100644 index 00000000000..73488d8a6d7 Binary files /dev/null and b/pix/e/acronym.png differ diff --git a/pix/e/acronym.svg b/pix/e/acronym.svg new file mode 100644 index 00000000000..3d4dc4665f7 --- /dev/null +++ b/pix/e/acronym.svg @@ -0,0 +1,24 @@ + + + +]> + + + + + diff --git a/pix/e/advance_hr.png b/pix/e/advance_hr.png new file mode 100644 index 00000000000..1fcaf187af3 Binary files /dev/null and b/pix/e/advance_hr.png differ diff --git a/pix/e/advance_hr.svg b/pix/e/advance_hr.svg new file mode 100644 index 00000000000..efd33fae861 --- /dev/null +++ b/pix/e/advance_hr.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/align_center.png b/pix/e/align_center.png new file mode 100644 index 00000000000..2d762661d14 Binary files /dev/null and b/pix/e/align_center.png differ diff --git a/pix/e/align_center.svg b/pix/e/align_center.svg new file mode 100644 index 00000000000..f6eae2969f4 --- /dev/null +++ b/pix/e/align_center.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/align_left.png b/pix/e/align_left.png new file mode 100644 index 00000000000..1d87f1cfd3e Binary files /dev/null and b/pix/e/align_left.png differ diff --git a/pix/e/align_left.svg b/pix/e/align_left.svg new file mode 100644 index 00000000000..b792e41ed3a --- /dev/null +++ b/pix/e/align_left.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/align_right.png b/pix/e/align_right.png new file mode 100644 index 00000000000..113b73568d1 Binary files /dev/null and b/pix/e/align_right.png differ diff --git a/pix/e/align_right.svg b/pix/e/align_right.svg new file mode 100644 index 00000000000..c636b9e5b90 --- /dev/null +++ b/pix/e/align_right.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/anchor.png b/pix/e/anchor.png new file mode 100644 index 00000000000..ce92365e1e2 Binary files /dev/null and b/pix/e/anchor.png differ diff --git a/pix/e/anchor.svg b/pix/e/anchor.svg new file mode 100644 index 00000000000..05cf0f397ec --- /dev/null +++ b/pix/e/anchor.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/backward.png b/pix/e/backward.png new file mode 100644 index 00000000000..eef5fb23c47 Binary files /dev/null and b/pix/e/backward.png differ diff --git a/pix/e/backward.svg b/pix/e/backward.svg new file mode 100644 index 00000000000..10531b19202 --- /dev/null +++ b/pix/e/backward.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/bold.png b/pix/e/bold.png new file mode 100644 index 00000000000..0f9b1cf4fe9 Binary files /dev/null and b/pix/e/bold.png differ diff --git a/pix/e/bold.svg b/pix/e/bold.svg new file mode 100644 index 00000000000..3f460e3f78c --- /dev/null +++ b/pix/e/bold.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/bullet_list.png b/pix/e/bullet_list.png new file mode 100644 index 00000000000..2335cd236d8 Binary files /dev/null and b/pix/e/bullet_list.png differ diff --git a/pix/e/bullet_list.svg b/pix/e/bullet_list.svg new file mode 100644 index 00000000000..1b67ade9aa4 --- /dev/null +++ b/pix/e/bullet_list.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/cell_props.png b/pix/e/cell_props.png new file mode 100644 index 00000000000..c79aa5b3a2d Binary files /dev/null and b/pix/e/cell_props.png differ diff --git a/pix/e/cell_props.svg b/pix/e/cell_props.svg new file mode 100644 index 00000000000..9812c9104a1 --- /dev/null +++ b/pix/e/cell_props.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/cite.png b/pix/e/cite.png new file mode 100644 index 00000000000..e70c73c20a7 Binary files /dev/null and b/pix/e/cite.png differ diff --git a/pix/e/cite.svg b/pix/e/cite.svg new file mode 100644 index 00000000000..b21b1d551ba --- /dev/null +++ b/pix/e/cite.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/cleanup_messy_code.png b/pix/e/cleanup_messy_code.png new file mode 100644 index 00000000000..d519b25defc Binary files /dev/null and b/pix/e/cleanup_messy_code.png differ diff --git a/pix/e/cleanup_messy_code.svg b/pix/e/cleanup_messy_code.svg new file mode 100644 index 00000000000..a3483abc6c1 --- /dev/null +++ b/pix/e/cleanup_messy_code.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/clear_formatting.png b/pix/e/clear_formatting.png new file mode 100644 index 00000000000..3989a184058 Binary files /dev/null and b/pix/e/clear_formatting.png differ diff --git a/pix/e/clear_formatting.svg b/pix/e/clear_formatting.svg new file mode 100644 index 00000000000..5d89d287bd4 --- /dev/null +++ b/pix/e/clear_formatting.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/copy.png b/pix/e/copy.png new file mode 100644 index 00000000000..b48b02bf18c Binary files /dev/null and b/pix/e/copy.png differ diff --git a/pix/e/copy.svg b/pix/e/copy.svg new file mode 100644 index 00000000000..39a67b0634b --- /dev/null +++ b/pix/e/copy.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/cut.png b/pix/e/cut.png new file mode 100644 index 00000000000..20c4e4e5a6b Binary files /dev/null and b/pix/e/cut.png differ diff --git a/pix/e/cut.svg b/pix/e/cut.svg new file mode 100644 index 00000000000..cd47961efb5 --- /dev/null +++ b/pix/e/cut.svg @@ -0,0 +1,23 @@ + + + +]> + + + + + diff --git a/pix/e/decrease_indent.png b/pix/e/decrease_indent.png new file mode 100644 index 00000000000..1609df7fbe9 Binary files /dev/null and b/pix/e/decrease_indent.png differ diff --git a/pix/e/decrease_indent.svg b/pix/e/decrease_indent.svg new file mode 100644 index 00000000000..fc8546701e1 --- /dev/null +++ b/pix/e/decrease_indent.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete.png b/pix/e/delete.png new file mode 100644 index 00000000000..84da3f9384e Binary files /dev/null and b/pix/e/delete.png differ diff --git a/pix/e/delete.svg b/pix/e/delete.svg new file mode 100644 index 00000000000..f3fa58d3083 --- /dev/null +++ b/pix/e/delete.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + \ No newline at end of file diff --git a/pix/e/delete_col.png b/pix/e/delete_col.png new file mode 100644 index 00000000000..1a11e667111 Binary files /dev/null and b/pix/e/delete_col.png differ diff --git a/pix/e/delete_col.svg b/pix/e/delete_col.svg new file mode 100644 index 00000000000..b3b06dfe64c --- /dev/null +++ b/pix/e/delete_col.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete_row.png b/pix/e/delete_row.png new file mode 100644 index 00000000000..f35c139187b Binary files /dev/null and b/pix/e/delete_row.png differ diff --git a/pix/e/delete_row.svg b/pix/e/delete_row.svg new file mode 100644 index 00000000000..8942bef70f5 --- /dev/null +++ b/pix/e/delete_row.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete_table.png b/pix/e/delete_table.png new file mode 100644 index 00000000000..d6a53744ed3 Binary files /dev/null and b/pix/e/delete_table.png differ diff --git a/pix/e/delete_table.svg b/pix/e/delete_table.svg new file mode 100644 index 00000000000..0819c0e1ff0 --- /dev/null +++ b/pix/e/delete_table.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/document_properties.png b/pix/e/document_properties.png new file mode 100644 index 00000000000..20e3888c948 Binary files /dev/null and b/pix/e/document_properties.png differ diff --git a/pix/e/document_properties.svg b/pix/e/document_properties.svg new file mode 100644 index 00000000000..66d874853fa --- /dev/null +++ b/pix/e/document_properties.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/dragmath.png b/pix/e/dragmath.png new file mode 100644 index 00000000000..3c6405e0121 Binary files /dev/null and b/pix/e/dragmath.png differ diff --git a/pix/e/dragmath.svg b/pix/e/dragmath.svg new file mode 100644 index 00000000000..1671117b5d8 --- /dev/null +++ b/pix/e/dragmath.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/emoticons.png b/pix/e/emoticons.png new file mode 100644 index 00000000000..94247afcc47 Binary files /dev/null and b/pix/e/emoticons.png differ diff --git a/pix/e/emoticons.svg b/pix/e/emoticons.svg new file mode 100644 index 00000000000..33465c90bd7 --- /dev/null +++ b/pix/e/emoticons.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/find_replace.png b/pix/e/find_replace.png new file mode 100644 index 00000000000..da59dc48bc3 Binary files /dev/null and b/pix/e/find_replace.png differ diff --git a/pix/e/find_replace.svg b/pix/e/find_replace.svg new file mode 100644 index 00000000000..cfcaf0a9687 --- /dev/null +++ b/pix/e/find_replace.svg @@ -0,0 +1,35 @@ + + + +]> + + + + + diff --git a/pix/e/forward.png b/pix/e/forward.png new file mode 100644 index 00000000000..be8dfe938b3 Binary files /dev/null and b/pix/e/forward.png differ diff --git a/pix/e/forward.svg b/pix/e/forward.svg new file mode 100644 index 00000000000..d9a23ae279f --- /dev/null +++ b/pix/e/forward.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/fullpage.png b/pix/e/fullpage.png new file mode 100644 index 00000000000..e5376b84e58 Binary files /dev/null and b/pix/e/fullpage.png differ diff --git a/pix/e/fullpage.svg b/pix/e/fullpage.svg new file mode 100644 index 00000000000..feadd4770b0 --- /dev/null +++ b/pix/e/fullpage.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/pix/e/fullscreen.png b/pix/e/fullscreen.png new file mode 100644 index 00000000000..49809362e9d Binary files /dev/null and b/pix/e/fullscreen.png differ diff --git a/pix/e/fullscreen.svg b/pix/e/fullscreen.svg new file mode 100644 index 00000000000..81a540b7db4 --- /dev/null +++ b/pix/e/fullscreen.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/help.png b/pix/e/help.png new file mode 100644 index 00000000000..d29072e0c78 Binary files /dev/null and b/pix/e/help.png differ diff --git a/pix/e/help.svg b/pix/e/help.svg new file mode 100644 index 00000000000..9daeea5e3d0 --- /dev/null +++ b/pix/e/help.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/increase_indent.png b/pix/e/increase_indent.png new file mode 100644 index 00000000000..163fd7a49f5 Binary files /dev/null and b/pix/e/increase_indent.png differ diff --git a/pix/e/increase_indent.svg b/pix/e/increase_indent.svg new file mode 100644 index 00000000000..dd1f0fb1da4 --- /dev/null +++ b/pix/e/increase_indent.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/insert.png b/pix/e/insert.png new file mode 100644 index 00000000000..49c7c099334 Binary files /dev/null and b/pix/e/insert.png differ diff --git a/pix/e/insert.svg b/pix/e/insert.svg new file mode 100644 index 00000000000..65411604d13 --- /dev/null +++ b/pix/e/insert.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/insert_col_after.png b/pix/e/insert_col_after.png new file mode 100644 index 00000000000..e29d46dc5c7 Binary files /dev/null and b/pix/e/insert_col_after.png differ diff --git a/pix/e/insert_col_after.svg b/pix/e/insert_col_after.svg new file mode 100644 index 00000000000..05f064ad686 --- /dev/null +++ b/pix/e/insert_col_after.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_col_before.png b/pix/e/insert_col_before.png new file mode 100644 index 00000000000..9d20263a226 Binary files /dev/null and b/pix/e/insert_col_before.png differ diff --git a/pix/e/insert_col_before.svg b/pix/e/insert_col_before.svg new file mode 100644 index 00000000000..6be205ca729 --- /dev/null +++ b/pix/e/insert_col_before.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_date.png b/pix/e/insert_date.png new file mode 100644 index 00000000000..0f74951f34c Binary files /dev/null and b/pix/e/insert_date.png differ diff --git a/pix/e/insert_date.svg b/pix/e/insert_date.svg new file mode 100644 index 00000000000..25f2e5f8c40 --- /dev/null +++ b/pix/e/insert_date.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_edit_image.png b/pix/e/insert_edit_image.png new file mode 100644 index 00000000000..29f5c9733e8 Binary files /dev/null and b/pix/e/insert_edit_image.png differ diff --git a/pix/e/insert_edit_image.svg b/pix/e/insert_edit_image.svg new file mode 100644 index 00000000000..3fdf5a84cf3 --- /dev/null +++ b/pix/e/insert_edit_image.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/insert_edit_link.png b/pix/e/insert_edit_link.png new file mode 100644 index 00000000000..226105a5709 Binary files /dev/null and b/pix/e/insert_edit_link.png differ diff --git a/pix/e/insert_edit_link.svg b/pix/e/insert_edit_link.svg new file mode 100644 index 00000000000..9528b2b0282 --- /dev/null +++ b/pix/e/insert_edit_link.svg @@ -0,0 +1,21 @@ + + + +]> + + + + + diff --git a/pix/e/insert_edit_video.png b/pix/e/insert_edit_video.png new file mode 100644 index 00000000000..7505977669b Binary files /dev/null and b/pix/e/insert_edit_video.png differ diff --git a/pix/e/insert_edit_video.svg b/pix/e/insert_edit_video.svg new file mode 100644 index 00000000000..5de07d8bb8a --- /dev/null +++ b/pix/e/insert_edit_video.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_file.png b/pix/e/insert_file.png new file mode 100644 index 00000000000..c50726b986c Binary files /dev/null and b/pix/e/insert_file.png differ diff --git a/pix/e/insert_file.svg b/pix/e/insert_file.svg new file mode 100644 index 00000000000..733265c4554 --- /dev/null +++ b/pix/e/insert_file.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/pix/e/insert_horizontal_ruler.png b/pix/e/insert_horizontal_ruler.png new file mode 100644 index 00000000000..a51af6a4923 Binary files /dev/null and b/pix/e/insert_horizontal_ruler.png differ diff --git a/pix/e/insert_horizontal_ruler.svg b/pix/e/insert_horizontal_ruler.svg new file mode 100644 index 00000000000..0b0501845b1 --- /dev/null +++ b/pix/e/insert_horizontal_ruler.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/insert_nonbreaking_space.png b/pix/e/insert_nonbreaking_space.png new file mode 100644 index 00000000000..e2395427097 Binary files /dev/null and b/pix/e/insert_nonbreaking_space.png differ diff --git a/pix/e/insert_nonbreaking_space.svg b/pix/e/insert_nonbreaking_space.svg new file mode 100644 index 00000000000..44702af4f8e --- /dev/null +++ b/pix/e/insert_nonbreaking_space.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/insert_row_after.png b/pix/e/insert_row_after.png new file mode 100644 index 00000000000..c8d5c4c9466 Binary files /dev/null and b/pix/e/insert_row_after.png differ diff --git a/pix/e/insert_row_after.svg b/pix/e/insert_row_after.svg new file mode 100644 index 00000000000..4804dfb73ef --- /dev/null +++ b/pix/e/insert_row_after.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_row_before.png b/pix/e/insert_row_before.png new file mode 100644 index 00000000000..2554823b87f Binary files /dev/null and b/pix/e/insert_row_before.png differ diff --git a/pix/e/insert_row_before.svg b/pix/e/insert_row_before.svg new file mode 100644 index 00000000000..fe19ef5bd42 --- /dev/null +++ b/pix/e/insert_row_before.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_time.png b/pix/e/insert_time.png new file mode 100644 index 00000000000..751a86a545f Binary files /dev/null and b/pix/e/insert_time.png differ diff --git a/pix/e/insert_time.svg b/pix/e/insert_time.svg new file mode 100644 index 00000000000..3efa7f90961 --- /dev/null +++ b/pix/e/insert_time.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/italic.png b/pix/e/italic.png new file mode 100644 index 00000000000..fb9951c716b Binary files /dev/null and b/pix/e/italic.png differ diff --git a/pix/e/italic.svg b/pix/e/italic.svg new file mode 100644 index 00000000000..d1265dea501 --- /dev/null +++ b/pix/e/italic.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/justify.png b/pix/e/justify.png new file mode 100644 index 00000000000..ae3c30b22c4 Binary files /dev/null and b/pix/e/justify.png differ diff --git a/pix/e/justify.svg b/pix/e/justify.svg new file mode 100644 index 00000000000..d825fa76a7d --- /dev/null +++ b/pix/e/justify.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/layers.png b/pix/e/layers.png new file mode 100644 index 00000000000..d1cf1ff472e Binary files /dev/null and b/pix/e/layers.png differ diff --git a/pix/e/layers.svg b/pix/e/layers.svg new file mode 100644 index 00000000000..9b505a627e7 --- /dev/null +++ b/pix/e/layers.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/layers_over.png b/pix/e/layers_over.png new file mode 100644 index 00000000000..e987ddadeb0 Binary files /dev/null and b/pix/e/layers_over.png differ diff --git a/pix/e/layers_over.svg b/pix/e/layers_over.svg new file mode 100644 index 00000000000..9961385b5a3 --- /dev/null +++ b/pix/e/layers_over.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/layers_under.png b/pix/e/layers_under.png new file mode 100644 index 00000000000..698c532a556 Binary files /dev/null and b/pix/e/layers_under.png differ diff --git a/pix/e/layers_under.svg b/pix/e/layers_under.svg new file mode 100644 index 00000000000..bc4475735bb --- /dev/null +++ b/pix/e/layers_under.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/left_to_right.png b/pix/e/left_to_right.png new file mode 100644 index 00000000000..cf92d793e61 Binary files /dev/null and b/pix/e/left_to_right.png differ diff --git a/pix/e/left_to_right.svg b/pix/e/left_to_right.svg new file mode 100644 index 00000000000..1642feda3a0 --- /dev/null +++ b/pix/e/left_to_right.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/manage_files.png b/pix/e/manage_files.png new file mode 100644 index 00000000000..02135038974 Binary files /dev/null and b/pix/e/manage_files.png differ diff --git a/pix/e/manage_files.svg b/pix/e/manage_files.svg new file mode 100644 index 00000000000..b4bbac6c2ce --- /dev/null +++ b/pix/e/manage_files.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/pix/e/merge_cells.png b/pix/e/merge_cells.png new file mode 100644 index 00000000000..6a9accf3afc Binary files /dev/null and b/pix/e/merge_cells.png differ diff --git a/pix/e/merge_cells.svg b/pix/e/merge_cells.svg new file mode 100644 index 00000000000..12e5d2175f0 --- /dev/null +++ b/pix/e/merge_cells.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/new_document.png b/pix/e/new_document.png new file mode 100644 index 00000000000..ba31eecc9b5 Binary files /dev/null and b/pix/e/new_document.png differ diff --git a/pix/e/new_document.svg b/pix/e/new_document.svg new file mode 100644 index 00000000000..2a265af2dbf --- /dev/null +++ b/pix/e/new_document.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/numbered_list.png b/pix/e/numbered_list.png new file mode 100644 index 00000000000..200babea324 Binary files /dev/null and b/pix/e/numbered_list.png differ diff --git a/pix/e/numbered_list.svg b/pix/e/numbered_list.svg new file mode 100644 index 00000000000..fcd527a3929 --- /dev/null +++ b/pix/e/numbered_list.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/page_break.png b/pix/e/page_break.png new file mode 100644 index 00000000000..17be9c29fa0 Binary files /dev/null and b/pix/e/page_break.png differ diff --git a/pix/e/page_break.svg b/pix/e/page_break.svg new file mode 100644 index 00000000000..d657410379c --- /dev/null +++ b/pix/e/page_break.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/paste.png b/pix/e/paste.png new file mode 100644 index 00000000000..686d9f2016a Binary files /dev/null and b/pix/e/paste.png differ diff --git a/pix/e/paste.svg b/pix/e/paste.svg new file mode 100644 index 00000000000..b6d5daae8ff --- /dev/null +++ b/pix/e/paste.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/paste_text.png b/pix/e/paste_text.png new file mode 100644 index 00000000000..810fc67ffb2 Binary files /dev/null and b/pix/e/paste_text.png differ diff --git a/pix/e/paste_text.svg b/pix/e/paste_text.svg new file mode 100644 index 00000000000..b1dfd024954 --- /dev/null +++ b/pix/e/paste_text.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/paste_word.png b/pix/e/paste_word.png new file mode 100644 index 00000000000..d9f65dd3f50 Binary files /dev/null and b/pix/e/paste_word.png differ diff --git a/pix/e/paste_word.svg b/pix/e/paste_word.svg new file mode 100644 index 00000000000..5dfb98b2bb7 --- /dev/null +++ b/pix/e/paste_word.svg @@ -0,0 +1,19 @@ + + + +]> + + + + + diff --git a/pix/e/prevent_autolink.png b/pix/e/prevent_autolink.png new file mode 100644 index 00000000000..afd724da5d4 Binary files /dev/null and b/pix/e/prevent_autolink.png differ diff --git a/pix/e/prevent_autolink.svg b/pix/e/prevent_autolink.svg new file mode 100644 index 00000000000..307c76a1504 --- /dev/null +++ b/pix/e/prevent_autolink.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/preview.png b/pix/e/preview.png new file mode 100644 index 00000000000..7aa7f9f791b Binary files /dev/null and b/pix/e/preview.png differ diff --git a/pix/e/preview.svg b/pix/e/preview.svg new file mode 100644 index 00000000000..e1c1d3383c3 --- /dev/null +++ b/pix/e/preview.svg @@ -0,0 +1,21 @@ + + + +]> + + + + + diff --git a/pix/e/print.png b/pix/e/print.png new file mode 100644 index 00000000000..da5ca353e86 Binary files /dev/null and b/pix/e/print.png differ diff --git a/pix/e/print.svg b/pix/e/print.svg new file mode 100644 index 00000000000..d8d5b7b6658 --- /dev/null +++ b/pix/e/print.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/question.png b/pix/e/question.png new file mode 100644 index 00000000000..bc6524853c6 Binary files /dev/null and b/pix/e/question.png differ diff --git a/pix/e/question.svg b/pix/e/question.svg new file mode 100644 index 00000000000..01d6c86e72f --- /dev/null +++ b/pix/e/question.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/redo.png b/pix/e/redo.png new file mode 100644 index 00000000000..f79afeebf39 Binary files /dev/null and b/pix/e/redo.png differ diff --git a/pix/e/redo.svg b/pix/e/redo.svg new file mode 100644 index 00000000000..d9cd7bd13e7 --- /dev/null +++ b/pix/e/redo.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/remove_link.png b/pix/e/remove_link.png new file mode 100644 index 00000000000..4f5c8225db0 Binary files /dev/null and b/pix/e/remove_link.png differ diff --git a/pix/e/remove_link.svg b/pix/e/remove_link.svg new file mode 100644 index 00000000000..0902149590c --- /dev/null +++ b/pix/e/remove_link.svg @@ -0,0 +1,21 @@ + + + +]> + + + + + diff --git a/pix/e/resize.png b/pix/e/resize.png new file mode 100644 index 00000000000..efbdde77f5a Binary files /dev/null and b/pix/e/resize.png differ diff --git a/pix/e/resize.svg b/pix/e/resize.svg new file mode 100644 index 00000000000..e1e2c452f23 --- /dev/null +++ b/pix/e/resize.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/restore_draft.png b/pix/e/restore_draft.png new file mode 100644 index 00000000000..3bcc81888d6 Binary files /dev/null and b/pix/e/restore_draft.png differ diff --git a/pix/e/restore_draft.svg b/pix/e/restore_draft.svg new file mode 100644 index 00000000000..3dd2b9bd4f3 --- /dev/null +++ b/pix/e/restore_draft.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/restore_last_draft.png b/pix/e/restore_last_draft.png new file mode 100644 index 00000000000..f0d64bb578d Binary files /dev/null and b/pix/e/restore_last_draft.png differ diff --git a/pix/e/restore_last_draft.svg b/pix/e/restore_last_draft.svg new file mode 100644 index 00000000000..38ecb7fedc7 --- /dev/null +++ b/pix/e/restore_last_draft.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/right_to_left.png b/pix/e/right_to_left.png new file mode 100644 index 00000000000..1dbf423438b Binary files /dev/null and b/pix/e/right_to_left.png differ diff --git a/pix/e/right_to_left.svg b/pix/e/right_to_left.svg new file mode 100644 index 00000000000..381a35cb87d --- /dev/null +++ b/pix/e/right_to_left.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/row_props.png b/pix/e/row_props.png new file mode 100644 index 00000000000..f0c958232b9 Binary files /dev/null and b/pix/e/row_props.png differ diff --git a/pix/e/row_props.svg b/pix/e/row_props.svg new file mode 100644 index 00000000000..cb4a14212c8 --- /dev/null +++ b/pix/e/row_props.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/save.png b/pix/e/save.png new file mode 100644 index 00000000000..e0ddbc50a5d Binary files /dev/null and b/pix/e/save.png differ diff --git a/pix/e/save.svg b/pix/e/save.svg new file mode 100644 index 00000000000..580d87f51e7 --- /dev/null +++ b/pix/e/save.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/search.png b/pix/e/search.png new file mode 100644 index 00000000000..3e56e58cb98 Binary files /dev/null and b/pix/e/search.png differ diff --git a/pix/e/search.svg b/pix/e/search.svg new file mode 100644 index 00000000000..37f3390a7da --- /dev/null +++ b/pix/e/search.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/select_all.png b/pix/e/select_all.png new file mode 100644 index 00000000000..a9994cf2bf1 Binary files /dev/null and b/pix/e/select_all.png differ diff --git a/pix/e/select_all.svg b/pix/e/select_all.svg new file mode 100644 index 00000000000..74b75b7bcd6 --- /dev/null +++ b/pix/e/select_all.svg @@ -0,0 +1,27 @@ + + + +]> + + + + + diff --git a/pix/e/show_invisible_characters.png b/pix/e/show_invisible_characters.png new file mode 100644 index 00000000000..15e7fa4e6b0 Binary files /dev/null and b/pix/e/show_invisible_characters.png differ diff --git a/pix/e/show_invisible_characters.svg b/pix/e/show_invisible_characters.svg new file mode 100644 index 00000000000..4532154d360 --- /dev/null +++ b/pix/e/show_invisible_characters.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/source_code.png b/pix/e/source_code.png new file mode 100644 index 00000000000..9d8444b9200 Binary files /dev/null and b/pix/e/source_code.png differ diff --git a/pix/e/source_code.svg b/pix/e/source_code.svg new file mode 100644 index 00000000000..a9846eacbcf --- /dev/null +++ b/pix/e/source_code.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/special_character.png b/pix/e/special_character.png new file mode 100644 index 00000000000..7734bf72a16 Binary files /dev/null and b/pix/e/special_character.png differ diff --git a/pix/e/special_character.svg b/pix/e/special_character.svg new file mode 100644 index 00000000000..8fa68398cdf --- /dev/null +++ b/pix/e/special_character.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/spellcheck.png b/pix/e/spellcheck.png new file mode 100644 index 00000000000..56b4d87ac7f Binary files /dev/null and b/pix/e/spellcheck.png differ diff --git a/pix/e/spellcheck.svg b/pix/e/spellcheck.svg new file mode 100644 index 00000000000..06f37c0d439 --- /dev/null +++ b/pix/e/spellcheck.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + \ No newline at end of file diff --git a/pix/e/split_cells.png b/pix/e/split_cells.png new file mode 100644 index 00000000000..0383e82746e Binary files /dev/null and b/pix/e/split_cells.png differ diff --git a/pix/e/split_cells.svg b/pix/e/split_cells.svg new file mode 100644 index 00000000000..96f58275472 --- /dev/null +++ b/pix/e/split_cells.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/strikethrough.png b/pix/e/strikethrough.png new file mode 100644 index 00000000000..40a85f3d6b1 Binary files /dev/null and b/pix/e/strikethrough.png differ diff --git a/pix/e/strikethrough.svg b/pix/e/strikethrough.svg new file mode 100644 index 00000000000..83b62c752a5 --- /dev/null +++ b/pix/e/strikethrough.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/styleprops.png b/pix/e/styleprops.png new file mode 100644 index 00000000000..888ead7c9f6 Binary files /dev/null and b/pix/e/styleprops.png differ diff --git a/pix/e/styleprops.svg b/pix/e/styleprops.svg new file mode 100644 index 00000000000..32bbafd9e84 --- /dev/null +++ b/pix/e/styleprops.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/subscript.png b/pix/e/subscript.png new file mode 100644 index 00000000000..a3df87d292d Binary files /dev/null and b/pix/e/subscript.png differ diff --git a/pix/e/subscript.svg b/pix/e/subscript.svg new file mode 100644 index 00000000000..17e52dd85cc --- /dev/null +++ b/pix/e/subscript.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/superscript.png b/pix/e/superscript.png new file mode 100644 index 00000000000..94bd6609dcf Binary files /dev/null and b/pix/e/superscript.png differ diff --git a/pix/e/superscript.svg b/pix/e/superscript.svg new file mode 100644 index 00000000000..38547f5d725 --- /dev/null +++ b/pix/e/superscript.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/table.png b/pix/e/table.png new file mode 100644 index 00000000000..f9950b91e82 Binary files /dev/null and b/pix/e/table.png differ diff --git a/pix/e/table.svg b/pix/e/table.svg new file mode 100644 index 00000000000..0ee90036cea --- /dev/null +++ b/pix/e/table.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/table_props.png b/pix/e/table_props.png new file mode 100644 index 00000000000..b67c2753857 Binary files /dev/null and b/pix/e/table_props.png differ diff --git a/pix/e/table_props.svg b/pix/e/table_props.svg new file mode 100644 index 00000000000..55e468f6422 --- /dev/null +++ b/pix/e/table_props.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/template.png b/pix/e/template.png new file mode 100644 index 00000000000..76b3c480f7c Binary files /dev/null and b/pix/e/template.png differ diff --git a/pix/e/template.svg b/pix/e/template.svg new file mode 100644 index 00000000000..8d8dd2b198d --- /dev/null +++ b/pix/e/template.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/text_color.png b/pix/e/text_color.png new file mode 100644 index 00000000000..10fad87af5d Binary files /dev/null and b/pix/e/text_color.png differ diff --git a/pix/e/text_color.svg b/pix/e/text_color.svg new file mode 100644 index 00000000000..bf90c6a1ca3 --- /dev/null +++ b/pix/e/text_color.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/text_highlight.png b/pix/e/text_highlight.png new file mode 100644 index 00000000000..93ca4639048 Binary files /dev/null and b/pix/e/text_highlight.png differ diff --git a/pix/e/text_highlight.svg b/pix/e/text_highlight.svg new file mode 100644 index 00000000000..88e12a8fe27 --- /dev/null +++ b/pix/e/text_highlight.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/tick.png b/pix/e/tick.png new file mode 100644 index 00000000000..a1b2f9b0a1a Binary files /dev/null and b/pix/e/tick.png differ diff --git a/pix/e/tick.svg b/pix/e/tick.svg new file mode 100644 index 00000000000..43f43c6fa60 --- /dev/null +++ b/pix/e/tick.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/toggle_blockquote.png b/pix/e/toggle_blockquote.png new file mode 100644 index 00000000000..fed739cac89 Binary files /dev/null and b/pix/e/toggle_blockquote.png differ diff --git a/pix/e/toggle_blockquote.svg b/pix/e/toggle_blockquote.svg new file mode 100644 index 00000000000..8830393cc15 --- /dev/null +++ b/pix/e/toggle_blockquote.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/underline.png b/pix/e/underline.png new file mode 100644 index 00000000000..b0b3b06afaf Binary files /dev/null and b/pix/e/underline.png differ diff --git a/pix/e/underline.svg b/pix/e/underline.svg new file mode 100644 index 00000000000..b1ad768d862 --- /dev/null +++ b/pix/e/underline.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/undo.png b/pix/e/undo.png new file mode 100644 index 00000000000..c073b1a4350 Binary files /dev/null and b/pix/e/undo.png differ diff --git a/pix/e/undo.svg b/pix/e/undo.svg new file mode 100644 index 00000000000..638c118b32f --- /dev/null +++ b/pix/e/undo.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/visual_aid.png b/pix/e/visual_aid.png new file mode 100644 index 00000000000..f3580e7d89f Binary files /dev/null and b/pix/e/visual_aid.png differ diff --git a/pix/e/visual_aid.svg b/pix/e/visual_aid.svg new file mode 100644 index 00000000000..4c6aca2111b --- /dev/null +++ b/pix/e/visual_aid.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/visual_blocks.png b/pix/e/visual_blocks.png new file mode 100644 index 00000000000..fe2c18397b7 Binary files /dev/null and b/pix/e/visual_blocks.png differ diff --git a/pix/e/visual_blocks.svg b/pix/e/visual_blocks.svg new file mode 100644 index 00000000000..10efe76bfe2 --- /dev/null +++ b/pix/e/visual_blocks.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + diff --git a/pix/i/persona_sign_in_black.png b/pix/i/persona_sign_in_black.png new file mode 100644 index 00000000000..d2f98f8b28a Binary files /dev/null and b/pix/i/persona_sign_in_black.png differ diff --git a/question/engine/bank.php b/question/engine/bank.php index 38b8f3df204..71a08b0dc3c 100644 --- a/question/engine/bank.php +++ b/question/engine/bank.php @@ -421,6 +421,10 @@ abstract class question_bank { // Delete any old question preview that got left in the database. require_once($CFG->dirroot . '/question/previewlib.php'); question_preview_cron(); + + // Clear older calculated stats from cache. + require_once($CFG->dirroot . '/question/engine/statisticslib.php'); + question_usage_statistics_cron(); } } diff --git a/question/engine/datalib.php b/question/engine/datalib.php index e52b80fe073..68e3bc4e634 100644 --- a/question/engine/datalib.php +++ b/question/engine/datalib.php @@ -359,16 +359,16 @@ ORDER BY * Load information about the latest state of each question from the database. * * @param qubaid_condition $qubaids used to restrict which usages are included - * in the query. See {@link qubaid_condition}. - * @param array $slots A list of slots for the questions you want to konw about. + * in the query. See {@link qubaid_condition}. + * @param array $slots A list of slots for the questions you want to konw about. + * @param string|null $fields * @return array of records. See the SQL in this function to see the fields available. */ - public function load_questions_usages_latest_steps(qubaid_condition $qubaids, $slots) { + public function load_questions_usages_latest_steps(qubaid_condition $qubaids, $slots, $fields = null) { list($slottest, $params) = $this->db->get_in_or_equal($slots, SQL_PARAMS_NAMED, 'slot'); - $records = $this->db->get_records_sql(" -SELECT - qas.id, + if ($fields === null) { + $fields = "qas.id, qa.id AS questionattemptid, qa.questionusageid, qa.slot, @@ -387,7 +387,13 @@ SELECT qas.state, qas.fraction, qas.timecreated, - qas.userid + qas.userid"; + + } + + $records = $this->db->get_records_sql(" +SELECT + {$fields} FROM {$qubaids->from_question_attempts('qa')} JOIN {question_attempt_steps} qas ON @@ -1458,6 +1464,14 @@ abstract class qubaid_condition { * @return the params needed by a query that uses {@link usage_id_in()}. */ public abstract function usage_id_in_params(); + + /** + * @return string 40-character hash code that uniquely identifies the combination of properties and class name of this qubaid + * condition. + */ + public function get_hash_code() { + return sha1(serialize($this)); + } } diff --git a/mod/quiz/report/statistics/responseanalysis.php b/question/engine/responseanalysis.php similarity index 82% rename from mod/quiz/report/statistics/responseanalysis.php rename to question/engine/responseanalysis.php index 332555a98ee..0118dfd9584 100644 --- a/mod/quiz/report/statistics/responseanalysis.php +++ b/question/engine/responseanalysis.php @@ -18,9 +18,11 @@ * This file contains the code to analyse all the responses to a particular * question. * - * @package quiz_statistics - * @copyright 2010 The Open University - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @package core + * @subpackage questionbank + * @copyright 2013 Open University + * @author Jamie Pratt + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ @@ -31,13 +33,13 @@ defined('MOODLE_INTERNAL') || die(); * This class can store and compute the analysis of the responses to a particular * question. * - * @copyright 2010 The Open University + * @copyright 2013 Open University + * @author Jamie Pratt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -class quiz_statistics_response_analyser { +class question_response_analyser { /** @var object the data from the database that defines the question. */ protected $questiondata; - protected $loaded = false; /** * @var array This is a multi-dimensional array that stores the results of @@ -119,9 +121,9 @@ class quiz_statistics_response_analyser { /** * Analyse all the response data for for all the specified attempts at * this question. - * @param $qubaids which attempts to consider. + * @param qubaid_condition $qubaids which attempts to consider. */ - public function analyse($qubaids) { + public function calculate($qubaids) { // Load data. $dm = new question_engine_data_mapper(); $questionattempts = $dm->load_attempts_at_question($this->questiondata->id, $qubaids); @@ -130,8 +132,8 @@ class quiz_statistics_response_analyser { foreach ($questionattempts as $qa) { $this->add_data_from_one_attempt($qa); } + $this->store_cached($qubaids); - $this->loaded = true; } /** @@ -164,19 +166,16 @@ class quiz_statistics_response_analyser { } /** - * Store the computed response analysis in the quiz_question_response_stats - * table. - * @param int $quizstatisticsid the cached quiz statistics to load the + * Store the computed response analysis in the question_response_analysis table. + * @param qubaid_condition $qubaids * data corresponding to. - * @return bool true if cached data was found in the database and loaded, - * otherwise false, to mean no data was loaded. + * @return bool true if cached data was found in the database and loaded, otherwise false, to mean no data was loaded. */ - public function load_cached($quizstatisticsid) { + public function load_cached($qubaids) { global $DB; - $rows = $DB->get_records('quiz_question_response_stats', - array('quizstatisticsid' => $quizstatisticsid, - 'questionid' => $this->questiondata->id)); + $rows = $DB->get_records('question_response_analysis', + array('hashcode' => $qubaids->get_hash_code(), 'questionid' => $this->questiondata->id)); if (!$rows) { return false; } @@ -186,28 +185,22 @@ class quiz_statistics_response_analyser { $this->responses[$row->subqid][$row->aid][$row->response]->count = $row->rcount; $this->responses[$row->subqid][$row->aid][$row->response]->fraction = $row->credit; } - $this->loaded = true; return true; } /** - * Store the computed response analysis in the quiz_question_response_stats - * table. - * @param int $quizstatisticsid the cached quiz statistics this correspons to. + * Store the computed response analysis in the question_response_analysis table. + * @param qubaid_condition $qubaids */ - public function store_cached($quizstatisticsid) { + public function store_cached($qubaids) { global $DB; - if (!$this->loaded) { - throw new coding_exception( - 'Question responses have not been analyised. Cannot store in the database.'); - } - + $cachetime = time(); foreach ($this->responses as $subpartid => $partdata) { foreach ($partdata as $responseclassid => $classdata) { foreach ($classdata as $response => $data) { $row = new stdClass(); - $row->quizstatisticsid = $quizstatisticsid; + $row->hashcode = $qubaids->get_hash_code(); $row->questionid = $this->questiondata->id; $row->subqid = $subpartid; if ($responseclassid === '') { @@ -218,7 +211,8 @@ class quiz_statistics_response_analyser { $row->response = $response; $row->rcount = $data->count; $row->credit = $data->fraction; - $DB->insert_record('quiz_question_response_stats', $row, false); + $row->timemodified = $cachetime; + $DB->insert_record('question_response_analysis', $row, false); } } } diff --git a/question/engine/statistics.php b/question/engine/statistics.php new file mode 100644 index 00000000000..e5f4d12a1f6 --- /dev/null +++ b/question/engine/statistics.php @@ -0,0 +1,447 @@ +. + +/** + * Question statistics calculations class. Used in the quiz statistics report but also available for use elsewhere. + * + * @package core + * @subpackage questionbank + * @copyright 2013 Open University + * @author Jamie Pratt + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + + +defined('MOODLE_INTERNAL') || die(); + + +/** + * This class has methods to compute the question statistics from the raw data. + * + * @copyright 2013 Open University + * @author Jamie Pratt + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class question_statistics { + public $questions; + public $subquestions = array(); + + protected $summarksavg; + + protected $sumofmarkvariance = 0; + protected $randomselectors = array(); + + /** + * Constructor. + * + * @param $questions array the main questions indexed by slot. + */ + public function __construct($questions) { + foreach ($questions as $slot => $question) { + $question->_stats = $this->make_blank_question_stats(); + $question->_stats->questionid = $question->id; + $question->_stats->slot = $slot; + } + + $this->questions = $questions; + } + + /** + * @return object ready to hold all the question statistics. + */ + protected function make_blank_question_stats() { + $stats = new stdClass(); + $stats->slot = null; + $stats->s = 0; + $stats->totalmarks = 0; + $stats->totalothermarks = 0; + $stats->markvariancesum = 0; + $stats->othermarkvariancesum = 0; + $stats->covariancesum = 0; + $stats->covariancemaxsum = 0; + $stats->subquestion = false; + $stats->subquestions = ''; + $stats->covariancewithoverallmarksum = 0; + $stats->randomguessscore = null; + $stats->markarray = array(); + $stats->othermarksarray = array(); + return $stats; + } + + /** + * @param $qubaids qubaid_condition + * @return array with three items + * - $lateststeps array of latest step data for the question usages + * - $summarks array of total marks for each usage, indexed by usage id + * - $summarksavg the average of the total marks over all the usages + */ + protected function get_latest_steps($qubaids) { + $dm = new question_engine_data_mapper(); + + $fields = " qas.id, + qa.questionusageid, + qa.questionid, + qa.slot, + qa.maxmark, + qas.fraction * qa.maxmark as mark"; + + $lateststeps = $dm->load_questions_usages_latest_steps($qubaids, array_keys($this->questions), $fields); + $summarks = array(); + if ($lateststeps) { + foreach ($lateststeps as $step) { + if (!isset($summarks[$step->questionusageid])) { + $summarks[$step->questionusageid] = 0; + } + $summarks[$step->questionusageid] += $step->mark; + } + $summarksavg = array_sum($summarks) / count($summarks); + } else { + $summarksavg = null; + } + + return array($lateststeps, $summarks, $summarksavg); + } + + /** + * @param $qubaids qubaid_condition + */ + public function calculate($qubaids) { + set_time_limit(0); + + list($lateststeps, $summarks, $summarksavg) = $this->get_latest_steps($qubaids); + + if ($lateststeps) { + $subquestionstats = array(); + + // Compute the statistics of position, and for random questions, work + // out which questions appear in which positions. + foreach ($lateststeps as $step) { + $this->initial_steps_walker($step, $this->questions[$step->slot]->_stats, $summarks); + + // If this is a random question what is the real item being used? + if ($step->questionid != $this->questions[$step->slot]->id) { + if (!isset($subquestionstats[$step->questionid])) { + $subquestionstats[$step->questionid] = $this->make_blank_question_stats(); + $subquestionstats[$step->questionid]->questionid = $step->questionid; + $subquestionstats[$step->questionid]->usedin = array(); + $subquestionstats[$step->questionid]->subquestion = true; + $subquestionstats[$step->questionid]->differentweights = false; + $subquestionstats[$step->questionid]->maxmark = $step->maxmark; + } else if ($subquestionstats[$step->questionid]->maxmark != $step->maxmark) { + $subquestionstats[$step->questionid]->differentweights = true; + } + + $this->initial_steps_walker($step, $subquestionstats[$step->questionid], $summarks, false); + + $number = $this->questions[$step->slot]->number; + $subquestionstats[$step->questionid]->usedin[$number] = $number; + + $randomselectorstring = $this->questions[$step->slot]->category . + '/' . $this->questions[$step->slot]->questiontext; + if (!isset($this->randomselectors[$randomselectorstring])) { + $this->randomselectors[$randomselectorstring] = array(); + } + $this->randomselectors[$randomselectorstring][$step->questionid] = + $step->questionid; + } + } + + foreach ($this->randomselectors as $key => $notused) { + ksort($this->randomselectors[$key]); + } + + // Compute the statistics of question id, if we need any. + $this->subquestions = question_load_questions(array_keys($subquestionstats)); + foreach ($this->subquestions as $qid => $subquestion) { + $subquestion->_stats = $subquestionstats[$qid]; + $subquestion->maxmark = $subquestion->_stats->maxmark; + $subquestion->_stats->randomguessscore = $this->get_random_guess_score($subquestion); + + $this->initial_question_walker($subquestion->_stats); + + if ($subquestionstats[$qid]->differentweights) { + // TODO output here really sucks, but throwing is too severe. + global $OUTPUT; + echo $OUTPUT->notification( + get_string('erroritemappearsmorethanoncewithdifferentweight', + 'quiz_statistics', $this->subquestions[$qid]->name)); + } + + if ($subquestion->_stats->usedin) { + sort($subquestion->_stats->usedin, SORT_NUMERIC); + $subquestion->_stats->positions = implode(',', $subquestion->_stats->usedin); + } else { + $subquestion->_stats->positions = ''; + } + } + + // Finish computing the averages, and put the subquestion data into the + // corresponding questions. + + // This cannot be a foreach loop because we need to have both + // $question and $nextquestion available, but apart from that it is + // foreach ($this->questions as $qid => $question). + reset($this->questions); + while (list($slot, $question) = each($this->questions)) { + $nextquestion = current($this->questions); + $question->_stats->positions = $question->number; + $question->_stats->maxmark = $question->maxmark; + $question->_stats->randomguessscore = $this->get_random_guess_score($question); + + $this->initial_question_walker($question->_stats); + + if ($question->qtype == 'random') { + $randomselectorstring = $question->category.'/'.$question->questiontext; + if ($nextquestion && $nextquestion->qtype == 'random') { + $nextrandomselectorstring = $nextquestion->category . '/' . + $nextquestion->questiontext; + if ($randomselectorstring == $nextrandomselectorstring) { + continue; // Next loop iteration. + } + } + if (isset($this->randomselectors[$randomselectorstring])) { + $question->_stats->subquestions = implode(',', + $this->randomselectors[$randomselectorstring]); + } + } + } + + // Go through the records one more time. + foreach ($lateststeps as $step) { + $this->secondary_steps_walker($step, $this->questions[$step->slot]->_stats, $summarks, $summarksavg); + + if ($this->questions[$step->slot]->qtype == 'random') { + $this->secondary_steps_walker($step, $this->subquestions[$step->questionid]->_stats, $summarks, $summarksavg); + } + } + + $sumofcovariancewithoverallmark = 0; + foreach ($this->questions as $slot => $question) { + $this->secondary_question_walker($question->_stats); + + $this->sumofmarkvariance += $question->_stats->markvariance; + + if ($question->_stats->covariancewithoverallmark >= 0) { + $sumofcovariancewithoverallmark += + sqrt($question->_stats->covariancewithoverallmark); + $question->_stats->negcovar = 0; + } else { + $question->_stats->negcovar = 1; + } + } + + foreach ($this->subquestions as $subquestion) { + $this->secondary_question_walker($subquestion->_stats); + } + + foreach ($this->questions as $question) { + if ($sumofcovariancewithoverallmark) { + if ($question->_stats->negcovar) { + $question->_stats->effectiveweight = null; + } else { + $question->_stats->effectiveweight = 100 * + sqrt($question->_stats->covariancewithoverallmark) / + $sumofcovariancewithoverallmark; + } + } else { + $question->_stats->effectiveweight = null; + } + } + $this->cache_stats($qubaids); + } + + + } + + /** + * @param $qubaids qubaid_condition + */ + protected function cache_stats($qubaids) { + global $DB; + $cachetime = time(); + foreach ($this->questions as $question) { + $question->_stats->hashcode = $qubaids->get_hash_code(); + $question->_stats->timemodified = $cachetime; + $DB->insert_record('question_statistics', $question->_stats, false); + } + + foreach ($this->subquestions as $subquestion) { + $subquestion->_stats->hashcode = $qubaids->get_hash_code(); + $subquestion->_stats->timemodified = $cachetime; + $DB->insert_record('question_statistics', $subquestion->_stats, false); + } + + } + + /** + * Update $stats->totalmarks, $stats->markarray, $stats->totalothermarks + * and $stats->othermarksarray to include another state. + * + * @param object $step the state to add to the statistics. + * @param object $stats the question statistics we are accumulating. + * @param array $summarks of the sum of marks for each question usage, indexed by question usage id + * @param bool $positionstat whether this is a statistic of position of question. + */ + protected function initial_steps_walker($step, $stats, $summarks, $positionstat = true) { + $stats->s++; + $stats->totalmarks += $step->mark; + $stats->markarray[] = $step->mark; + + if ($positionstat) { + $stats->totalothermarks += $summarks[$step->questionusageid] - $step->mark; + $stats->othermarksarray[] = $summarks[$step->questionusageid] - $step->mark; + + } else { + $stats->totalothermarks += $summarks[$step->questionusageid]; + $stats->othermarksarray[] = $summarks[$step->questionusageid]; + } + } + + /** + * Perform some computations on the per-question statistics calculations after + * we have been through all the states. + * + * @param object $stats quetsion stats to update. + */ + protected function initial_question_walker($stats) { + $stats->markaverage = $stats->totalmarks / $stats->s; + + if ($stats->maxmark != 0) { + $stats->facility = $stats->markaverage / $stats->maxmark; + } else { + $stats->facility = null; + } + + $stats->othermarkaverage = $stats->totalothermarks / $stats->s; + + sort($stats->markarray, SORT_NUMERIC); + sort($stats->othermarksarray, SORT_NUMERIC); + } + + /** + * Now we know the averages, accumulate the date needed to compute the higher + * moments of the question scores. + * + * @param object $step the state to add to the statistics. + * @param object $stats the question statistics we are accumulating. + * @param array $summarks of the sum of marks for each question usage, indexed by question usage id + * @param float $summarksavg the average sum of marks for all question usages + */ + protected function secondary_steps_walker($step, $stats, $summarks, $summarksavg) { + $markdifference = $step->mark - $stats->markaverage; + if ($stats->subquestion) { + $othermarkdifference = $summarks[$step->questionusageid] - $stats->othermarkaverage; + } else { + $othermarkdifference = $summarks[$step->questionusageid] - $step->mark - + $stats->othermarkaverage; + } + $overallmarkdifference = $summarks[$step->questionusageid] - $summarksavg; + + $sortedmarkdifference = array_shift($stats->markarray) - $stats->markaverage; + $sortedothermarkdifference = array_shift($stats->othermarksarray) - + $stats->othermarkaverage; + + $stats->markvariancesum += pow($markdifference, 2); + $stats->othermarkvariancesum += pow($othermarkdifference, 2); + $stats->covariancesum += $markdifference * $othermarkdifference; + $stats->covariancemaxsum += $sortedmarkdifference * $sortedothermarkdifference; + $stats->covariancewithoverallmarksum += $markdifference * $overallmarkdifference; + } + + /** + * Perform more per-question statistics calculations. + * + * @param object $stats quetsion stats to update. + */ + protected function secondary_question_walker($stats) { + if ($stats->s > 1) { + $stats->markvariance = $stats->markvariancesum / ($stats->s - 1); + $stats->othermarkvariance = $stats->othermarkvariancesum / ($stats->s - 1); + $stats->covariance = $stats->covariancesum / ($stats->s - 1); + $stats->covariancemax = $stats->covariancemaxsum / ($stats->s - 1); + $stats->covariancewithoverallmark = $stats->covariancewithoverallmarksum / + ($stats->s - 1); + $stats->sd = sqrt($stats->markvariancesum / ($stats->s - 1)); + + } else { + $stats->markvariance = null; + $stats->othermarkvariance = null; + $stats->covariance = null; + $stats->covariancemax = null; + $stats->covariancewithoverallmark = null; + $stats->sd = null; + } + + if ($stats->markvariance * $stats->othermarkvariance) { + $stats->discriminationindex = 100 * $stats->covariance / + sqrt($stats->markvariance * $stats->othermarkvariance); + } else { + $stats->discriminationindex = null; + } + + if ($stats->covariancemax) { + $stats->discriminativeefficiency = 100 * $stats->covariance / + $stats->covariancemax; + } else { + $stats->discriminativeefficiency = null; + } + } + + /** + * @param object $questiondata + * @return number the random guess score for this question. + */ + protected function get_random_guess_score($questiondata) { + return question_bank::get_qtype( + $questiondata->qtype, false)->get_random_guess_score($questiondata); + } + + /** + * Used when computing CIC. + * @return number + */ + public function get_sum_of_mark_variance() { + return $this->sumofmarkvariance; + } + + /** + * @param qubaid_condition $qubaids + */ + public function get_cached($qubaids) { + global $DB; + $questionstats = $DB->get_records('question_statistics', + array('hashcode' => $qubaids->get_hash_code())); + + $subquestionstats = array(); + foreach ($questionstats as $stat) { + if ($stat->slot) { + $this->questions[$stat->slot]->_stats = $stat; + } else { + $subquestionstats[$stat->questionid] = $stat; + } + } + + if (!empty($subquestionstats)) { + $subqstofetch = array_keys($subquestionstats); + $this->subquestions = question_load_questions($subqstofetch); + foreach ($this->subquestions as $subqid => $subq) { + $this->subquestions[$subqid]->_stats = $subquestionstats[$subqid]; + $this->subquestions[$subqid]->maxmark = $subq->defaultmark; + } + } + } + +} diff --git a/question/engine/statisticslib.php b/question/engine/statisticslib.php new file mode 100644 index 00000000000..ab99fc05a23 --- /dev/null +++ b/question/engine/statisticslib.php @@ -0,0 +1,46 @@ +. + +/** + * Functions common to the question usage statistics code. + * + * @package moodlecore + * @subpackage questionbank + * @copyright 2013 The Open University + * @author Jamie Pratt + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + + +defined('MOODLE_INTERNAL') || die(); + + +/** + * Question statistics cron code. Deletes cached stats more than a certain age. + */ +function question_usage_statistics_cron() { + global $DB; + + $expiretime = time() - 5*HOURSECS; + + mtrace("\n Cleaning up old question statistics cache records...", ''); + + $DB->delete_records_select('question_statistics', 'timemodified < ?', array($expiretime)); + $DB->delete_records_select('question_response_analysis', 'timemodified < ?', array($expiretime)); + + mtrace('done.'); + return true; +} diff --git a/report/log/index.php b/report/log/index.php index 6468d0427e1..ad946395b75 100644 --- a/report/log/index.php +++ b/report/log/index.php @@ -135,7 +135,7 @@ $adminediting = optional_param('adminedit', -1, PARAM_BOOL); if ($PAGE->user_allowed_editing() && $adminediting != -1) { $USER->editing = $adminediting; } -session_get_instance()->write_close(); +\core\session\manager::write_close(); if (!empty($chooselog)) { $userinfo = get_string('allparticipants'); diff --git a/report/loglive/index.php b/report/loglive/index.php index 90e3eb90671..7bb84d82a52 100644 --- a/report/loglive/index.php +++ b/report/loglive/index.php @@ -46,7 +46,7 @@ require_capability('report/loglive:view', $context); $strlivelogs = get_string('livelogs', 'report_loglive'); if ($inpopup) { - session_get_instance()->write_close(); + \core\session\manager::write_close(); $date = time() - 3600; diff --git a/repository/filesystem/lang/en/repository_filesystem.php b/repository/filesystem/lang/en/repository_filesystem.php index ab323933b92..df3eeaf4ed4 100644 --- a/repository/filesystem/lang/en/repository_filesystem.php +++ b/repository/filesystem/lang/en/repository_filesystem.php @@ -30,9 +30,12 @@ $string['filesystem:view'] = 'View file system repository'; $string['information'] = 'These folders are within the {$a} directory.'; $string['invalidpath'] = 'Invalid root path'; $string['path'] = 'Select a subdirectory'; +$string['relativefiles'] = 'Allow relative files'; +$string['relativefiles_desc'] = 'This allows all files in the repository to be accessible using relative links.'; $string['root'] = 'Root'; $string['nosubdir'] = 'You need to create at least one folder inside the {$a} directory so you can select it here.'; $string['pluginname_help'] = 'Create repository from local directory'; $string['pluginname'] = 'File system'; $string['enablecourseinstances'] = 'Allow admins to add a file system repository instance to a course (configurable only by admins)'; $string['enableuserinstances'] = 'Allow admins to add a file system repository instance for personal use (configurable only by admins)'; + diff --git a/repository/filesystem/lib.php b/repository/filesystem/lib.php index 42af49ec9d8..bc7ba2ea4b7 100644 --- a/repository/filesystem/lib.php +++ b/repository/filesystem/lib.php @@ -194,11 +194,12 @@ class repository_filesystem extends repository { } public static function get_instance_option_names() { - return array('fs_path'); + return array('fs_path', 'relativefiles'); } public function set_option($options = array()) { $options['fs_path'] = clean_param($options['fs_path'], PARAM_PATH); + $options['relativefiles'] = clean_param($options['relativefiles'], PARAM_INT); $ret = parent::set_option($options); return $ret; } @@ -229,6 +230,10 @@ class repository_filesystem extends repository { } closedir($handle); } + $mform->addElement('checkbox', 'relativefiles', get_string('relativefiles', 'repository_filesystem'), + get_string('relativefiles_desc', 'repository_filesystem')); + $mform->setType('relativefiles', PARAM_INT); + } else { $mform->addElement('static', null, '', get_string('nopermissions', 'error', get_string('configplugin', 'repository_filesystem'))); return false; @@ -461,6 +466,44 @@ class repository_filesystem extends repository { mtrace(" instance {$this->id}: deleted $deletedcount thumbnails"); } } + + /** + * Gets a file relative to this file in the repository and sends it to the browser. + * + * @param stored_file $mainfile The main file we are trying to access relative files for. + * @param string $relativepath the relative path to the file we are trying to access. + */ + public function send_relative_file(stored_file $mainfile, $relativepath) { + global $CFG; + // Check if this repository is allowed to use relative linking. + $allowlinks = $this->supports_relative_file(); + $lifetime = isset($CFG->filelifetime) ? $CFG->filelifetime : 86400; + if (!empty($allowlinks)) { + // Get path to the mainfile. + $mainfilepath = $mainfile->get_source(); + + // Strip out filename from the path. + $filename = $mainfile->get_filename(); + $basepath = strstr($mainfilepath, $filename, true); + + $fullrelativefilepath = realpath($this->root_path.$basepath.$relativepath); + + // Sanity check to make sure this path is inside this repository and the file exists. + if (strpos($fullrelativefilepath, $this->root_path) === 0 && file_exists($fullrelativefilepath)) { + send_file($fullrelativefilepath, basename($relativepath), $lifetime, 0); + } + } + send_file_not_found(); + } + + /** + * helper function to check if the repository supports send_relative_file. + * + * @return true|false + */ + public function supports_relative_file() { + return $this->get_option('relativefiles'); + } } /** diff --git a/repository/filesystem/tests/generator/lib.php b/repository/filesystem/tests/generator/lib.php index 8600686ac02..e298c92abb9 100644 --- a/repository/filesystem/tests/generator/lib.php +++ b/repository/filesystem/tests/generator/lib.php @@ -44,6 +44,9 @@ class repository_filesystem_generator extends testing_repository_generator { if (!isset($record['fs_path'])) { $record['fs_path'] = '/i/do/not/exist'; } + if (!isset($record['relativefiles'])) { + $record['relativefiles'] = 0; + } return $record; } diff --git a/repository/lib.php b/repository/lib.php index 276c0e9edb0..43ef70d43d5 100644 --- a/repository/lib.php +++ b/repository/lib.php @@ -743,7 +743,7 @@ abstract class repository implements cacheable_object { $repocontext = context::instance_by_id($this->instance->contextid); // Prevent access to private repositories when logged in as. - if ($can && session_is_loggedinas()) { + if ($can && \core\session\manager::is_loggedinas()) { if ($this->contains_private_data() || $repocontext->contextlevel == CONTEXT_USER) { $can = false; } @@ -2567,6 +2567,8 @@ abstract class repository implements cacheable_object { if ($tempfile = $fs->get_file($user_context->id, 'user', 'draft', $itemid, $newfilepath, $newfilename)) { // Remember original file source field. $source = @unserialize($file->get_source()); + // Remember the original sortorder. + $sortorder = $file->get_sortorder(); if ($tempfile->is_external_file()) { // New file is a reference. Check that existing file does not have any other files referencing to it if (isset($source->original) && $fs->search_references_count($source->original)) { @@ -2585,6 +2587,7 @@ abstract class repository implements cacheable_object { $newfilesource->original = $source->original; $newfile->set_source(serialize($newfilesource)); } + $newfile->set_sortorder($sortorder); // remove temp file $tempfile->delete(); return true; @@ -2866,6 +2869,31 @@ abstract class repository implements cacheable_object { $classname = $data['class']; return new $classname($data['id'], $data['ctxid'], $data['options'], $data['readonly']); } + + /** + * Gets a file relative to this file in the repository and sends it to the browser. + * Used to allow relative file linking within a repository without creating file records + * for linked files + * + * Repositories that overwrite this must be very careful - see filesystem repository for example. + * + * @param stored_file $mainfile The main file we are trying to access relative files for. + * @param string $relativepath the relative path to the file we are trying to access. + * + */ + public function send_relative_file(stored_file $mainfile, $relativepath) { + // This repository hasn't implemented this so send_file_not_found. + send_file_not_found(); + } + + /** + * helper function to check if the repository supports send_relative_file. + * + * @return true|false + */ + public function supports_relative_file() { + return false; + } } /** diff --git a/repository/tests/repositorylib_test.php b/repository/tests/repositorylib_test.php index 3d41ab0f8a9..fefb6bec4aa 100644 --- a/repository/tests/repositorylib_test.php +++ b/repository/tests/repositorylib_test.php @@ -436,7 +436,7 @@ class core_repositorylib_testcase extends advanced_testcase { $userrepo = repository::get_repository_by_id($user1repoid, $syscontext); $this->setAdminUser(); - session_loginas($user1->id, $syscontext); + \core\session\manager::loginas($user1->id, $syscontext); // Logged in as, I cannot view a user instance. $caughtexception = false; diff --git a/repository/upgrade.txt b/repository/upgrade.txt index bd724428512..2e03f7a6987 100644 --- a/repository/upgrade.txt +++ b/repository/upgrade.txt @@ -8,6 +8,9 @@ http://docs.moodle.org/dev/Repository_API * get_option() now always return null when the first parameter ($config) is not empty, and no value was found for this $config. Previously this could sometimes return an empty array(). * The function repository_attach_id() was removed, it was never used and was not useful. +* New functions send_relative_file() and supports_relative_file() to allow sending relative linked + files - see filesystem repository for example. + === 2.5 === diff --git a/rss/file.php b/rss/file.php index 6d7dbc03042..cdd6f8971d6 100644 --- a/rss/file.php +++ b/rss/file.php @@ -128,7 +128,7 @@ $user = get_complete_user_data('id', $userid); // let enrol plugins deal with new enrolments if necessary enrol_check_plugins($user); -session_set_user($user); //for login and capability checks +\core\session\manager::set_user($user); //for login and capability checks try { $autologinguest = true; diff --git a/theme/afterburner/config.php b/theme/afterburner/config.php index 473cb4c3000..fe0673f9165 100644 --- a/theme/afterburner/config.php +++ b/theme/afterburner/config.php @@ -13,6 +13,7 @@ $THEME->sheets = array( 'afterburner_calendar', 'afterburner_dock', 'afterburner_rtl', + 'afterburner_responsive', 'afterburner_settings', ); diff --git a/theme/afterburner/style/afterburner_blocks.css b/theme/afterburner/style/afterburner_blocks.css index 003a145e9f3..ffc29659686 100644 --- a/theme/afterburner/style/afterburner_blocks.css +++ b/theme/afterburner/style/afterburner_blocks.css @@ -53,7 +53,8 @@ Block } .block-region .invisible { opacity: 0.5; - filter: alpha(opacity=50); + -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /** must come first! **/ + filter: alpha(opacity=50); /** must come second! **/ } .block .block-hider-show, .block .block-hider-hide { @@ -77,9 +78,7 @@ Block list-style-type: none; } .block-region li { - padding: 0 0 20px 0; -} -.block-region li ul { + padding: 0; } .block-region li li { margin: 0 20px 0 10px; @@ -91,7 +90,7 @@ Block width: 100%; } .block .header div.commands { - margin-left: 10px; + margin-left: 0; } #region-pre .block .header { background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; @@ -152,4 +151,46 @@ Block left:0px; bottom: 0px; position:absolute; +} +/* COMMAND ICONS +-----------------------*/ +img.iconsmall, +.block.block_with_controls div.header div.commands a img, +.block-control-actions span.moodle-core-dragdrop-draghandle img, +.course-content ul.topics li.section .right img, +.course-content ul.topics li.section .left img { + height:15px; + margin:2px; + width:15px; + background-color: #eee; + border: 1px solid #aaa; + padding:1px; + -webkit-border-radius:5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.course-content ul.topics li.section .right img.spacer, +.course-content ul.topics li.section .left img.spacer { + height: 1px; + margin: 0; + width: 1px; + background: none; + border: 0 none; + padding: 0; + border-radius: 0; +} +.block .header .commands { + text-align: center; +} +.block-control-actions span.moodle-core-dragdrop-draghandle { + position: relative; + top: 5px; +} +.moodle-actionmenu.show[data-enhanced] .menu a { + color: #333333; + display: block; + padding: 2px 0.5em; +} +.moodle-actionmenu.show[data-enhanced] .menu { + left: 0; } \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_dock.css b/theme/afterburner/style/afterburner_dock.css index 3d75263725f..2d25526f0ad 100644 --- a/theme/afterburner/style/afterburner_dock.css +++ b/theme/afterburner/style/afterburner_dock.css @@ -14,7 +14,7 @@ Docking Module display:none; } #dock .dockeditem.firstdockitem { - margin-top: 2.3em; + margin-top: 0; -webkit-border-top-right-radius: 6px; -moz-border-radius-topright: 6px; border-top-right-radius: 6px; diff --git a/theme/afterburner/style/afterburner_menu.css b/theme/afterburner/style/afterburner_menu.css index 264b3e7fb72..f4782191aab 100644 --- a/theme/afterburner/style/afterburner_menu.css +++ b/theme/afterburner/style/afterburner_menu.css @@ -1,196 +1,199 @@ -/* Custom Menu --------------------------- */ -#custommenu { - width: 100%; - margin: 0; - padding: 0; - clear:both; - height: 30px; - background: #888; - margin:0; -} -#custommenu ul li { - border-right: 1px solid #777; - border-left: 1px solid #999 -} -/* -Dropdown Menu - CSS from DeCaf Theme by Lei Zhang --------------------------------------------------*/ -ul.dropdown span.customitem { - padding:0; - border:0; - width: 100%; -} -ul.dropdown span.customitem { - padding:0; - width: 100%; -} -ul.dropdown li a, -ul.dropdown span.customitem a { - padding:6px 20px; -} -ul.dropdown span.customitem a:hover { - border: 0; -} -#custommenu ul.dropdown ul { - padding:0; - width:auto; -} -#custommenu ul.dropdown ul a { - padding:4px 18px; -} -#custommenu ul.dropdown > li span a { - height:16px; -} -ul.dropdown, -ul.dropdown li, -ul.dropdown ul { - list-style:none; - margin:0; - padding:0; -} -ul.dropdown { - position:relative; - top:0px; - z-index:597; - float:left; - font:13px "Trebuchet MS",Arial,Helvetica,sans-serif; -} -ul.dropdown li { - float:left; - line-height:1.3em; - vertical-align:middle; - background-color:transparent; - color:#fff; - zoom:1 !important; -} -ul.dropdown li.hover, -ul.dropdown li:hover { - position:relative; - z-index:599; - cursor:default; -} -ul.dropdown ul { - visibility:hidden; - position:absolute; - top:100%;z-index:598; - left:0; - right:auto; - margin-top: -1px; - font:100% "Trebuchet MS",Arial,Helvetica,sans-serif; -} -ul.dropdown ul li { - float:none; - background-color: #34637f; - border-width: 1px; - border-style: solid; - border-color: #477C9B #34637f #295770; - padding:0; -} -ul.dropdown ul ul { - top:0; - right:auto; - left:100%; - margin-top:0; - border-top:none; - border-left:none; - font-weight:400; -} -ul.dropdown li:hover > ul { - visibility:visible; -} -ul.dropdown span, -ul.dropdown span a, -ul.dropdown li.clickable-with-children > a { - background-color: #34637f; - width:auto; - padding:2px 6px 4px 20px; - color: #fff; -} -ul.dropdown ul span, -ul.dropdown ul span a, -ul.dropdown ul li.clickable-with-children > a { - background-color:#34637f; - background-image: url([[pix:theme|menu/nav-arrow-right]]); - background-position:100% 50%; - background-repeat:no-repeat; - color: #fff; -} -ul.dropdown ul ul span, -ul.dropdown ul ul span a, -ul.dropdown ul ul li.clickable-with-children > a { - background-color:#34637f; - background-image: url([[pix:theme|menu/nav-arrow-right]]); - background-position:100% 50%; - background-repeat:no-repeat; - color: #fff; -} -ul.dropdown a:link, ul.dropdown a:visited { - color: white; - text-decoration: none; -} -ul.dropdown a:hover { - border:0; - background-color: #fff; - color: #036; -} -ul.dropdown ul ul li { - background-color: #34637f; -} -ul.dropdown ul ul ul li { - background-color: #34637f; -} -ul.dropdown li a, -ul.dropdown span, -ul.dropdown span a { - border: none; - background-color: transparent; -} -ul.dropdown ul li a, -ul.dropdown ul span, -ul.dropdown ul span a { - border: 0; -} -ul.dropdown ul ul li a, -ul.dropdown ul ul span, -ul.dropdown ul ul span a { - border:0 -} -ul.dropdown ul ul ul li a, -ul.dropdown ul ul ul span, -ul.dropdown ul ul ul span a { - border:0; -} -ul.dropdown a,ul.dropdown span{ - display:block; -} -ul.dropdown ul a { - width:166px; - padding:2px 0 4px 5px; -} -ul.dropdown ul a.open:hover { - background-color: #fff; - color:#036; -} -ul.dropdown ul li:hover > span, -ul.dropdown ul li:hover > span a { - background-color:#fff; - background-image:url([[pix:theme|menu/nav-arrowover-right]]); - color: #036; -} -ul.dropdown li.clickable-with-children:hover > a { - background-image:url([[pix:theme|menu/nav-arrowover-right]]); -} -ul.dropdown *.open, -ul.dropdown li:hover > span, -ul.dropdown li:hover > span a { - background-color:#fff; - color: #036; -} -ul.dropdown ul ul *.open, -ul.dropdown ul ul li:hover > span, -ul.dropdown ul ul li:hover > span a { - background-color:#fff; - background-image:url([[pix:theme|menu/nav-arrowover-right]]); - color:#036; +@media screen and (min-width: 768px) { + + /* Custom Menu + -------------------------- */ + #custommenu { + width: 100%; + margin: 0; + padding: 0; + clear:both; + height: 30px; + background: #888; + margin:0; + } + #custommenu ul li { + border-right: 1px solid #777; + border-left: 1px solid #999 + } + /* + Dropdown Menu - CSS from DeCaf Theme by Lei Zhang + -------------------------------------------------*/ + ul.dropdown span.customitem { + padding:0; + border:0; + width: 100%; + } + ul.dropdown span.customitem { + padding:0; + width: 100%; + } + ul.dropdown li a, + ul.dropdown span.customitem a { + padding:6px 20px; + } + ul.dropdown span.customitem a:hover { + border: 0; + } + #custommenu ul.dropdown ul { + padding:0; + width:auto; + } + #custommenu ul.dropdown ul a { + padding:4px 18px; + } + #custommenu ul.dropdown > li span a { + height:16px; + } + ul.dropdown, + ul.dropdown li, + ul.dropdown ul { + list-style:none; + margin:0; + padding:0; + } + ul.dropdown { + position:relative; + top:0px; + z-index:597; + float:left; + font:13px "Trebuchet MS",Arial,Helvetica,sans-serif; + } + ul.dropdown li { + float:left; + line-height:1.3em; + vertical-align:middle; + background-color:transparent; + color:#fff; + zoom:1 !important; + } + ul.dropdown li.hover, + ul.dropdown li:hover { + position:relative; + z-index:599; + cursor:default; + } + ul.dropdown ul { + visibility:hidden; + position:absolute; + top:100%;z-index:598; + left:0; + right:auto; + margin-top: -1px; + font:100% "Trebuchet MS",Arial,Helvetica,sans-serif; + } + ul.dropdown ul li { + float:none; + background-color: #34637f; + border-width: 1px; + border-style: solid; + border-color: #477C9B #34637f #295770; + padding:0; + } + ul.dropdown ul ul { + top:0; + right:auto; + left:100%; + margin-top:0; + border-top:none; + border-left:none; + font-weight:400; + } + ul.dropdown li:hover > ul { + visibility:visible; + } + ul.dropdown span, + ul.dropdown span a, + ul.dropdown li.clickable-with-children > a { + background-color: #34637f; + width:auto; + padding:2px 6px 4px 20px; + color: #fff; + } + ul.dropdown ul span, + ul.dropdown ul span a, + ul.dropdown ul li.clickable-with-children > a { + background-color:#34637f; + background-image: url([[pix:theme|menu/nav-arrow-right]]); + background-position:100% 50%; + background-repeat:no-repeat; + color: #fff; + } + ul.dropdown ul ul span, + ul.dropdown ul ul span a, + ul.dropdown ul ul li.clickable-with-children > a { + background-color:#34637f; + background-image: url([[pix:theme|menu/nav-arrow-right]]); + background-position:100% 50%; + background-repeat:no-repeat; + color: #fff; + } + ul.dropdown a:link, ul.dropdown a:visited { + color: white; + text-decoration: none; + } + ul.dropdown a:hover { + border:0; + background-color: #fff; + color: #036; + } + ul.dropdown ul ul li { + background-color: #34637f; + } + ul.dropdown ul ul ul li { + background-color: #34637f; + } + ul.dropdown li a, + ul.dropdown span, + ul.dropdown span a { + border: none; + background-color: transparent; + } + ul.dropdown ul li a, + ul.dropdown ul span, + ul.dropdown ul span a { + border: 0; + } + ul.dropdown ul ul li a, + ul.dropdown ul ul span, + ul.dropdown ul ul span a { + border:0 + } + ul.dropdown ul ul ul li a, + ul.dropdown ul ul ul span, + ul.dropdown ul ul ul span a { + border:0; + } + ul.dropdown a,ul.dropdown span{ + display:block; + } + ul.dropdown ul a { + width:166px; + padding:2px 0 4px 5px; + } + ul.dropdown ul a.open:hover { + background-color: #fff; + color:#036; + } + ul.dropdown ul li:hover > span, + ul.dropdown ul li:hover > span a { + background-color:#fff; + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + color: #036; + } + ul.dropdown li.clickable-with-children:hover > a { + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + } + ul.dropdown *.open, + ul.dropdown li:hover > span, + ul.dropdown li:hover > span a { + background-color:#fff; + color: #036; + } + ul.dropdown ul ul *.open, + ul.dropdown ul ul li:hover > span, + ul.dropdown ul ul li:hover > span a { + background-color:#fff; + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + color:#036; + } } \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_pagelayout.css b/theme/afterburner/style/afterburner_pagelayout.css index 9fca7d9304c..f3e20c1c3a0 100644 --- a/theme/afterburner/style/afterburner_pagelayout.css +++ b/theme/afterburner/style/afterburner_pagelayout.css @@ -9,7 +9,6 @@ html { body { margin: 0; padding: 0; - min-width: 775px; background: #fff url([[pix:theme|core/bground]]) repeat-x fixed; } #page-wrapper { @@ -34,27 +33,27 @@ body { overflow: hidden; position: relative; width: 100%; - background-color: #eee; /* Right column background colour */ + background-color: #eee; /* Right column background colour */ } #region-main-box { float: left; - right: 25%; + right: 21%; position: relative; width: 100%; - background-color: #fff; /* Center column background colour */ + background-color: #fff; /* Center column background colour */ } #region-pre-box { float: left; - right: 50%; + right: 58%; position: relative; width: 100%; - background-color: #d1e0e7; /* Left column background colour */ + background-color: #d1e0e7; /* Left column background colour */ } #region-main { float: left; overflow: hidden; position: relative; - width: 50%; + width: 58%; left: 100%; background-color: #fff; } @@ -62,15 +61,15 @@ body { float: left; overflow: hidden; position: relative; - width: 25%; - left: 25%; + width: 21%; + left: 21%; } #region-post { float: left; overflow: hidden; position: relative; - width: 25%; - left: 75%; + width: 21%; + left: 79%; } #region-main .region-content { @@ -85,9 +84,9 @@ body { /** SIDE-PRE-ONLY **/ .side-pre-only #region-main-box {right: 0%;} -.side-pre-only #region-pre-box {right: 77%;} -.side-pre-only #region-main {left: 100%; width: 77%;} -.side-pre-only #region-pre {left: 0; width: 23%;} +.side-pre-only #region-pre-box {right: 79%;} +.side-pre-only #region-main {left: 100%; width: 79%;} +.side-pre-only #region-pre {left: 0; width: 21%;} .side-pre-only #region-post {width: 0;} diff --git a/theme/afterburner/style/afterburner_responsive.css b/theme/afterburner/style/afterburner_responsive.css new file mode 100644 index 00000000000..d6119e05d45 --- /dev/null +++ b/theme/afterburner/style/afterburner_responsive.css @@ -0,0 +1,153 @@ +@media screen and (orientation:portrait) and (max-width: 767px) { + /* Custom Menu + -------------------------- */ + + #custommenu ul { + margin: 0; + padding: 0; + list-style-type: none; + overflow: hidden; + } + #custommenu li { + margin: 0; /** Opera hack **/ + } + #custommenu a { + display: block; + color: #fff; + background-color: #888; + width: 98%; + padding: 5px 10px; + text-decoration: none; + border-top: 1px solid #777; + border-bottom: 1px solid #999; + font-weight: bold; + } + #custommenu li li a { + display: block; + color: #fff; + background-color: #34637f; + width: 98%; + padding: 5px 20px; + text-decoration: none; + border-top: 1px solid #477C9B; + border-bottom: 1px solid #295770; + font-weight: normal; + } + #custommenu li li li a { + display: block; + color: #fff; + background-color: #34637f; + width: 98%; + padding: 5px 20px; + text-decoration: none; + border-top: 1px solid #477C9B; + border-bottom: 1px solid #295770; + font-weight: normal; + } + #custommenu a:hover { + background-color: #fff; + color: #036; + } +} + +@media screen and (orientation:portrait) and (min-width: 768px) and (max-width: 799px) { + /* Page Layout + -------------------------*/ + body.has_dock { + margin-left: 3%; + width: 97%; + } + #page-wrapper { + width: 94%; + } + #region-main .region-content { + padding: 0 5px; + } + #region-main-box { + right: 0%; + } + #region-pre-box { + right: 77%; + } + #region-main { + left: 100%; + width: 77%; + } + #region-pre { + left: 0; + width: 23%; + } + #region-post { + left: 0; + width: 23%; + } + #region-post .block .header { + background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; + border-bottom: 1px solid #c3d9e1; + color: #50646d; + } + .headermenu { + top: 10px; + right: 10px; + } +} +@media only screen and (orientation:portrait) and (max-width:767px) { + /* Page Layout + -------------------------*/ + body.has_dock #dock { + display: none; + } + #page-wrapper { + width: 96%; + } + #region-main-box, + .side-pre-only #region-main-box, + .side-post-only #region-main-box { + right: 0; + } + #region-pre-box, + .side-pre-only #region-pre-box, + .side-post-only #region-pre-box { + right: 0; + } + #region-main, + .side-pre-only #region-main, + .side-post-only #region-main { + left: 0; + width: 100%; + } + #region-pre, + .side-pre-only #region-pre, + .side-post-only #region-pre { + left: 0; + width: 100%; + } + #region-post, + .side-pre-only #region-post, + .side-post-only #region-post { + left: 0; + width: 100%; + } + #region-post .block .header { + background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; + border-bottom: 1px solid #c3d9e1; + color:#50646d; + } + #page-header { + height: 100px; + background: #fff; + } + a.logo { + background-size: 75% 75%; + } + .headermenu { + display: none; + } +} +@media screen and (max-width: 320px) { + + a.logo { + background-size: 50% 50%; + } + +} \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_styles.css b/theme/afterburner/style/afterburner_styles.css index 9b883b6de24..b8a42d23626 100644 --- a/theme/afterburner/style/afterburner_styles.css +++ b/theme/afterburner/style/afterburner_styles.css @@ -6,8 +6,8 @@ body { padding: 0; color: #4b4b4b; } -h1,h2,h3,h4,h5,h6,p,ul,ol,dl,input,textarea { - font-family: Helvetica,Arial,sans-serif; +h1, h2, h3, h4, h5, h6, p, ul, ol, dl, input, textarea { + font-family: Helvetica, Arial, sans-serif; } a:link, a:visited { diff --git a/theme/base/style/core.css b/theme/base/style/core.css index d6af0066f9f..1df777cb29c 100644 --- a/theme/base/style/core.css +++ b/theme/base/style/core.css @@ -287,7 +287,7 @@ a.skip:active {position: static;display: block;} .mform .fitem fieldset.fgroup label, .mform .fradio label, .mform fieldset.fdate_selector label, -.mform fieldset.fdate_time_selector label {display:inline; float:none; margin-left:.3em; vertical-align:baseline;} +.mform fieldset.fdate_time_selector label { display: inline; float: none; margin-left: .3em; vertical-align: text-bottom;} .dir-rtl .mform .fcheckbox label, .dir-rtl .mform .fduration label, .dir-rtl .mform .fitem fieldset.fgroup label, @@ -529,6 +529,7 @@ body.tag .managelink {padding: 5px;} .path-backup .mform .grouped_settings .fitem .fitemtitle {width:40%;padding-right:10px;} .path-backup.dir-rtl .mform .grouped_settings .fitem .fitemtitle {width: 60%;} .path-backup .mform .grouped_settings .fitem .felement {width:50%;} +.path-backup .mform .grouped_settings .fitem.backup_selector .felement {width:100%;} .path-backup.dir-rtl .mform .grouped_settings .fitem .felement {width: 99%;} .path-backup .mform .grouped_settings.section_level .include_setting {width:50%;margin:0;float:left;clear:left;font-weight:bold;} .path-backup.dir-rtl .mform .grouped_settings.section_level .include_setting {float: right; clear: right;} @@ -1382,30 +1383,39 @@ table.collection td { border-width: 1px; border-style: solid; border-color: #CCC table.collection .r1 { background-color: #FFFFFF; } table.collection .r0 { background-color: #F6F6F6; } table.collection ul { margin: 0.5em 0.5em 0.5em 2em; } +.dir-rtl table.collection ul { margin: 0.5em 2em 0.5em 0.5em; } #page-badges-view table.collection .badgeimage, #page-badges-index table.collection .status { width: 15%; text-align: center; vertical-align: middle; } #page-badges-view table.collection .awards, #page-badges-index table.collection .awards { width: 10%; text-align: center; vertical-align: middle; } #page-badges-view table.collection .description { width: 25%; text-align: left; } +#page-badges-view.dir-rtl table.collection .description { width: 25%; text-align: right; } table.collection .name { text-align: left; vertical-align: middle; } +.dir-rtl table.collection .name { text-align: right; vertical-align: middle; } #page-badges-view table.collection .criteria { width: 35%; text-align: left; vertical-align: top; } +#page-badges-view.dir-rtl table.collection .criteria { text-align: right; } #page-badges-index table.collection .criteria { width: 40%; text-align: left; vertical-align: top; } +#page-badges-index.dir-rtl table.collection .criteria { text-align: right; } #page-badges-index table.collection .actions { width: 11em; text-align: center; vertical-align: middle; } a.criteria-action { padding: 0px 3px; float: right; } +.dir-rtl a.criteria-action { float: left; } table.issuedbadgebox { width: 750px; background-color: white; } table.badgeissuedimage { width: 150px; text-align: center; } table.badgeissuedinfo { width: 600px; } table.badgeissuedinfo .bvalue { text-align: left; vertical-align: middle; } +.dir-rtl table.badgeissuedinfo .bvalue { text-align: right; } table.badgeissuedinfo .bfield { width: 125px; text-align: left; font-style: italic; } +.dir-rtl table.badgeissuedinfo .bfield { text-align: right; } ul.badges { margin: 0; list-style: none; } .badges li { position: relative; display: inline-block; padding-bottom: 2em; text-align: center; vertical-align: top; width: 150px; } .badges li .badge-name { display: block; padding: 5px; } .badges li > img { position: absolute; } .badges li .badge-image { width: 90px; height: 90px; left: 10px; top: 0px; z-index: 1; } +.dir-rtl .badges li .badge-image { right: 10px; } .badges li .badge-actions { position: relative; } div.badge { position: relative; display: block; } @@ -1428,7 +1438,10 @@ div.badge .expireimage { width: 100px; height: 100px; left: 20px; top: 0px; } .statusbox.active { background-color: #D9F991; } .statusbox.inactive { background-color: #FFEBA8; } .activatebadge { margin: 0px; text-align: left; vertical-align: middle; } +.dir-rtl .activatebadge { text-align: right; } .addcourse { float: right; } +.dir-rtl .addcourse { float: left; } +img#persona_signin { cursor: pointer; } /** * The date selector popup. diff --git a/theme/base/style/filemanager.css b/theme/base/style/filemanager.css index 43211567232..9630a828468 100644 --- a/theme/base/style/filemanager.css +++ b/theme/base/style/filemanager.css @@ -305,8 +305,8 @@ a.ygtvspacer:hover {color: transparent;text-decoration: none;} /* * Icon view (File Manager only) */ -.fp-iconview .fp-reficons1 {position:absolute;height:100%;width:100%;top:0;left:0;z-index:1000;} -.fp-iconview .fp-reficons2 {position:absolute;height:100%;width:100%;top:0;left:0;z-index:1001;} +.fp-iconview .fp-reficons1 {position:absolute;height:100%;width:100%;top:0;left:0;} +.fp-iconview .fp-reficons2 {position:absolute;height:100%;width:100%;top:0;left:0;} .fp-iconview .fp-file.fp-hasreferences .fp-reficons1 {background: url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right;} .fp-iconview .fp-file.fp-isreference .fp-reficons2 {background: url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left;} diff --git a/theme/bootstrapbase/less/moodle/admin.less b/theme/bootstrapbase/less/moodle/admin.less index ab104173bb5..db5ae7054bb 100644 --- a/theme/bootstrapbase/less/moodle/admin.less +++ b/theme/bootstrapbase/less/moodle/admin.less @@ -208,6 +208,7 @@ img.iconsmall { #page-admin-index .releasenoteslink, #page-admin-index .adminwarning, #page-admin-index .maturitywarning, +#page-admin-index .testsitewarning, #page-admin-index .maturityinfo { .alert; width: 60%; @@ -215,6 +216,7 @@ img.iconsmall { margin: auto; } #page-admin-index .maturitywarning, +#page-admin-index .testsitewarning, #page-admin-index .adminwarning.maturityinfo.maturity50 { .alert-error; } diff --git a/theme/bootstrapbase/less/moodle/core.less b/theme/bootstrapbase/less/moodle/core.less index 020c520865a..6240e8c5609 100644 --- a/theme/bootstrapbase/less/moodle/core.less +++ b/theme/bootstrapbase/less/moodle/core.less @@ -1881,6 +1881,12 @@ table.badgeissuedinfo .bfield { text-align: left; font-style: italic; } +.dir-rtl { + table.badgeissuedinfo .bvalue, + table.badgeissuedinfo .bfield { + text-align: right; + } +} ul.badges { margin: 0; list-style: none; @@ -1937,6 +1943,9 @@ div.badge .expireimage { .notconnected { color: @errorText; } +.connecting { + color: @warningText; +} #page-badges-award .recipienttable tr td { vertical-align: top; } @@ -1964,6 +1973,12 @@ div.badge .expireimage { text-align: left; vertical-align: middle; } +.dir-rtl .activatebadge { + text-align: right; +} +img#persona_signin { + cursor: pointer; +} .addcourse { float: right; } diff --git a/theme/bootstrapbase/less/moodle/filemanager.less b/theme/bootstrapbase/less/moodle/filemanager.less index df6230a26da..9851e6298a3 100644 --- a/theme/bootstrapbase/less/moodle/filemanager.less +++ b/theme/bootstrapbase/less/moodle/filemanager.less @@ -874,7 +874,6 @@ a.ygtvspacer:hover { width: 100%; top: 0; left: 0; - z-index: 1000; } .fp-iconview .fp-reficons2 { position: absolute; @@ -882,7 +881,6 @@ a.ygtvspacer:hover { width: 100%; top: 0; left: 0; - z-index: 1001; } .fp-iconview .fp-file.fp-hasreferences .fp-reficons1 { background: url('[[pix:theme|fp/link]]') no-repeat; diff --git a/theme/bootstrapbase/style/moodle.css b/theme/bootstrapbase/style/moodle.css index 0a2095a01f7..8d367a440e4 100644 --- a/theme/bootstrapbase/style/moodle.css +++ b/theme/bootstrapbase/style/moodle.css @@ -1,4 +1,4 @@ -.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post{display:none}.empty-region-side-post #region-bs-main-and-pre.span9{width:100%}.empty-region-side-pre #region-main{float:none;width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8{width:74.46808510638297%;*width:74.41489361702126%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.404255319148934%;*width:23.351063829787233%}.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8{width:100%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{padding:0;margin:0;list-style:none}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.collapsible-actions{display:none;text-align:right}.dir-rtl .collapsible-actions{text-align:left}.jsenabled .collapsible-actions{display:block}.collapsible-actions .collapseexpand{padding-left:20px;background:url([[pix:t/collapsed]]) 2px center no-repeat}.dir-rtl .collapsible-actions .collapseexpand{padding-right:20px;padding-left:0;background:url([[pix:t/collapsed_rtl]]) right center no-repeat}.collapsible-actions .collapse-all,.dir-rtl .collapsible-actions .collapse-all{background-image:url([[pix:t/expanded]])}.yui-overlay .yui-widget-bd{position:relative;top:0;left:0;z-index:1;padding:2px 5px;color:#000;background-color:#ffee69;border:1px solid #a6982b;border-top-color:#d4c237}.clearer{display:block;height:1px;padding:0;margin:0;clear:both;background:transparent;border-width:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage,.headingblock{font-weight:bold}img.resize{width:1em;height:1em}.block img.resize,.breadcrumb img.resize{width:.8em;height:.9em}img.icon{width:16px;height:16px;padding-right:6px;vertical-align:text-bottom}.dir-rtl img.icon{padding-right:0;padding-left:6px}img.iconsmall{width:12px;height:12px;margin-right:3px;vertical-align:middle}img.iconhelp,.helplink img{width:16px;height:16px;padding-left:3px;vertical-align:text-bottom}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{width:24px;height:24px;vertical-align:middle}img.iconsort{padding-left:.3em;margin-bottom:.15em;vertical-align:text-bottom}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{width:50px;height:17px;vertical-align:middle}img.iconkbhelp{width:49px;height:17px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-right:0;padding-left:3px}.boxaligncenter{margin-right:auto;margin-left:auto}.boxalignright{margin-right:0;margin-left:auto}.boxalignleft{margin-right:auto;margin-left:0}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-right:auto;margin-left:auto}.flexible th{white-space:nowrap}table.flexible .emptyrow{display:none}img.emoticon{width:15px;height:15px;vertical-align:middle}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{margin:0 .3em;vertical-align:text-bottom}.no-overflow{padding-bottom:1px;overflow:auto}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-size:1em;font-weight:normal}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{padding-right:4px;text-align:right}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{width:16px;height:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{width:90%;padding:0;margin:0}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{padding:10px;margin:5px;text-align:center}.loginbox .loginpanel .desc{padding:0;margin:0;margin-top:15px;margin-bottom:5px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-right:0;margin-left:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:rtl}.dir-rtl .loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:ltr}.loginbox .loginform .form-input{float:right;width:55%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{display:block;float:left;width:48%;min-height:30px;padding:0;padding-bottom:2000px;margin:0;margin-bottom:-2000px;margin-left:2.76243%;border:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.loginbox .potentialidp .smallicon{margin:0 .3em;vertical-align:text-bottom}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{display:none;padding:0;margin:0;font-size:12px}.comment-ctrl h5{padding:5px;margin:0}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{padding:0;margin:0;overflow:auto;font-size:11px;list-style:none}.comment-list li{position:relative;padding:.3em;margin:2px;margin-bottom:5px;clear:both;list-style:none}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{float:left;width:20px}.dir-rtl .comment-message .picture{float:right}.comment-message .text{padding:0;margin:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;right:auto;left:0;margin:.3em}.comment-delete-confirm{width:5em;padding:2px;text-align:center;background:#eee}.comment-container{float:left;margin:4px}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}#page-tag-coursetags_edit .coursetag_edit_centered{position:relative;width:600px;margin:20px auto}#page-tag-coursetags_edit .coursetag_edit_row{clear:both}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_left{float:left;width:50%;text-align:right}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_right{margin-left:50%}#page-tag-coursetags_edit .coursetag_edit_input3{display:none}#page-tag-coursetags_more .coursetag_more_large{font-size:120%}#page-tag-coursetags_more .coursetag_more_small{font-size:80%}#page-tag-coursetags_more .coursetag_more_link{font-size:80%}#tag-description,#tag-blogs{width:100%}#tag-management-box{margin-bottom:10px;line-height:20px}#tag-user-table{width:100%;padding:3px;clear:both}#tag-user-table{*zoom:1}#tag-user-table:before,#tag-user-table:after{display:table;line-height:0;content:""}#tag-user-table:after{clear:both}img.user-image{width:100px;height:100px}#small-tag-cloud-box{width:300px;margin:0 auto}#big-tag-cloud-box{float:none;width:600px;margin:0 auto}ul#tag-cloud-list{padding:5px;margin:0;list-style:none}ul#tag-cloud-list li{display:inline;margin:0;list-style-type:none}#tag-search-box{margin:10px auto;text-align:center}#tag-search-results-container{width:100%;padding:0}#tag-search-results{display:block;float:left;width:60%;padding:0;margin:15px 20% 0 20%}#tag-search-results li{float:left;width:30%;padding-right:1%;padding-left:1%;line-height:20px;text-align:left;list-style:none}span.flagged-tag,span.flagged-tag a{color:#b94a48}table#tag-management-list{width:100%;text-align:left}table#tag-management-list td,table#tag-management-list th{padding:4px;text-align:left;vertical-align:middle}.tag-management-form{text-align:center}#relatedtags-autocomplete-container{width:100%;min-height:4.6em;margin-right:auto;margin-left:auto}#relatedtags-autocomplete{position:relative;display:block;width:60%;margin-right:auto;margin-left:auto}#relatedtags-autocomplete .yui-ac-content{position:absolute;left:20%;z-index:9050;width:420px;overflow:hidden;background:#fff;border:1px solid #404040}#relatedtags-autocomplete .ysearchquery{position:absolute;right:10px;z-index:10;color:#808080}#relatedtags-autocomplete .yui-ac-shadow{position:absolute;z-index:9049;width:100%;margin:.3em;background:#a0a0a0}#relatedtags-autocomplete ul{width:100%;padding:0;margin:0;list-style-type:none}#relatedtags-autocomplete li{padding:0 5px;white-space:nowrap;cursor:default}#relatedtags-autocomplete li.yui-ac-highlight{background:#ffc}h2.tag-heading,div#tag-description,div#tag-blogs,body.tag .managelink{padding:5px}.tag_cloud .s20{font-size:1.5em;font-weight:bold}.tag_cloud .s19{font-size:1.5em}.tag_cloud .s18{font-size:1.4em;font-weight:bold}.tag_cloud .s17{font-size:1.4em}.tag_cloud .s16{font-size:1.3em;font-weight:bold}.tag_cloud .s15{font-size:1.3em}.tag_cloud .s14{font-size:1.2em;font-weight:bold}.tag_cloud .s13{font-size:1.2em}.tag_cloud .s12,.tag_cloud .s11{font-size:1.1em;font-weight:bold}.tag_cloud .s10,.tag_cloud .s9{font-size:1.1em}.tag_cloud .s8,.tag_cloud .s7{font-size:1em;font-weight:bold}.tag_cloud .s6,.tag_cloud .s5{font-size:1em}.tag_cloud .s4,.tag_cloud .s3{font-size:.9em;font-weight:bold}.tag_cloud .s2,.tag_cloud .s1{font-size:.9em}.tag_cloud .s0{font-size:.8em}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{display:none;background-color:#FFF;border:1px solid #000}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-position:100%;background-repeat:no-repeat}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{padding-right:16px;white-space:nowrap}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;z-index:1010;display:none;margin:2px -3px;margin-left:10px;border-width:0}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-base .moodle-dialogue-fullscreen{position:fixed;top:0;right:0;bottom:-50px;left:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .closebutton{width:28px;height:16px;background-size:100%}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{position:absolute;top:0;right:0;bottom:50px;left:0;margin:0;overflow:auto;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}a.disabled:hover,a.disabled{font-style:italic;color:#808080;text-decoration:none;cursor:default}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:.2em;margin-left:40%}.section .activity.modtype_label.label{padding:.2em;font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{cursor:pointer;background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;clear:both;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;z-index:1000;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;z-index:1001;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! +.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post{display:none}.empty-region-side-post #region-bs-main-and-pre.span9{width:100%}.empty-region-side-pre #region-main{float:none;width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8{width:74.46808510638297%;*width:74.41489361702126%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.404255319148934%;*width:23.351063829787233%}.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8{width:100%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{padding:0;margin:0;list-style:none}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.collapsible-actions{display:none;text-align:right}.dir-rtl .collapsible-actions{text-align:left}.jsenabled .collapsible-actions{display:block}.collapsible-actions .collapseexpand{padding-left:20px;background:url([[pix:t/collapsed]]) 2px center no-repeat}.dir-rtl .collapsible-actions .collapseexpand{padding-right:20px;padding-left:0;background:url([[pix:t/collapsed_rtl]]) right center no-repeat}.collapsible-actions .collapse-all,.dir-rtl .collapsible-actions .collapse-all{background-image:url([[pix:t/expanded]])}.yui-overlay .yui-widget-bd{position:relative;top:0;left:0;z-index:1;padding:2px 5px;color:#000;background-color:#ffee69;border:1px solid #a6982b;border-top-color:#d4c237}.clearer{display:block;height:1px;padding:0;margin:0;clear:both;background:transparent;border-width:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage,.headingblock{font-weight:bold}img.resize{width:1em;height:1em}.block img.resize,.breadcrumb img.resize{width:.8em;height:.9em}img.icon{width:16px;height:16px;padding-right:6px;vertical-align:text-bottom}.dir-rtl img.icon{padding-right:0;padding-left:6px}img.iconsmall{width:12px;height:12px;margin-right:3px;vertical-align:middle}img.iconhelp,.helplink img{width:16px;height:16px;padding-left:3px;vertical-align:text-bottom}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{width:24px;height:24px;vertical-align:middle}img.iconsort{padding-left:.3em;margin-bottom:.15em;vertical-align:text-bottom}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{width:50px;height:17px;vertical-align:middle}img.iconkbhelp{width:49px;height:17px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-right:0;padding-left:3px}.boxaligncenter{margin-right:auto;margin-left:auto}.boxalignright{margin-right:0;margin-left:auto}.boxalignleft{margin-right:auto;margin-left:0}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-right:auto;margin-left:auto}.flexible th{white-space:nowrap}table.flexible .emptyrow{display:none}img.emoticon{width:15px;height:15px;vertical-align:middle}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{margin:0 .3em;vertical-align:text-bottom}.no-overflow{padding-bottom:1px;overflow:auto}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-size:1em;font-weight:normal}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{padding-right:4px;text-align:right}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{width:16px;height:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{width:90%;padding:0;margin:0}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{padding:10px;margin:5px;text-align:center}.loginbox .loginpanel .desc{padding:0;margin:0;margin-top:15px;margin-bottom:5px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-right:0;margin-left:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:rtl}.dir-rtl .loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:ltr}.loginbox .loginform .form-input{float:right;width:55%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{display:block;float:left;width:48%;min-height:30px;padding:0;padding-bottom:2000px;margin:0;margin-bottom:-2000px;margin-left:2.76243%;border:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.loginbox .potentialidp .smallicon{margin:0 .3em;vertical-align:text-bottom}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{display:none;padding:0;margin:0;font-size:12px}.comment-ctrl h5{padding:5px;margin:0}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{padding:0;margin:0;overflow:auto;font-size:11px;list-style:none}.comment-list li{position:relative;padding:.3em;margin:2px;margin-bottom:5px;clear:both;list-style:none}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{float:left;width:20px}.dir-rtl .comment-message .picture{float:right}.comment-message .text{padding:0;margin:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;right:auto;left:0;margin:.3em}.comment-delete-confirm{width:5em;padding:2px;text-align:center;background:#eee}.comment-container{float:left;margin:4px}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}#page-tag-coursetags_edit .coursetag_edit_centered{position:relative;width:600px;margin:20px auto}#page-tag-coursetags_edit .coursetag_edit_row{clear:both}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_left{float:left;width:50%;text-align:right}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_right{margin-left:50%}#page-tag-coursetags_edit .coursetag_edit_input3{display:none}#page-tag-coursetags_more .coursetag_more_large{font-size:120%}#page-tag-coursetags_more .coursetag_more_small{font-size:80%}#page-tag-coursetags_more .coursetag_more_link{font-size:80%}#tag-description,#tag-blogs{width:100%}#tag-management-box{margin-bottom:10px;line-height:20px}#tag-user-table{width:100%;padding:3px;clear:both}#tag-user-table{*zoom:1}#tag-user-table:before,#tag-user-table:after{display:table;line-height:0;content:""}#tag-user-table:after{clear:both}img.user-image{width:100px;height:100px}#small-tag-cloud-box{width:300px;margin:0 auto}#big-tag-cloud-box{float:none;width:600px;margin:0 auto}ul#tag-cloud-list{padding:5px;margin:0;list-style:none}ul#tag-cloud-list li{display:inline;margin:0;list-style-type:none}#tag-search-box{margin:10px auto;text-align:center}#tag-search-results-container{width:100%;padding:0}#tag-search-results{display:block;float:left;width:60%;padding:0;margin:15px 20% 0 20%}#tag-search-results li{float:left;width:30%;padding-right:1%;padding-left:1%;line-height:20px;text-align:left;list-style:none}span.flagged-tag,span.flagged-tag a{color:#b94a48}table#tag-management-list{width:100%;text-align:left}table#tag-management-list td,table#tag-management-list th{padding:4px;text-align:left;vertical-align:middle}.tag-management-form{text-align:center}#relatedtags-autocomplete-container{width:100%;min-height:4.6em;margin-right:auto;margin-left:auto}#relatedtags-autocomplete{position:relative;display:block;width:60%;margin-right:auto;margin-left:auto}#relatedtags-autocomplete .yui-ac-content{position:absolute;left:20%;z-index:9050;width:420px;overflow:hidden;background:#fff;border:1px solid #404040}#relatedtags-autocomplete .ysearchquery{position:absolute;right:10px;z-index:10;color:#808080}#relatedtags-autocomplete .yui-ac-shadow{position:absolute;z-index:9049;width:100%;margin:.3em;background:#a0a0a0}#relatedtags-autocomplete ul{width:100%;padding:0;margin:0;list-style-type:none}#relatedtags-autocomplete li{padding:0 5px;white-space:nowrap;cursor:default}#relatedtags-autocomplete li.yui-ac-highlight{background:#ffc}h2.tag-heading,div#tag-description,div#tag-blogs,body.tag .managelink{padding:5px}.tag_cloud .s20{font-size:1.5em;font-weight:bold}.tag_cloud .s19{font-size:1.5em}.tag_cloud .s18{font-size:1.4em;font-weight:bold}.tag_cloud .s17{font-size:1.4em}.tag_cloud .s16{font-size:1.3em;font-weight:bold}.tag_cloud .s15{font-size:1.3em}.tag_cloud .s14{font-size:1.2em;font-weight:bold}.tag_cloud .s13{font-size:1.2em}.tag_cloud .s12,.tag_cloud .s11{font-size:1.1em;font-weight:bold}.tag_cloud .s10,.tag_cloud .s9{font-size:1.1em}.tag_cloud .s8,.tag_cloud .s7{font-size:1em;font-weight:bold}.tag_cloud .s6,.tag_cloud .s5{font-size:1em}.tag_cloud .s4,.tag_cloud .s3{font-size:.9em;font-weight:bold}.tag_cloud .s2,.tag_cloud .s1{font-size:.9em}.tag_cloud .s0{font-size:.8em}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{display:none;background-color:#FFF;border:1px solid #000}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-position:100%;background-repeat:no-repeat}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{padding-right:16px;white-space:nowrap}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;z-index:1010;display:none;margin:2px -3px;margin-left:10px;border-width:0}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-base .moodle-dialogue-fullscreen{position:fixed;top:0;right:0;bottom:-50px;left:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .closebutton{width:28px;height:16px;background-size:100%}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{position:absolute;top:0;right:0;bottom:50px;left:0;margin:0;overflow:auto;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}.dir-rtl table.badgeissuedinfo .bvalue,.dir-rtl table.badgeissuedinfo .bfield{text-align:right}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}.connecting{color:#c09853}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}.dir-rtl .activatebadge{text-align:right}img#persona_signin{cursor:pointer}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}a.disabled:hover,a.disabled{font-style:italic;color:#808080;text-decoration:none;cursor:default}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .testsitewarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .testsitewarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:.2em;margin-left:40%}.section .activity.modtype_label.label{padding:.2em;font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{cursor:pointer;background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;clear:both;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! * Bootstrap v2.3.0 * * Copyright 2012 Twitter, Inc diff --git a/theme/mymobile/renderers.php b/theme/mymobile/renderers.php index 2969e972d2e..fa812698944 100644 --- a/theme/mymobile/renderers.php +++ b/theme/mymobile/renderers.php @@ -307,8 +307,8 @@ class theme_mymobile_core_renderer extends core_renderer { $course = $this->page->course; - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $fullname = fullname($realuser, true); $realuserinfo = " [wwwroot/course/loginas.php?id=$course->id&sesskey=".sesskey()."\">$fullname] "; } else { @@ -386,8 +386,8 @@ class theme_mymobile_core_renderer extends core_renderer { $loginpage = ((string)$this->page->url === get_login_url()); $course = $this->page->course; - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $fullname = fullname($realuser, true); $realuserinfo = ' [$fullname] '; } else { @@ -628,7 +628,7 @@ class theme_mymobile_core_renderer extends core_renderer { public function header() { global $USER, $CFG; - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { $this->page->add_body_class('userloggedinas'); } diff --git a/theme/standard/style/admin.css b/theme/standard/style/admin.css index 38bb3ee495a..05bc65924e9 100644 --- a/theme/standard/style/admin.css +++ b/theme/standard/style/admin.css @@ -19,7 +19,8 @@ #page-admin-index .adminerror, #page-admin-index .adminwarning {margin:20px;} -#page-admin-index .maturitywarning {margin-left:auto;margin-right:auto;text-align:center;width:60%;background-color:#ffd3d9;} +#page-admin-index .maturitywarning, +#page-admin-index .testsitewarning {margin-left:auto;margin-right:auto;text-align:center;width:60%;background-color:#ffd3d9;} #page-admin-index .releasenoteslink {margin-left:auto;margin-right:auto;text-align:center;width:60%;} #page-admin-enrol .enrolplugintable {width:700px;margin:1em auto;} @@ -149,4 +150,4 @@ table.flexible .r1 {background-color: #FAFAFA;} #page-admin-modules.dir-rtl .generaltable th.c0, #page-admin-modules.dir-rtl .generaltable td.c0, #page-admin-auth.dir-rtl .generaltable th.c0, -#page-admin-auth.dir-rtl .generaltable td.c0 {text-align: right;} \ No newline at end of file +#page-admin-auth.dir-rtl .generaltable td.c0 {text-align: right;} diff --git a/theme/yui_image.php b/theme/yui_image.php index f7cf0abde96..8d2e97a131c 100644 --- a/theme/yui_image.php +++ b/theme/yui_image.php @@ -63,7 +63,7 @@ if ($version == 'moodle' && count($parts) >= 3) { } else if (count($parts) == 1 && ($version == $CFG->yui3version || $version == $CFG->yui2version)) { list($image) = $parts; if ($version == $CFG->yui3version) { - $imagepath = "$CFG->dirroot/lib/yuilib/$CFG->yui3version/build/assets/skins/sam/$image"; + $imagepath = "$CFG->dirroot/lib/yuilib/$CFG->yui3version/assets/skins/sam/$image"; } else { $imagepath = "$CFG->dirroot/lib/yuilib/2in3/$CFG->yui2version/build/assets/skins/sam/$image"; } diff --git a/user/editadvanced.php b/user/editadvanced.php index 9728bbdcc81..924ebb1a12f 100644 --- a/user/editadvanced.php +++ b/user/editadvanced.php @@ -200,7 +200,7 @@ if ($usernew = $userform->get_data()) { // force logout if user just suspended if (isset($usernew->suspended) and $usernew->suspended and !$user->suspended) { - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); } } @@ -255,7 +255,7 @@ if ($usernew = $userform->get_data()) { redirect("$CFG->wwwroot/user/view.php?id=$USER->id&course=$course->id"); } } else { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. redirect("$CFG->wwwroot/$CFG->admin/user.php"); } //never reached diff --git a/user/index.php b/user/index.php index 8130981ae6f..c6029b1cee1 100644 --- a/user/index.php +++ b/user/index.php @@ -673,7 +673,7 @@ $links[] = html_writer::link(new moodle_url('/course/user.php?id='. $course->id .'&user='. $user->id), get_string('activity')); } - if ($USER->id != $user->id && !session_is_loggedinas() && has_capability('moodle/user:loginas', $context) && !is_siteadmin($user->id)) { + if ($USER->id != $user->id && !\core\session\manager::is_loggedinas() && has_capability('moodle/user:loginas', $context) && !is_siteadmin($user->id)) { $links[] = html_writer::link(new moodle_url('/course/loginas.php?id='. $course->id .'&user='. $user->id .'&sesskey='. sesskey()), get_string('loginas')); } diff --git a/user/portfolio.php b/user/portfolio.php index a84935ce458..e8b0b391371 100644 --- a/user/portfolio.php +++ b/user/portfolio.php @@ -29,6 +29,7 @@ if (empty($CFG->enableportfolios)) { print_error('disabled', 'portfolio'); } +require_once($CFG->libdir . '/pluginlib.php'); require_once($CFG->libdir . '/portfoliolib.php'); require_once($CFG->libdir . '/portfolio/forms.php'); @@ -57,9 +58,6 @@ $display = true; // set this to false in the conditions to stop processing require_login($course, false); -// Purge all caches related to portfolio administration. -cache::make('core', 'plugininfo_portfolio')->purge(); - $PAGE->set_url($url); $PAGE->set_context(context_user::instance($user->id)); $PAGE->set_title("$course->fullname: $fullname: $strportfolios"); @@ -84,6 +82,7 @@ if (!empty($config)) { $success = $instance->set_user_config($fromform, $USER->id); //$success = $success && $instance->save(); if ($success) { + plugin_manager::reset_caches(); redirect($baseurl, get_string('instancesaved', 'portfolio'), 3); } else { print_error('instancenotsaved', 'portfolio', $baseurl); @@ -100,6 +99,7 @@ if (!empty($config)) { } else if (!empty($hide)) { $instance = portfolio_instance($hide); $instance->set_user_config(array('visible' => !$instance->get_user_config('visible', $USER->id)), $USER->id); + plugin_manager::reset_caches(); } if ($display) { diff --git a/version.php b/version.php index 9474abd67b3..14acbaabe85 100644 --- a/version.php +++ b/version.php @@ -29,11 +29,11 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2013092000.00; // YYYYMMDD = weekly release date of this DEV branch. +$version = 2013092700.00; // YYYYMMDD = weekly release date of this DEV branch. // RR = release increments - 00 in DEV branches. // .XX = incremental changes. -$release = '2.6dev (Build: 20130920)'; // Human-friendly version name +$release = '2.6dev (Build: 20130927)'; // Human-friendly version name $branch = '26'; // This version's branch. $maturity = MATURITY_ALPHA; // This version's maturity level. diff --git a/webservice/lib.php b/webservice/lib.php index 8e1898f9327..1723d723740 100644 --- a/webservice/lib.php +++ b/webservice/lib.php @@ -90,12 +90,11 @@ class webservice { enrol_check_plugins($user); // setup user session to check capability - session_set_user($user); + \core\session\manager::set_user($user); //assumes that if sid is set then there must be a valid associated session no matter the token type if ($token->sid) { - $session = session_get_instance(); - if (!$session->session_exists($token->sid)) { + if (!\core\session\manager::session_exists($token->sid)) { $DB->delete_records('external_tokens', array('sid' => $token->sid)); throw new webservice_access_exception('Invalid session based token - session not found or expired'); } @@ -905,7 +904,7 @@ abstract class webservice_server implements webservice_server_interface { // now fake user login, the session is completely empty too enrol_check_plugins($user); - session_set_user($user); + \core\session\manager::set_user($user); $this->userid = $user->id; if ($this->authmethod != WEBSERVICE_AUTHMETHOD_SESSION_TOKEN && !has_capability("webservice/$this->wsname:use", $this->restricted_context)) { @@ -936,8 +935,7 @@ abstract class webservice_server implements webservice_server_interface { } if ($token->sid){//assumes that if sid is set then there must be a valid associated session no matter the token type - $session = session_get_instance(); - if (!$session->session_exists($token->sid)){ + if (!\core\session\manager::session_exists($token->sid)){ $DB->delete_records('external_tokens', array('sid'=>$token->sid)); throw new webservice_access_exception('Invalid session based token - session not found or expired'); }