diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown index 603333e601e7a..7e73bf649c8ac 100644 --- a/CHANGELOG.markdown +++ b/CHANGELOG.markdown @@ -1,3 +1,52 @@ +Update as of 10/09/2012 +====================== +* Performance Testing Framework improvements: + * Added ability to specify fixtures per scenario + * Implemented Magento application cleanup between scenarios + * Implemented support of PHP scenarios. The framework distinguishes type of the scenario by its extension: `jmx` or `php` + * Added ability to skip warm-up for a certain scenario + * JMeter scenarios are run with `jmeter` command instead of `java -jar ApacheJmeter.jar`. It's impossible to specify path to JMeter tool now, it should be accessible from command line as `jmeter` +* Implemented fixture for Performance Tests with 80k products distributed among 200 categories +* Tax rule management UI simplified: + * Added `Jeditable` jQuery library + * Added multiselect fields for customer tax class, product tax class and tax rate + * Added ability to add/edit Tax Rate directly from Tax Rule page +* Simplified product creation workflow: + * Added product types dropdown to "Add Product" button. Default attribute set is used for product creation + * "Add Product" button opens form for Simple product with Default attribute set + * Attribute set can be changed from product creation form +* Implemented auto-generation of product SKU and meta fields. The templates can be configured in `System -> Configuration -> Catalog -> Catalog -> Product Fields Auto-Generation` +* Added ability to unassign system attribute from an attribute set, if it's not "Minimal" one +* Specified UI IDs for base Backend elements. UI ID is represented as HTML "id" attribute intended to identify certain HTML element +* Refactored `Catalog_Model_Product_Indexer_Flat::matchEvent()` method - reduced cyclomatic complexity +* Updated DB structure to make possible to store Themes' and Widgets' layout updates +* Migration to jQuery: + * Replaced Ajax, Dialog and Template mechanisms with jQuery analogs + * Added jQuery loader for translation process + * Migrated Inline-Translator to jQuery +* JavaScript improvements: + * Implemented `editTrigger` jQuery widget intended to display "Edit" button for elements it is attached to +* Fixes: + * Incorrect title for "Currency Symbols" page on Backend + * References to website, store and store view aren't displayed on Backend, if Single Store mode is disabled + * "Store" column and dropdown are displayed on `System -> Import/Export -> DataFlow-Profiles` page, when Single Store mode is enabled + * Options are absent for `'tax_class_id'` product attribute + * No exception/error message is produced, when attempting to commit/rollback asymmetric DB transaction + * Links are not copied during downloadable product duplication + * PayPal tab is absent in `System -> Configuration -> Sales` section + * "Edit" link in wishlist opens Product View page instead of "Configure Product" page + * Default value for a product attribute is not saved + * Escaped HTML blocks with `Mage_Core_Helper_Data::jsonEncode`, where necessary + * Impossible to add new Dataflow profile + * Impossible to specify default option for new product attribute with "dropdown" type + * Unable to send the email when creating new invoice/shipment/credit memo + * "Segmentation Fault" in Integration tests +* GitHub requests: + * [#36](https://github.com/magento/magento2/pull/36) -- added ability to force set of "Include Tax" option for catalog prices + * [#63](https://github.com/magento/magento2/pull/63) -- removed obsolete "args" node in event subscribers + * [#64](https://github.com/magento/magento2/pull/64) -- fixed EAV text attribute validation for "0" value + * [#72](https://github.com/magento/magento2/pull/72) -- fixed collecting shipping totals for case, when previous invoice value is 0 + Update as of 9/27/2012 ====================== * Refactoring Magento 2 to use jQuery instead of Prototype: diff --git a/app/code/core/Mage/Adminhtml/Block/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Abstract.php index 03de58260cccd..505c046bd5dd7 100644 --- a/app/code/core/Mage/Adminhtml/Block/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Abstract.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Abstract extends Mage_Backend_Block_Abstract { diff --git a/app/code/core/Mage/Adminhtml/Block/Api/Buttons.php b/app/code/core/Mage/Adminhtml/Block/Api/Buttons.php index 4211fcf00ca2c..d519b6f5c60ba 100644 --- a/app/code/core/Mage/Adminhtml/Block/Api/Buttons.php +++ b/app/code/core/Mage/Adminhtml/Block/Api/Buttons.php @@ -35,40 +35,28 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('backButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Back'), - 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', - 'class' => 'back' - )) - ); + $this->addChild('backButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Back'), + 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', + 'class' => 'back' + )); - $this->setChild('resetButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Reset'), - 'onclick' => 'window.location.reload()' - )) - ); + $this->addChild('resetButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Reset'), + 'onclick' => 'window.location.reload()' + )); - $this->setChild('saveButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Role'), - 'onclick' => 'roleForm.submit();return false;', - 'class' => 'save' - )) - ); + $this->addChild('saveButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Role'), + 'onclick' => 'roleForm.submit();return false;', + 'class' => 'save' + )); - $this->setChild('deleteButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Delete Role'), - 'onclick' => 'deleteConfirm(\'' . Mage::helper('Mage_Adminhtml_Helper_Data')->__('Are you sure you want to do this?') . '\', \'' . $this->getUrl('*/*/delete', array('rid' => $this->getRequest()->getParam('rid'))) . '\')', - 'class' => 'delete' - )) - ); + $this->addChild('deleteButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Delete Role'), + 'onclick' => 'deleteConfirm(\'' . Mage::helper('Mage_Adminhtml_Helper_Data')->__('Are you sure you want to do this?') . '\', \'' . $this->getUrl('*/*/delete', array('rid' => $this->getRequest()->getParam('rid'))) . '\')', + 'class' => 'delete' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Backup.php b/app/code/core/Mage/Adminhtml/Block/Backup.php index 18b3a26f74164..37ab0a72c43eb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Backup.php +++ b/app/code/core/Mage/Adminhtml/Block/Backup.php @@ -43,35 +43,24 @@ class Mage_Adminhtml_Block_Backup extends Mage_Adminhtml_Block_Template protected function _prepareLayout() { parent::_prepareLayout(); - $this->setChild('createButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('Database Backup'), - 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_DB . "')", - 'class' => 'task' - )) - ); - $this->setChild('createSnapshotButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('System Backup'), - 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_SYSTEM_SNAPSHOT . "')", - 'class' => '' - )) - ); - $this->setChild('createMediaBackupButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('Database and Media Backup'), - 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_MEDIA . "')", - 'class' => '' - )) - ); - $this->setChild('backupsGrid', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Backup_Grid') - ); + $this->addChild('createButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('Database Backup'), + 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_DB . "')", + 'class' => 'task' + )); + $this->addChild('createSnapshotButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('System Backup'), + 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_SYSTEM_SNAPSHOT . "')", + 'class' => '' + )); + $this->addChild('createMediaBackupButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Backup_Helper_Data')->__('Database and Media Backup'), + 'onclick' => "return backup.backup('" . Mage_Backup_Helper_Data::TYPE_MEDIA . "')", + 'class' => '' + )); + $this->addChild('backupsGrid', 'Mage_Adminhtml_Block_Backup_Grid'); - $this->setChild('dialogs', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Backup_Dialogs')); + $this->addChild('dialogs', 'Mage_Adminhtml_Block_Backup_Dialogs'); } public function getCreateButtonHtml() diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php index 99fbb442e5156..a0e008f2a1082 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php @@ -57,38 +57,29 @@ protected function _prepareLayout() // Save button if (!$category->isReadonly()) { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Category'), - 'onclick' => "categorySubmit('" . $this->getSaveUrl() . "', true)", - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Category'), + 'onclick' => "categorySubmit('" . $this->getSaveUrl() . "', true)", + 'class' => 'save' + )); } // Delete button if (!in_array($categoryId, $this->getRootIds()) && $category->isDeleteable()) { - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Category'), - 'onclick' => "categoryDelete('" . $this->getUrl('*/*/delete', array('_current' => true)) . "', true, {$categoryId})", - 'class' => 'delete' - )) - ); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Category'), + 'onclick' => "categoryDelete('" . $this->getUrl('*/*/delete', array('_current' => true)) . "', true, {$categoryId})", + 'class' => 'delete' + )); } // Reset button if (!$category->isReadonly()) { $resetPath = $categoryId ? '*/*/edit' : '*/*/add'; - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), - 'onclick' => "categoryReset('".$this->getUrl($resetPath, array('_current'=>true))."',true)" - )) - ); + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), + 'onclick' => "categoryReset('".$this->getUrl($resetPath, array('_current'=>true))."',true)" + )); } return parent::_prepareLayout(); diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tabs.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tabs.php index 690df6c4f3a59..75a39fa2d56ce 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tabs.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tabs.php @@ -133,7 +133,8 @@ protected function _prepareLayout() } $active = $defaultGroupId == $group->getId(); - $block = $this->getLayout()->createBlock($this->getAttributeTabBlock(), '') + $block = $this->getLayout()->createBlock($this->getAttributeTabBlock(), $this->getNameInLayout() . '_tab_' + . $group->getAttributeGroupName()) ->setGroup($group) ->setAttributes($attributes) ->setAddHiddenFields($active) diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tree.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tree.php index 798f769e0ecf9..7a3cba2fb5a0d 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tree.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Category/Tree.php @@ -53,27 +53,21 @@ protected function _prepareLayout() '_query' => false )); - $this->setChild('add_sub_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Subcategory'), - 'onclick' => "addNew('".$addUrl."', false)", - 'class' => 'add', - 'id' => 'add_subcategory_button', - 'style' => $this->canAddSubCategory() ? '' : 'display: none;' - )) - ); + $this->addChild('add_sub_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Subcategory'), + 'onclick' => "addNew('".$addUrl."', false)", + 'class' => 'add', + 'id' => 'add_subcategory_button', + 'style' => $this->canAddSubCategory() ? '' : 'display: none;' + )); if ($this->canAddRootCategory()) { - $this->setChild('add_root_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Root Category'), - 'onclick' => "addNew('".$addUrl."', true)", - 'class' => 'add', - 'id' => 'add_root_category_button' - )) - ); + $this->addChild('add_root_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Root Category'), + 'onclick' => "addNew('".$addUrl."', true)", + 'class' => 'add', + 'id' => 'add_root_category_button' + )); } $this->setChild('store_switcher', diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Form.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Form.php index 3258b54b0e196..a5c94fcdd59e7 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Form.php @@ -36,13 +36,22 @@ class Mage_Adminhtml_Block_Catalog_Form extends Mage_Adminhtml_Block_Widget_Form protected function _prepareLayout() { Varien_Data_Form::setElementRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Renderer_Element') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Form_Renderer_Element', + $this->getNameInLayout() . '_element' + ) ); Varien_Data_Form::setFieldsetRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset', + $this->getNameInLayout() . '_fieldset' + ) ); Varien_Data_Form::setFieldsetElementRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Catalog_Form_Renderer_Fieldset_Element') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Catalog_Form_Renderer_Fieldset_Element', + $this->getNameInLayout() . '_fieldset_element' + ) ); } } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product.php index 0c4d72eb06a74..2134d61802a93 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product.php @@ -50,9 +50,11 @@ public function __construct() protected function _prepareLayout() { $this->_addButton('add_new', array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Product'), - 'onclick' => "setLocation('{$this->getUrl('*/*/new')}')", - 'class' => 'add' + 'id' => 'add_new_product', + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Product'), + 'class' => 'btn-add', + 'class_name' => 'Mage_Backend_Block_Widget_Button_Split', + 'options' => $this->_getAddProductButtonOptions() )); $this->setChild( @@ -62,6 +64,40 @@ protected function _prepareLayout() return parent::_prepareLayout(); } + /** + * Retrieve options for 'Add Product' split button + * + * @return array + */ + protected function _getAddProductButtonOptions() + { + $splitButtonOptions = array(); + + foreach (Mage::getModel('Mage_Catalog_Model_Product_Type')->getOptionArray() as $key => $label) { + $splitButtonOptions[$key] = array( + 'label' => $label, + 'onclick' => "setLocation('" . $this->_getProductCreateUrl($key) . "')", + 'default' => Mage_Catalog_Model_Product_Type::DEFAULT_TYPE == $key + ); + } + + return $splitButtonOptions; + } + + /** + * Retrieve product create url by specified product type + * + * @param string $type + * @return string + */ + protected function _getProductCreateUrl($type) + { + return $this->getUrl('*/*/new', array( + 'set' => Mage::getModel('Mage_Catalog_Model_Product')->getDefaultAttributeSetId(), + 'type' => $type + )); + } + /** * Render grid * @@ -79,9 +115,6 @@ public function getGridHtml() */ public function isSingleStoreMode() { - if (!Mage::app()->isSingleStoreMode()) { - return false; - } - return true; + return Mage::app()->isSingleStoreMode(); } } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Edit/Tab/Options.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Edit/Tab/Options.php index 8df8f473b4216..d14d208cc562d 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Edit/Tab/Options.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Edit/Tab/Options.php @@ -37,4 +37,22 @@ class Mage_Adminhtml_Block_Catalog_Product_Attribute_Edit_Tab_Options extends Mage_Eav_Block_Adminhtml_Attribute_Edit_Options_Abstract { + /** + * Retrieve option values collection + * It is represented by an array in case of system attribute + * + * @param Mage_Eav_Model_Entity_Attribute_Abstract $attribute + * @return array|Mage_Eav_Model_Resource_Entity_Attribute_Option_Collection + */ + protected function _getOptionValuesCollection(Mage_Eav_Model_Entity_Attribute_Abstract $attribute) + { + if ($this->canManageOptionDefaultOnly()) { + $options = Mage::getModel($attribute->getSourceModel()) + ->setAttribute($attribute) + ->getAllOptions(true); + return array_reverse($options); + } else { + return parent::_getOptionValuesCollection($attribute); + } + } } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/New/Product/Created.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/New/Product/Created.php index 5a9be97987dad..fe3eaeb951d9c 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/New/Product/Created.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/New/Product/Created.php @@ -55,14 +55,10 @@ protected function _prepareLayout() ->setGroupAttributes($this->_getGroupAttributes()) ); - $this->setChild( - 'close_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), - 'onclick' => 'addAttribute(true)' - )) - ); + $this->addChild('close_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), + 'onclick' => 'addAttribute(true)' + )); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Main.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Main.php index 32446600eb7f9..10b54834259ba 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Main.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Main.php @@ -51,60 +51,49 @@ protected function _prepareLayout() { $setId = $this->_getSetId(); - $this->setChild('group_tree', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Tree_Group') - ); - - $this->setChild('edit_set_form', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Formset') - ); - - $this->setChild('delete_group_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Selected Group'), - 'onclick' => 'editSet.submit();', - 'class' => 'delete' - ))); - - $this->setChild('add_group_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New'), - 'onclick' => 'editSet.addGroup();', - 'class' => 'add' - ))); - - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', - 'class' => 'back' - ))); - - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), - 'onclick' => 'window.location.reload()' - ))); - - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Attribute Set'), - 'onclick' => 'editSet.save();', - 'class' => 'save' - ))); - - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Attribute Set'), - 'onclick' => 'deleteConfirm(\''. $this->jsQuoteEscape(Mage::helper('Mage_Catalog_Helper_Data')->__('All products of this set will be deleted! Are you sure you want to delete this attribute set?')) . '\', \'' . $this->getUrl('*/*/delete', array('id' => $setId)) . '\')', - 'class' => 'delete' - ))); - - $this->setChild('rename_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('New Set Name'), - 'onclick' => 'editSet.rename()' - ))); + $this->addChild('group_tree', 'Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Tree_Group'); + + $this->addChild('edit_set_form', 'Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Formset'); + + $this->addChild('delete_group_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Selected Group'), + 'onclick' => 'editSet.submit();', + 'class' => 'delete' + )); + + $this->addChild('add_group_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New'), + 'onclick' => 'editSet.addGroup();', + 'class' => 'add' + )); + + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', + 'class' => 'back' + )); + + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), + 'onclick' => 'window.location.reload()' + )); + + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Attribute Set'), + 'onclick' => 'editSet.save();', + 'class' => 'save' + )); + + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Attribute Set'), + 'onclick' => 'deleteConfirm(\''. $this->jsQuoteEscape(Mage::helper('Mage_Catalog_Helper_Data')->__('All products of this set will be deleted! Are you sure you want to delete this attribute set?')) . '\', \'' . $this->getUrl('*/*/delete', array('id' => $setId)) . '\')', + 'class' => 'delete' + )); + + $this->addChild('rename_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('New Set Name'), + 'onclick' => 'editSet.rename()' + )); return parent::_prepareLayout(); } @@ -179,6 +168,8 @@ public function getGroupTreeJson() $configurable = Mage::getResourceModel('Mage_Catalog_Model_Resource_Product_Type_Configurable_Attribute') ->getUsedAttributes($setId); + $unassignableAttributes = Mage::helper('Mage_Catalog_Helper_Product')->getUnassignableAttributes(); + /* @var $node Mage_Eav_Model_Entity_Attribute_Group */ foreach ($groups as $node) { $item = array(); @@ -197,15 +188,19 @@ public function getGroupTreeJson() $item['children'] = array(); foreach ($nodeChildren->getItems() as $child) { /* @var $child Mage_Eav_Model_Entity_Attribute */ + + $isUnassignable = !in_array($child->getAttributeCode(), $unassignableAttributes); + $attr = array( 'text' => $child->getAttributeCode(), 'id' => $child->getAttributeId(), - 'cls' => (!$child->getIsUserDefined()) ? 'system-leaf' : 'leaf', + 'cls' => $isUnassignable ? 'leaf' : 'system-leaf', 'allowDrop' => false, 'allowDrag' => true, 'leaf' => true, 'is_user_defined' => $child->getIsUserDefined(), 'is_configurable' => (int)in_array($child->getAttributeId(), $configurable), + 'is_unassignable' => $isUnassignable, 'entity_id' => $child->getEntityAttributeId() ); diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Add.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Add.php index 067133c7d8540..dc7ff43382c64 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Add.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Add.php @@ -40,24 +40,18 @@ protected function _construct() protected function _prepareLayout() { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Attribute Set'), - 'onclick' => 'if (addSet.submit()) disableElements(\'save\');', - 'class' => 'save' - ))); - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', - 'class' => 'back' - ))); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save Attribute Set'), + 'onclick' => 'if (addSet.submit()) disableElements(\'save\');', + 'class' => 'save' + )); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', + 'class' => 'back' + )); - $this->setChild('setForm', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Formset') - ); + $this->addChild('setForm', 'Mage_Adminhtml_Block_Catalog_Product_Attribute_Set_Main_Formset'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Main.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Main.php index 35249d1728d7a..3cf2d2ba318a8 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Main.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/Main.php @@ -42,14 +42,11 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('addButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Set'), - 'onclick' => 'setLocation(\'' . $this->getUrl('*/*/add') . '\')', - 'class' => 'add', - )) - ); + $this->addChild('addButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Set'), + 'onclick' => 'setLocation(\'' . $this->getUrl('*/*/add') . '\')', + 'class' => 'add', + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Created.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Created.php index 07e298ef37952..022bf5e9720a2 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Created.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Created.php @@ -45,14 +45,10 @@ public function __construct() protected function _prepareLayout() { - $this->setChild( - 'close_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), - 'onclick' => 'addProduct(true)' - )) - ); + $this->addChild('close_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), + 'onclick' => 'addProduct(true)' + )); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit.php index 5173facb5df3f..bca95ec2cc366 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit.php @@ -50,27 +50,26 @@ public function getProduct() return Mage::registry('current_product'); } + /** + * Add elements in layout + * + * @return Mage_Adminhtml_Block_Catalog_Product_Edit + */ protected function _prepareLayout() { if (!$this->getRequest()->getParam('popup')) { - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), - 'onclick' => 'setLocation(\'' - . $this->getUrl('*/*/', array('store'=>$this->getRequest()->getParam('store', 0))).'\')', - 'class' => 'back' - )) - ); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), + 'onclick' => 'setLocation(\'' + . $this->getUrl('*/*/', array('store'=>$this->getRequest()->getParam('store', 0))).'\')', + 'class' => 'back' + )); } else { - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), - 'onclick' => 'window.close()', - 'class' => 'cancel' - )) - ); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Close Window'), + 'onclick' => 'window.close()', + 'class' => 'cancel' + )); } if (!$this->getProduct()->isReadonly()) { @@ -84,56 +83,41 @@ protected function _prepareLayout() )) ); - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/*/*', array('_current'=>true)).'\')' - )) - ); + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/*/*', array('_current'=>true)).'\')' + )); - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save'), - 'onclick' => 'productForm.submit()', - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save'), + 'onclick' => 'productForm.submit()', + 'class' => 'save' + )); } if (!$this->getRequest()->getParam('popup')) { if (!$this->getProduct()->isReadonly()) { - $this->setChild('save_and_edit_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save and Continue Edit'), - 'onclick' => 'saveAndContinueEdit(\''.$this->getSaveAndContinueUrl().'\')', - 'class' => 'save' - )) - ); + $this->addChild('save_and_edit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save and Continue Edit'), + 'onclick' => 'saveAndContinueEdit(\''.$this->getSaveAndContinueUrl().'\')', + 'class' => 'save' + )); } if ($this->getProduct()->isDeleteable()) { - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete'), - 'onclick' => 'confirmSetLocation(\'' - . Mage::helper('Mage_Catalog_Helper_Data')->__('Are you sure?').'\', \''.$this->getDeleteUrl().'\')', - 'class' => 'delete' - )) - ); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete'), + 'onclick' => 'confirmSetLocation(\'' + . Mage::helper('Mage_Catalog_Helper_Data')->__('Are you sure?').'\', \''.$this->getDeleteUrl().'\')', + 'class' => 'delete' + )); } if ($this->getProduct()->isDuplicable()) { - $this->setChild('duplicate_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Duplicate'), - 'onclick' => 'setLocation(\'' . $this->getDuplicateUrl() . '\')', - 'class' => 'add' - )) - ); + $this->addChild('duplicate_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Duplicate'), + 'onclick' => 'setLocation(\'' . $this->getDuplicateUrl() . '\')', + 'class' => 'add' + )); } } @@ -271,4 +255,24 @@ public function getSelectedTabId() { return addslashes(htmlspecialchars($this->getRequest()->getParam('tab'))); } + + /** + * Get fields masks from config + * + * @return array + */ + public function getFieldsAutogenerationMasks() + { + return $this->helper('Mage_Catalog_Helper_Product')->getFieldsAutogenerationMasks(); + } + + /** + * Retrieve available placeholders + * + * @return array + */ + public function getAttributesAllowedForAutogeneration() + { + return $this->helper('Mage_Catalog_Helper_Product')->getAttributesAllowedForAutogeneration(); + } } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Action/Attribute.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Action/Attribute.php index 86c497318117f..3ee2fd66da774 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Action/Attribute.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Action/Attribute.php @@ -37,31 +37,22 @@ class Mage_Adminhtml_Block_Catalog_Product_Edit_Action_Attribute extends Mage_Ad protected function _prepareLayout() { - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/catalog_product/', array('store'=>$this->getRequest()->getParam('store', 0))).'\')', - 'class' => 'back' - )) - ); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Back'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/catalog_product/', array('store'=>$this->getRequest()->getParam('store', 0))).'\')', + 'class' => 'back' + )); - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/*/*', array('_current'=>true)).'\')' - )) - ); + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Reset'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/*/*', array('_current'=>true)).'\')' + )); - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save'), - 'onclick' => 'attributesForm.submit()', - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Save'), + 'onclick' => 'attributesForm.submit()', + 'class' => 'save' + )); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options.php index d252619440c4c..42c3187477280 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options.php @@ -43,27 +43,19 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Option'), - 'class' => 'add', - 'id' => 'add_new_defined_option' - )) - ); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Option'), + 'class' => 'add', + 'id' => 'add_new_defined_option' + )); - $this->setChild('options_box', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Options_Option') - ); + $this->addChild('options_box', 'Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Options_Option'); - $this->setChild('import_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Import Options'), - 'class' => 'add', - 'id' => 'import_new_defined_option' - )) - ); + $this->addChild('import_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Import Options'), + 'class' => 'add', + 'id' => 'import_new_defined_option' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Option.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Option.php index 560b779295135..fc7292cd1cf9a 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Option.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Option.php @@ -120,21 +120,17 @@ public function isReadonly() protected function _prepareLayout() { - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Option'), - 'class' => 'delete delete-product-option ' - )) - ); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Option'), + 'class' => 'delete delete-product-option ' + )); $path = 'global/catalog/product/options/custom/groups'; foreach (Mage::getConfig()->getNode($path)->children() as $group) { - $this->setChild($group->getName() . '_option_type', - $this->getLayout()->createBlock( - (string) Mage::getConfig()->getNode($path . '/' . $group->getName() . '/render') - ) + $this->addChild( + $group->getName() . '_option_type', + (string) Mage::getConfig()->getNode($path . '/' . $group->getName() . '/render') ); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/Select.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/Select.php index 12f4c29350804..9eeef21a6e864 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/Select.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/Select.php @@ -48,23 +48,17 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('add_select_row_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Row'), - 'class' => 'add add-select-row', - 'id' => 'add_select_row_button_{{option_id}}' - )) - ); + $this->addChild('add_select_row_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add New Row'), + 'class' => 'add add-select-row', + 'id' => 'add_select_row_button_{{option_id}}' + )); - $this->setChild('delete_select_row_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Row'), - 'class' => 'delete delete-select-row icon-btn', - 'id' => 'delete_select_row_button' - )) - ); + $this->addChild('delete_select_row_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Row'), + 'class' => 'delete delete-select-row icon-btn', + 'id' => 'delete_select_row_button' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Price/Group/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Price/Group/Abstract.php index 7d482e5736afa..520c7140fdaa4 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Price/Group/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Price/Group/Abstract.php @@ -190,7 +190,7 @@ public function getWebsiteCount() */ public function isMultiWebsites() { - return !Mage::app()->hasSingleStore(); + return !Mage::app()->isSingleStoreMode(); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Settings.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Settings.php deleted file mode 100644 index 3708c2cc69b9d..0000000000000 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Settings.php +++ /dev/null @@ -1,90 +0,0 @@ - - */ -class Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Settings extends Mage_Adminhtml_Block_Widget_Form -{ - protected function _prepareLayout() - { - $this->setChild('continue_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Continue'), - 'onclick' => "setSettings('".$this->getContinueUrl()."','attribute_set_id','product_type')", - 'class' => 'save' - )) - ); - return parent::_prepareLayout(); - } - - protected function _prepareForm() - { - $form = new Varien_Data_Form(); - $fieldset = $form->addFieldset('settings', array('legend'=>Mage::helper('Mage_Catalog_Helper_Data')->__('Create Product Settings'))); - - $entityType = Mage::registry('product')->getResource()->getEntityType(); - - $fieldset->addField('attribute_set_id', 'select', array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Attribute Set'), - 'title' => Mage::helper('Mage_Catalog_Helper_Data')->__('Attribute Set'), - 'name' => 'set', - 'value' => $entityType->getDefaultAttributeSetId(), - 'values'=> Mage::getResourceModel('Mage_Eav_Model_Resource_Entity_Attribute_Set_Collection') - ->setEntityTypeFilter($entityType->getId()) - ->load() - ->toOptionArray() - )); - - $fieldset->addField('product_type', 'select', array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Product Type'), - 'title' => Mage::helper('Mage_Catalog_Helper_Data')->__('Product Type'), - 'name' => 'type', - 'value' => '', - 'values'=> Mage::getModel('Mage_Catalog_Model_Product_Type')->getOptionArray() - )); - - $fieldset->addField('continue_button', 'note', array( - 'text' => $this->getChildHtml('continue_button'), - )); - - $this->setForm($form); - } - - public function getContinueUrl() - { - return $this->getUrl('*/*/new', array( - '_current' => true, - 'set' => '{{attribute_set}}', - 'type' => '{{type}}' - )); - } -} diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php index c66c77ca574b1..fb7b0127cc84e 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php @@ -102,14 +102,11 @@ protected function _prepareLayout() 'admin.product.edit.tab.super.config.grid') ); - $this->setChild('create_empty', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Create Empty'), - 'class' => 'add', - 'onclick' => 'superProduct.createEmptyProduct()' - )) - ); + $this->addChild('create_empty', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Create Empty'), + 'class' => 'add', + 'onclick' => 'superProduct.createEmptyProduct()' + )); if ($this->_getProduct()->getId()) { $this->setChild('simple', @@ -117,14 +114,11 @@ protected function _prepareLayout() 'catalog.product.edit.tab.super.config.simple') ); - $this->setChild('create_from_configurable', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Copy From Configurable'), - 'class' => 'add', - 'onclick' => 'superProduct.createNewProduct()' - )) - ); + $this->addChild('create_from_configurable', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Copy From Configurable'), + 'class' => 'add', + 'onclick' => 'superProduct.createNewProduct()' + )); } return parent::_prepareLayout(); diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Settings.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Settings.php index 09f400bd3743a..2d12e501402a1 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Settings.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Settings.php @@ -40,15 +40,12 @@ class Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Super_Settings extends Mage_ */ protected function _prepareLayout() { - $onclick = "setSuperSettings('".$this->getContinueUrl()."','attribute-checkbox', 'attributes')"; - $this->setChild('continue_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Continue'), - 'onclick' => $onclick, - 'class' => 'save' - )) - ); + $onclick = "setSuperSettings('" . $this->getContinueUrl() . "','attribute-checkbox', 'attributes')"; + $this->addChild('continue_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Continue'), + 'onclick' => $onclick, + 'class' => 'save' + )); $backButton = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') ->setData(array( @@ -58,6 +55,17 @@ protected function _prepareLayout() )); $this->setChild('back_button', $backButton); + + $this->setChild('change_attribute_set_button', + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Button', + $this->getNameInLayout() . '-change-attribute-set' + )->setData(array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Change Attribute Set'), + 'onclick' => "jQuery('#attribute-set-info').dialog('open');" + )) + ); + parent::_prepareLayout(); } @@ -93,6 +101,10 @@ protected function _prepareForm() . '' )); + $fieldset->addField('change_attribute_set_button', 'note', array( + 'text' => $this->getChildHtml('change_attribute_set_button'), + )); + $hasAttributes = false; foreach ($attributes as $attribute) { @@ -110,10 +122,10 @@ protected function _prepareForm() if ($hasAttributes) { $fieldset->addField('attributes', 'hidden', array( - 'name' => 'attribute_validate', - 'value' => '', - 'class' => 'validate-super-product-attributes' - )); + 'name' => 'attribute_validate', + 'value' => '', + 'class' => 'validate-super-product-attributes' + )); $fieldset->addField('continue_button', 'note', array( 'text' => $this->getChildHtml('continue_button'), @@ -154,6 +166,6 @@ public function getContinueUrl() */ public function getBackUrl() { - return $this->getUrl('*/*/new', array('set'=>null, 'type'=>null)); + return $this->getUrl('*/*/', array('set' => null, 'type' => null)); } } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php index 2c8568e270cc5..74a2c9b744a8c 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php @@ -58,7 +58,7 @@ protected function _prepareLayout() ->load(); $tabAttributesBlock = $this->getLayout()->createBlock( - $this->getAttributeTabBlock(), 'adminhtml.catalog.product.edit.tab.attributes' + $this->getAttributeTabBlock(), $this->getNameInLayout() . '_attributes_tab' ); foreach ($groupCollection as $group) { $attributes = $product->getAttributes($group->getId(), true); @@ -170,14 +170,6 @@ protected function _prepareLayout() } } - else { - $this->addTab('set', array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Settings'), - 'content' => $this->_translateHtml($this->getLayout() - ->createBlock('Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Settings')->toHtml()), - 'active' => true - )); - } return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/Content.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/Content.php index 1aec50d345143..7702cfb509fab 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/Content.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/Content.php @@ -43,9 +43,7 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('uploader', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Media_Uploader') - ); + $this->addChild('uploader', 'Mage_Adminhtml_Block_Media_Uploader'); $this->getUploader()->getConfig() ->setUrl(Mage::getModel('Mage_Adminhtml_Model_Url')->addSessionParam()->getUrl('*/catalog_product_gallery/upload')) diff --git a/app/code/core/Mage/Adminhtml/Block/Catalog/Search/Edit/Form.php b/app/code/core/Mage/Adminhtml/Block/Catalog/Search/Edit/Form.php index d284df373a402..144944b1bcaf4 100644 --- a/app/code/core/Mage/Adminhtml/Block/Catalog/Search/Edit/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Catalog/Search/Edit/Form.php @@ -86,7 +86,7 @@ protected function _prepareForm() 'required' => true, )); - if (!Mage::app()->hasSingleStore()) { + if (!Mage::app()->isSingleStoreMode()) { $field = $fieldset->addField('store_id', 'select', array( 'name' => 'store_id', 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Store'), diff --git a/app/code/core/Mage/Adminhtml/Block/Checkout/Agreement/Edit/Form.php b/app/code/core/Mage/Adminhtml/Block/Checkout/Agreement/Edit/Form.php index 658432f17b7a4..04e804cad71ec 100644 --- a/app/code/core/Mage/Adminhtml/Block/Checkout/Agreement/Edit/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Checkout/Agreement/Edit/Form.php @@ -98,7 +98,7 @@ protected function _prepareForm() ), )); - if (!Mage::app()->hasSingleStore()) { + if (!Mage::app()->isSingleStoreMode()) { $field = $fieldset->addField('store_id', 'multiselect', array( 'name' => 'stores[]', 'label' => Mage::helper('Mage_Checkout_Helper_Data')->__('Store View'), diff --git a/app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Addresses.php b/app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Addresses.php index 913e85982918b..1f8bf2295e081 100644 --- a/app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Addresses.php +++ b/app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Addresses.php @@ -46,40 +46,31 @@ public function getRegionsUrl() protected function _prepareLayout() { - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Delete Address'), - 'name' => 'delete_address', - 'element_name' => 'delete_address', - 'disabled' => $this->isReadonly(), - 'class' => 'delete' . ($this->isReadonly() ? ' disabled' : '') - )) - ); - $this->setChild('add_address_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Add New Address'), - 'id' => 'add_address_button', - 'name' => 'add_address_button', - 'element_name' => 'add_address_button', - 'disabled' => $this->isReadonly(), - 'class' => 'add' . ($this->isReadonly() ? ' disabled' : ''), - 'onclick'=> 'customerAddresses.addNewAddress()' - )) - ); - $this->setChild('cancel_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Cancel'), - 'id' => 'cancel_add_address'.$this->getTemplatePrefix(), - 'name' => 'cancel_address', - 'element_name' => 'cancel_address', - 'class' => 'cancel delete-address' . ($this->isReadonly() ? ' disabled' : ''), - 'disabled' => $this->isReadonly(), - 'onclick'=> 'customerAddresses.cancelAdd(this)', - )) - ); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Delete Address'), + 'name' => 'delete_address', + 'element_name' => 'delete_address', + 'disabled' => $this->isReadonly(), + 'class' => 'delete' . ($this->isReadonly() ? ' disabled' : '') + )); + $this->addChild('add_address_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Add New Address'), + 'id' => 'add_address_button', + 'name' => 'add_address_button', + 'element_name' => 'add_address_button', + 'disabled' => $this->isReadonly(), + 'class' => 'add' . ($this->isReadonly() ? ' disabled' : ''), + 'onclick'=> 'customerAddresses.addNewAddress()' + )); + $this->addChild('cancel_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Customer_Helper_Data')->__('Cancel'), + 'id' => 'cancel_add_address'.$this->getTemplatePrefix(), + 'name' => 'cancel_address', + 'element_name' => 'cancel_address', + 'class' => 'cancel delete-address' . ($this->isReadonly() ? ' disabled' : ''), + 'disabled' => $this->isReadonly(), + 'onclick'=> 'customerAddresses.cancelAdd(this)', + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Customer/Online.php b/app/code/core/Mage/Adminhtml/Block/Customer/Online.php index 11ef3105bf586..2400891890774 100644 --- a/app/code/core/Mage/Adminhtml/Block/Customer/Online.php +++ b/app/code/core/Mage/Adminhtml/Block/Customer/Online.php @@ -51,7 +51,7 @@ public function _beforeToHtml() protected function _prepareLayout() { - $this->setChild('filterForm', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Customer_Online_Filter')); + $this->addChild('filterForm', 'Mage_Adminhtml_Block_Customer_Online_Filter'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Dashboard.php b/app/code/core/Mage/Adminhtml/Block/Dashboard.php index d3ca02a9933ed..9b1de1bb9f004 100644 --- a/app/code/core/Mage/Adminhtml/Block/Dashboard.php +++ b/app/code/core/Mage/Adminhtml/Block/Dashboard.php @@ -42,25 +42,15 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('lastOrders', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Orders_Grid') - ); + $this->addChild('lastOrders', 'Mage_Adminhtml_Block_Dashboard_Orders_Grid'); - $this->setChild('totals', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Totals') - ); + $this->addChild('totals', 'Mage_Adminhtml_Block_Dashboard_Totals'); - $this->setChild('sales', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Sales') - ); + $this->addChild('sales', 'Mage_Adminhtml_Block_Dashboard_Sales'); - $this->setChild('lastSearches', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Searches_Last') - ); + $this->addChild('lastSearches', 'Mage_Adminhtml_Block_Dashboard_Searches_Last'); - $this->setChild('topSearches', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Searches_Top') - ); + $this->addChild('topSearches', 'Mage_Adminhtml_Block_Dashboard_Searches_Top'); if (Mage::getStoreConfig(self::XML_PATH_ENABLE_CHARTS)) { $block = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Diagrams'); @@ -71,9 +61,7 @@ protected function _prepareLayout() } $this->setChild('diagrams', $block); - $this->setChild('grids', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Dashboard_Grids') - ); + $this->addChild('grids', 'Mage_Adminhtml_Block_Dashboard_Grids'); parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Edit.php b/app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Edit.php index 169f616cd90a9..9e7ed5eaf1654 100644 --- a/app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Edit.php @@ -85,52 +85,35 @@ protected function _prepareLayout() $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true); } - $this->setChild('preview_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Preview Template'), - 'onclick' => 'queueControl.preview();', - 'class' => 'task' - )) - ); + $this->addChild('preview_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Preview Template'), + 'onclick' => 'queueControl.preview();', + 'class' => 'task' + )); - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save Newsletter'), - 'onclick' => 'queueControl.save()', - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save Newsletter'), + 'onclick' => 'queueControl.save()', + 'class' => 'save' + )); - $this->setChild('save_and_resume', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save and Resume'), - 'onclick' => 'queueControl.resume()', - 'class' => 'save' - )) - ); + $this->addChild('save_and_resume', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save and Resume'), + 'onclick' => 'queueControl.resume()', + 'class' => 'save' + )); - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Reset'), - 'onclick' => 'window.location = window.location' - )) - ); + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Reset'), + 'onclick' => 'window.location = window.location' + )); - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData( - array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Back'), - 'onclick' => "window.location.href = '" . $this->getUrl(( - $this->getTemplateId() ? '*/newsletter_template/' : '*/*')) . "'", - 'class' => 'back' - ) - ) - ); + $this->addChild('back_button','Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Back'), + 'onclick' => "window.location.href = '" . $this->getUrl(( + $this->getTemplateId() ? '*/newsletter_template/' : '*/*')) . "'", + 'class' => 'back' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Edit.php b/app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Edit.php index 5d34599122453..df22c2de80b66 100644 --- a/app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Edit.php @@ -63,79 +63,55 @@ protected function _prepareLayout() $block->setCanLoadTinyMce(true); } - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Back'), - 'onclick' => "window.location.href = '" . $this->getUrl('*/*') . "'", - 'class' => 'back' - )) - ); - - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Reset'), - 'onclick' => 'window.location.href = window.location.href' - )) - ); - - $this->setChild('to_plain_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Convert to Plain Text'), - 'onclick' => 'templateControl.stripTags();', - 'id' => 'convert_button', - 'class' => 'task' - )) - ); - - $this->setChild('to_html_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Return HTML Version'), - 'onclick' => 'templateControl.unStripTags();', - 'id' => 'convert_button_back', - 'style' => 'display:none', - 'class' => 'task' - )) - ); - - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save Template'), - 'onclick' => 'templateControl.save();', - 'class' => 'save' - )) - ); - - $this->setChild('save_as_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save As'), - 'onclick' => 'templateControl.saveAs();', - 'class' => 'save' - )) - ); - - $this->setChild('preview_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Preview Template'), - 'onclick' => 'templateControl.preview();', - 'class' => 'task' - )) - ); - - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Delete Template'), - 'onclick' => 'templateControl.deleteTemplate();', - 'class' => 'delete' - )) - ); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Back'), + 'onclick' => "window.location.href = '" . $this->getUrl('*/*') . "'", + 'class' => 'back' + )); + + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Reset'), + 'onclick' => 'window.location.href = window.location.href' + )); + + $this->addChild('to_plain_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Convert to Plain Text'), + 'onclick' => 'templateControl.stripTags();', + 'id' => 'convert_button', + 'class' => 'task' + )); + + $this->addChild('to_html_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Return HTML Version'), + 'onclick' => 'templateControl.unStripTags();', + 'id' => 'convert_button_back', + 'style' => 'display:none', + 'class' => 'task' + )); + + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save Template'), + 'onclick' => 'templateControl.save();', + 'class' => 'save' + )); + + $this->addChild('save_as_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Save As'), + 'onclick' => 'templateControl.saveAs();', + 'class' => 'save' + )); + + $this->addChild('preview_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Preview Template'), + 'onclick' => 'templateControl.preview();', + 'class' => 'task' + )); + + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Newsletter_Helper_Data')->__('Delete Template'), + 'onclick' => 'templateControl.deleteTemplate();', + 'class' => 'delete' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Poll/Edit/Tab/Answers/List.php b/app/code/core/Mage/Adminhtml/Block/Poll/Edit/Tab/Answers/List.php index 120c51482a643..1252b5c72809e 100644 --- a/app/code/core/Mage/Adminhtml/Block/Poll/Edit/Tab/Answers/List.php +++ b/app/code/core/Mage/Adminhtml/Block/Poll/Edit/Tab/Answers/List.php @@ -55,23 +55,17 @@ protected function _toHtml() protected function _prepareLayout() { - $this->setChild('deleteButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Poll_Helper_Data')->__('Delete'), - 'onclick' => 'answer.del(this)', - 'class' => 'delete' - )) - ); + $this->addChild('deleteButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Poll_Helper_Data')->__('Delete'), + 'onclick' => 'answer.del(this)', + 'class' => 'delete' + )); - $this->setChild('addButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Poll_Helper_Data')->__('Add New Answer'), - 'onclick' => 'answer.add(this)', - 'class' => 'add' - )) - ); + $this->addChild('addButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Poll_Helper_Data')->__('Add New Answer'), + 'onclick' => 'answer.add(this)', + 'class' => 'add' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Promo/Catalog/Edit/Tab/Main.php b/app/code/core/Mage/Adminhtml/Block/Promo/Catalog/Edit/Tab/Main.php index a6fb89495679b..b050057767e74 100644 --- a/app/code/core/Mage/Adminhtml/Block/Promo/Catalog/Edit/Tab/Main.php +++ b/app/code/core/Mage/Adminhtml/Block/Promo/Catalog/Edit/Tab/Main.php @@ -122,7 +122,7 @@ protected function _prepareForm() ), )); - if (Mage::app()->hasSingleStore()) { + if (Mage::app()->isSingleStoreMode()) { $websiteId = Mage::app()->getStore(true)->getWebsiteId(); $fieldset->addField('website_ids', 'hidden', array( 'name' => 'website_ids[]', diff --git a/app/code/core/Mage/Adminhtml/Block/Promo/Quote/Edit/Tab/Main.php b/app/code/core/Mage/Adminhtml/Block/Promo/Quote/Edit/Tab/Main.php index eb6ad64f779af..7d934dc383511 100644 --- a/app/code/core/Mage/Adminhtml/Block/Promo/Quote/Edit/Tab/Main.php +++ b/app/code/core/Mage/Adminhtml/Block/Promo/Quote/Edit/Tab/Main.php @@ -125,7 +125,7 @@ protected function _prepareForm() $model->setData('is_active', '1'); } - if (Mage::app()->hasSingleStore()) { + if (Mage::app()->isSingleStoreMode()) { $websiteId = Mage::app()->getStore(true)->getWebsiteId(); $fieldset->addField('website_ids', 'hidden', array( 'name' => 'website_ids[]', diff --git a/app/code/core/Mage/Adminhtml/Block/Report/Grid.php b/app/code/core/Mage/Adminhtml/Block/Report/Grid.php index b400c00f55a45..618ae25049647 100644 --- a/app/code/core/Mage/Adminhtml/Block/Report/Grid.php +++ b/app/code/core/Mage/Adminhtml/Block/Report/Grid.php @@ -79,14 +79,11 @@ protected function _prepareLayout() ->setTemplate('report/store/switcher.phtml') ); - $this->setChild('refresh_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Refresh'), - 'onclick' => $this->getRefreshButtonCallback(), - 'class' => 'task' - )) - ); + $this->addChild('refresh_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Refresh'), + 'onclick' => $this->getRefreshButtonCallback(), + 'class' => 'task' + )); parent::_prepareLayout(); return $this; } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Comments/View.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Comments/View.php index 9c5c17cfacc33..c06645ba2c819 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Comments/View.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Comments/View.php @@ -52,13 +52,12 @@ protected function _beforeToHtml() */ protected function _prepareLayout() { - $button = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'id' => 'submit_comment_button', - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Submit Comment'), - 'class' => 'save' - )); - $this->setChild('submit_button', $button); + $this->addChild('submit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'id' => 'submit_comment_button', + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Submit Comment'), + 'class' => 'save' + )); + return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Form/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Form/Abstract.php index 547ff84a8bdd4..764ec385ca608 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Form/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Form/Abstract.php @@ -53,13 +53,22 @@ protected function _prepareLayout() parent::_prepareLayout(); Varien_Data_Form::setElementRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Renderer_Element') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Form_Renderer_Element', + $this->getNameInLayout() . '_element' + ) ); Varien_Data_Form::setFieldsetRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset', + $this->getNameInLayout() . '_fieldset' + ) ); Varien_Data_Form::setFieldsetElementRenderer( - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element') + $this->getLayout()->createBlock( + 'Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element', + $this->getNameInLayout() . '_fieldset_element' + ) ); return $this; diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Sidebar/Cart.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Sidebar/Cart.php index 7c6a203b1ee51..6d1b68e48ed66 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Sidebar/Cart.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Sidebar/Cart.php @@ -105,12 +105,11 @@ public function getProductId($item) protected function _prepareLayout() { $deleteAllConfirmString = Mage::helper('Mage_Sales_Helper_Data')->__('Are you sure you want to delete all items from shopping cart?'); - $button = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( + $this->addChild('empty_customer_cart_button', 'Mage_Adminhtml_Block_Widget_Button', array( 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Clear Shopping Cart'), 'onclick' => 'order.clearShoppingCart(\'' . $deleteAllConfirmString . '\')', 'style' => 'float: right;' )); - $this->setChild('empty_customer_cart_button', $button); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create/Items.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create/Items.php index e7ad2d8423b44..673cd9dba2048 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create/Items.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create/Items.php @@ -43,45 +43,33 @@ class Mage_Adminhtml_Block_Sales_Order_Creditmemo_Create_Items extends Mage_Admi protected function _prepareLayout() { $onclick = "submitAndReloadArea($('creditmemo_item_container'),'".$this->getUpdateUrl()."')"; - $this->setChild( - 'update_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Update Qty\'s'), - 'class' => 'update-button', - 'onclick' => $onclick, - )) - ); + $this->addChild('update_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Update Qty\'s'), + 'class' => 'update-button', + 'onclick' => $onclick, + )); if ($this->getCreditmemo()->canRefund()) { if ($this->getCreditmemo()->getInvoice() && $this->getCreditmemo()->getInvoice()->getTransactionId()) { - $this->setChild( - 'submit_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund'), - 'class' => 'save submit-button', - 'onclick' => 'disableElements(\'submit-button\');submitCreditMemo()', - )) - ); - } - $this->setChild( - 'submit_offline', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund Offline'), + $this->addChild('submit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund'), 'class' => 'save submit-button', - 'onclick' => 'disableElements(\'submit-button\');submitCreditMemoOffline()', - )) - ); + 'onclick' => 'disableElements(\'submit-button\');submitCreditMemo()', + )); + } + $this->addChild('submit_offline', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund Offline'), + 'class' => 'save submit-button', + 'onclick' => 'disableElements(\'submit-button\');submitCreditMemoOffline()', + )); } else { - $this->setChild( - 'submit_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund Offline'), - 'class' => 'save submit-button', - 'onclick' => 'disableElements(\'submit-button\');submitCreditMemoOffline()', - )) - ); + $this->addChild('submit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Refund Offline'), + 'class' => 'save submit-button', + 'onclick' => 'disableElements(\'submit-button\');submitCreditMemoOffline()', + )); } return parent::_prepareLayout(); diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Form.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Form.php index 4722b59e6e862..0a610161d2e88 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Form.php @@ -69,10 +69,7 @@ protected function _prepareLayout() ->setOrder($this->getInvoice()->getOrder()); $this->setChild('order_info', $infoBlock); */ - /* $this->setChild( - 'items', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Sales_Order_Invoice_Create_Items') - ); + /* $this->addChild('items', 'Mage_Adminhtml_Block_Sales_Order_Invoice_Create_Items'); */ $trackingBlock = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Sales_Order_Invoice_Create_Tracking'); //$this->setChild('order_tracking', $trackingBlock); diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Items.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Items.php index 16b4b14951821..d783d623f3c4d 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Items.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Items.php @@ -44,14 +44,11 @@ class Mage_Adminhtml_Block_Sales_Order_Invoice_Create_Items extends Mage_Adminht protected function _beforeToHtml() { $onclick = "submitAndReloadArea($('invoice_item_container'),'".$this->getUpdateUrl()."')"; - $this->setChild( - 'update_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'class' => 'update-button', - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Update Qty\'s'), - 'onclick' => $onclick, - )) - ); + $this->addChild('update_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'class' => 'update-button', + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Update Qty\'s'), + 'onclick' => $onclick, + )); $this->_disableSubmitButton = true; $_submitButtonClass = ' disabled'; foreach ($this->getInvoice()->getAllItems() as $item) { @@ -69,15 +66,12 @@ protected function _beforeToHtml() } else { $_submitLabel = Mage::helper('Mage_Sales_Helper_Data')->__('Submit Invoice'); } - $this->setChild( - 'submit_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => $_submitLabel, - 'class' => 'save submit-button' . $_submitButtonClass, - 'onclick' => 'disableElements(\'submit-button\');$(\'edit_form\').submit()', - 'disabled' => $this->_disableSubmitButton - )) - ); + $this->addChild('submit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => $_submitLabel, + 'class' => 'save submit-button' . $_submitButtonClass, + 'onclick' => 'disableElements(\'submit-button\');$(\'edit_form\').submit()', + 'disabled' => $this->_disableSubmitButton + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Tracking.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Tracking.php index 3ddca10d5fbd2..c0f1e1d6ada6d 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Tracking.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create/Tracking.php @@ -45,14 +45,11 @@ public function _construct() */ protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add Tracking Number'), - 'class' => '', - 'onclick' => 'trackingControl.add()' - )) - ); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add Tracking Number'), + 'class' => '', + 'onclick' => 'trackingControl.add()' + )); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Form.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Form.php index 5de4d37058132..4f90b78af32eb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Form.php @@ -70,14 +70,8 @@ protected function _prepareLayout() // ->setOrder($this->getShipment()->getOrder()); // $this->setChild('order_info', $infoBlock); - $this->setChild( - 'items', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Items') - ); - $this->setChild( - 'tracking', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Tracking') - ); + $this->addChild('items', 'Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Items'); + $this->addChild('tracking', 'Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Tracking'); // $paymentInfoBlock = $this->getLayout()->createBlock('Mage_Adminhtml_Block_Sales_Order_Payment') // ->setPayment($this->getShipment()->getOrder()->getPayment()); // $this->setChild('payment_info', $paymentInfoBlock); diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Items.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Items.php index 2b3e2fb7b77f2..8308432ab8aac 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Items.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Items.php @@ -69,14 +69,11 @@ public function getShipment() */ protected function _beforeToHtml() { - $this->setChild( - 'submit_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Submit Shipment'), - 'class' => 'save submit-button', - 'onclick' => 'submitShipment(this);', - )) - ); + $this->addChild('submit_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Submit Shipment'), + 'class' => 'save submit-button', + 'onclick' => 'submitShipment(this);', + )); return parent::_beforeToHtml(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Tracking.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Tracking.php index 3835aca15cb71..4927a9d636aac 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Tracking.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create/Tracking.php @@ -40,15 +40,11 @@ class Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Tracking extends Mage_Adm */ protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add Tracking Number'), - 'class' => '', - 'onclick' => 'trackingControl.add()' - )) - - ); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add Tracking Number'), + 'class' => '', + 'onclick' => 'trackingControl.add()' + )); } diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/View/Tracking.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/View/Tracking.php index f2d40d0edc84d..3ab25c747ea31 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/View/Tracking.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/View/Tracking.php @@ -41,15 +41,11 @@ class Mage_Adminhtml_Block_Sales_Order_Shipment_View_Tracking extends Mage_Admin protected function _prepareLayout() { $onclick = "submitAndReloadArea($('shipment_tracking_info').parentNode, '".$this->getSubmitUrl()."')"; - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add'), - 'class' => 'save', - 'onclick' => $onclick - )) - - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Sales_Helper_Data')->__('Add'), + 'class' => 'save', + 'onclick' => $onclick + )); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Giftmessage.php b/app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Giftmessage.php index fcf122969d871..d5dcbe4721e70 100644 --- a/app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Giftmessage.php +++ b/app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Giftmessage.php @@ -72,13 +72,10 @@ protected function _beforeToHtml() */ protected function _prepareLayout() { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_GiftMessage_Helper_Data')->__('Save Gift Message'), - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_GiftMessage_Helper_Data')->__('Save Gift Message'), + 'class' => 'save' + )); return $this; } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Cache/Edit.php b/app/code/core/Mage/Adminhtml/Block/System/Cache/Edit.php index b1bcf6d04eadd..ddf1c1272e21a 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Cache/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Cache/Edit.php @@ -42,14 +42,11 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Cache Settings'), - 'onclick' => 'configForm.submit()', - 'class' => 'save', - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Cache Settings'), + 'onclick' => 'configForm.submit()', + 'class' => 'save', + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Config/Edit.php b/app/code/core/Mage/Adminhtml/Block/System/Config/Edit.php index 006d82e14e192..3a5b3fd0bc2fc 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Config/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Config/Edit.php @@ -53,14 +53,11 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Config'), - 'onclick' => 'configForm.submit()', - 'class' => 'save', - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Config'), + 'onclick' => 'configForm.submit()', + 'class' => 'save', + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Config/Form.php b/app/code/core/Mage/Adminhtml/Block/System/Config/Form.php index 01e60ab889ddf..e447e6de992fc 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Config/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Config/Form.php @@ -240,8 +240,7 @@ protected function _initGroup($group, $section, $form) protected function _getDependence() { if (!$this->getChildBlock('element_dependence')){ - $this->setChild('element_dependence', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Form_Element_Dependence')); + $this->addChild('element_dependence', 'Mage_Adminhtml_Block_Widget_Form_Element_Dependence'); } return $this->getChildBlock('element_dependence'); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Convert/Gui/Grid.php b/app/code/core/Mage/Adminhtml/Block/System/Convert/Gui/Grid.php index 8ab719ae28d36..3cfc301450bf6 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Convert/Gui/Grid.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Convert/Gui/Grid.php @@ -76,16 +76,16 @@ protected function _prepareColumns() 'options' => array('product'=>'Products', 'customer'=>'Customers'), 'width' => '120px', )); - - $this->addColumn('store_id', array( - 'header' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Store'), - 'type' => 'options', - 'align' => 'center', - 'index' => 'store_id', - 'type' => 'store', - 'width' => '200px', - )); - + if (!Mage::app()->isSingleStoreMode()){ + $this->addColumn('store_id', array( + 'header' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Store'), + 'type' => 'options', + 'align' => 'center', + 'index' => 'store_id', + 'type' => 'store', + 'width' => '200px', + )); + } $this->addColumn('created_at', array( 'header' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Created At'), 'type' => 'datetime', diff --git a/app/code/core/Mage/Adminhtml/Block/System/Currency.php b/app/code/core/Mage/Adminhtml/Block/System/Currency.php index 4a27d0791af6f..90becf8122361 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Currency.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Currency.php @@ -42,37 +42,27 @@ protected function _construct() protected function _prepareLayout() { - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Currency Rates'), - 'onclick' => 'currencyForm.submit();', - 'class' => 'save' - ))); - - $this->setChild('reset_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Reset'), - 'onclick' => 'document.location.reload()', - 'class' => 'reset' - ))); - - $this->setChild('import_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Import'), - 'class' => 'add', - 'type' => 'submit', - ))); - - $this->setChild('rates_matrix', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_System_Currency_Rate_Matrix') - ); - - $this->setChild('import_services', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_System_Currency_Rate_Services') - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Save Currency Rates'), + 'onclick' => 'currencyForm.submit();', + 'class' => 'save' + )); + + $this->addChild('reset_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Reset'), + 'onclick' => 'document.location.reload()', + 'class' => 'reset' + )); + + $this->addChild('import_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Import'), + 'class' => 'add', + 'type' => 'submit', + )); + + $this->addChild('rates_matrix', 'Mage_Adminhtml_Block_System_Currency_Rate_Matrix'); + + $this->addChild('import_services', 'Mage_Adminhtml_Block_System_Currency_Rate_Services'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Design.php b/app/code/core/Mage/Adminhtml/Block/System/Design.php index caa6ee7063e32..c28cb358c9a96 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Design.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Design.php @@ -31,14 +31,11 @@ protected function _prepareLayout() { $this->setTemplate('system/design/index.phtml'); - $this->setChild('add_new_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Design Change'), - 'onclick' => "setLocation('".$this->getUrl('*/*/new')."')", - 'class' => 'add' - )) - ); + $this->addChild('add_new_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Design Change'), + 'onclick' => "setLocation('".$this->getUrl('*/*/new')."')", + 'class' => 'add' + )); $this->setChild('grid', $this->getLayout()->createBlock( 'Mage_Adminhtml_Block_System_Design_Grid', diff --git a/app/code/core/Mage/Adminhtml/Block/System/Design/Edit.php b/app/code/core/Mage/Adminhtml/Block/System/Design/Edit.php index f2905b1e8b3dd..175b53848ae2a 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Design/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Design/Edit.php @@ -35,32 +35,23 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), - 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', - 'class' => 'back' - )) - ); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), + 'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')', + 'class' => 'back' + )); - $this->setChild('save_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Save'), - 'onclick' => 'designForm.submit()', - 'class' => 'save' - )) - ); + $this->addChild('save_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Save'), + 'onclick' => 'designForm.submit()', + 'class' => 'save' + )); - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete'), - 'onclick' => 'confirmSetLocation(\''.Mage::helper('Mage_Core_Helper_Data')->__('Are you sure?').'\', \''.$this->getDeleteUrl().'\')', - 'class' => 'delete' - )) - ); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete'), + 'onclick' => 'confirmSetLocation(\''.Mage::helper('Mage_Core_Helper_Data')->__('Are you sure?').'\', \''.$this->getDeleteUrl().'\')', + 'class' => 'delete' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Email/Template.php b/app/code/core/Mage/Adminhtml/Block/System/Email/Template.php index 2921fb58b3c1c..4a7cc366b54d8 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Email/Template.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Email/Template.php @@ -51,13 +51,11 @@ protected function _construct() */ protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Add New Template'), - 'onclick' => "window.location='" . $this->getCreateUrl() . "'", - 'class' => 'add' - ))); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Add New Template'), + 'onclick' => "window.location='" . $this->getCreateUrl() . "'", + 'class' => 'add' + )); $this->setChild( 'grid', $this->getLayout()->createBlock('Mage_Adminhtml_Block_System_Email_Template_Grid', 'email.template.grid') diff --git a/app/code/core/Mage/Adminhtml/Block/System/Email/Template/Edit.php b/app/code/core/Mage/Adminhtml/Block/System/Email/Template/Edit.php index 893d9d445d0ab..5c2e3befdb877 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Email/Template/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Email/Template/Edit.php @@ -148,9 +148,7 @@ protected function _prepareLayout() ); - $this->setChild('form', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_System_Email_Template_Edit_Form') - ); + $this->addChild('form', 'Mage_Adminhtml_Block_System_Email_Template_Edit_Form'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Group.php b/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Group.php index 38021deacb299..977337a817623 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Group.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Group.php @@ -40,31 +40,22 @@ protected function _prepareLayout() $this->setTemplate('system/store/delete_group.phtml'); $this->setAction($this->getUrl('*/*/deleteGroupPost', array('group_id'=>$itemId))); - $this->setChild('confirm_deletion_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete Store'), - 'onclick' => "deleteForm.submit()", - 'class' => 'cancel' - )) - ); + $this->addChild('confirm_deletion_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete Store'), + 'onclick' => "deleteForm.submit()", + 'class' => 'cancel' + )); $onClick = "setLocation('".$this->getUrl('*/*/editGroup', array('group_id'=>$itemId))."')"; - $this->setChild('cancel_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Cancel'), - 'onclick' => $onClick, - 'class' => 'cancel' - )) - ); - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), - 'onclick' => $onClick, - 'class' => 'cancel' - )) - ); + $this->addChild('cancel_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Cancel'), + 'onclick' => $onClick, + 'class' => 'cancel' + )); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), + 'onclick' => $onClick, + 'class' => 'cancel' + )); return parent::_prepareLayout(); } } diff --git a/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Website.php b/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Website.php index 8e79abc8d6988..c6ded65f3a233 100644 --- a/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Website.php +++ b/app/code/core/Mage/Adminhtml/Block/System/Store/Delete/Website.php @@ -40,31 +40,22 @@ protected function _prepareLayout() $this->setTemplate('system/store/delete_website.phtml'); $this->setAction($this->getUrl('*/*/deleteWebsitePost', array('website_id'=>$itemId))); - $this->setChild('confirm_deletion_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete Website'), - 'onclick' => "deleteForm.submit()", - 'class' => 'cancel' - )) - ); + $this->addChild('confirm_deletion_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Delete Website'), + 'onclick' => "deleteForm.submit()", + 'class' => 'cancel' + )); $onClick = "setLocation('".$this->getUrl('*/*/editWebsite', array('website_id'=>$itemId))."')"; - $this->setChild('cancel_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Cancel'), - 'onclick' => $onClick, - 'class' => 'cancel' - )) - ); - $this->setChild('back_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), - 'onclick' => $onClick, - 'class' => 'cancel' - )) - ); + $this->addChild('cancel_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Cancel'), + 'onclick' => $onClick, + 'class' => 'cancel' + )); + $this->addChild('back_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Core_Helper_Data')->__('Back'), + 'onclick' => $onClick, + 'class' => 'cancel' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Form.php b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Form.php index 8806f90ae396f..42c1bdb713d7e 100644 --- a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Form.php @@ -177,4 +177,29 @@ protected function _prepareForm() return parent::_prepareForm(); } + + /** + * Get Tax Rates Collection + * + * @return array + */ + public function getRateCollection() + { + if ($this->getData('rate_collection') == null) { + $rateCollection = Mage::getModel('Mage_Tax_Model_Calculation_Rate')->getCollection() + ->joinRegionTable(); + $rates = array(); + + foreach ($rateCollection as $rate) { + $item = $rate->getData(); + foreach ($rate->getTitles() as $title) { + $item['title[' . $title->getStoreId() . ']'] = $title->getValue(); + } + $rates[] = $item; + } + + $this->setRateCollection($rates); + } + return $this->getData('rate_collection'); + } } diff --git a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Add.php b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Add.php index f8d382bc13150..861c07bbc34c9 100644 --- a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Add.php +++ b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Add.php @@ -42,14 +42,11 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('addButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Add New Tax Rate'), - 'onclick' => 'window.location.href=\''.$this->getUrl('*/tax_rate/add').'\'', - 'class' => 'add' - )) - ); + $this->addChild('addButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Add New Tax Rate'), + 'onclick' => 'window.location.href=\''.$this->getUrl('*/tax_rate/add').'\'', + 'class' => 'add' + )); return parent::_prepareLayout(); } } diff --git a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Save.php b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Save.php index e318311bfc5cc..35e56195b9d7b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Save.php +++ b/app/code/core/Mage/Adminhtml/Block/Tax/Rate/Toolbar/Save.php @@ -43,40 +43,28 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('backButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Back'), - 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', - 'class' => 'back' - )) - ); + $this->addChild('backButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Back'), + 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', + 'class' => 'back' + )); - $this->setChild('resetButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Reset'), - 'onclick' => 'window.location.reload()' - )) - ); + $this->addChild('resetButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Reset'), + 'onclick' => 'window.location.reload()' + )); - $this->setChild('saveButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Save Rate'), - 'onclick' => 'wigetForm.submit();return false;', - 'class' => 'save' - )) - ); + $this->addChild('saveButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Save Rate'), + 'onclick' => 'wigetForm.submit();return false;', + 'class' => 'save' + )); - $this->setChild('deleteButton', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Delete Rate'), - 'onclick' => 'deleteConfirm(\'' . Mage::helper('Mage_Tax_Helper_Data')->__('Are you sure you want to do this?') . '\', \'' . $this->getUrl('*/*/delete', array('rate' => $this->getRequest()->getParam('rate'))) . '\')', - 'class' => 'delete' - )) - ); + $this->addChild('deleteButton', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Delete Rate'), + 'onclick' => 'deleteConfirm(\'' . Mage::helper('Mage_Tax_Helper_Data')->__('Are you sure you want to do this?') . '\', \'' . $this->getUrl('*/*/delete', array('rate' => $this->getRequest()->getParam('rate'))) . '\')', + 'class' => 'delete' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Adminhtml/Block/Tax/Rule/Edit/Form.php b/app/code/core/Mage/Adminhtml/Block/Tax/Rule/Edit/Form.php index 9fb12c24b7d58..1845f84358ec2 100644 --- a/app/code/core/Mage/Adminhtml/Block/Tax/Rule/Edit/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Tax/Rule/Edit/Form.php @@ -32,7 +32,7 @@ * @author Magento Core Team */ -class Mage_Adminhtml_Block_Tax_Rule_Edit_Form extends Mage_Adminhtml_Block_Widget_Form +class Mage_Adminhtml_Block_Tax_Rule_Edit_Form extends Mage_Backend_Block_Widget_Form { /** * Init class @@ -86,25 +86,50 @@ protected function _prepareForm() ) ); - $fieldset->addField('tax_customer_class', 'multiselect', + // Editable multiselect for customer tax class + $selectConfigJson = Mage::helper('Mage_Core_Helper_Data')->jsonEncode( + $this->getTaxClassSelectConfig(Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER) + ); + $selectAfterHtml = ''; + $fieldset->addField($this->getTaxClassSelectHtmlId(Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER), + 'multiselect', array( - 'name' => 'tax_customer_class', - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Customer Tax Class'), - 'class' => 'required-entry', - 'values' => $customerClasses, - 'value' => $model->getCustomerTaxClasses(), - 'required' => true, + 'name' => $this->getTaxClassSelectHtmlId(Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER), + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Customer Tax Class'), + 'class' => 'required-entry', + 'values' => $customerClasses, + 'value' => $model->getCustomerTaxClasses(), + 'required' => true, + 'after_element_html' => $selectAfterHtml, ) ); - $fieldset->addField('tax_product_class', 'multiselect', + // Editable multiselect for product tax class + $selectConfigJson = Mage::helper('Mage_Core_Helper_Data')->jsonEncode( + $this->getTaxClassSelectConfig(Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT) + ); + $selectAfterHtml = ''; + $fieldset->addField($this->getTaxClassSelectHtmlId(Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT), 'multiselect', array( - 'name' => 'tax_product_class', - 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Product Tax Class'), - 'class' => 'required-entry', - 'values' => $productClasses, - 'value' => $model->getProductTaxClasses(), - 'required' => true, + 'name' => $this->getTaxClassSelectHtmlId(Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT), + 'label' => Mage::helper('Mage_Tax_Helper_Data')->__('Product Tax Class'), + 'class' => 'required-entry', + 'values' => $productClasses, + 'value' => $model->getProductTaxClasses(), + 'required' => true, + 'after_element_html' => $selectAfterHtml, ) ); @@ -155,4 +180,71 @@ protected function _prepareForm() return parent::_prepareForm(); } + + /** + * Retrieve HTML element ID for corresponding tax class selector + * + * @param string $classType + * @return string + */ + public function getTaxClassSelectHtmlId($classType) + { + return 'tax_' . strtolower($classType) . '_class'; + } + + + /** + * Retrieve configuration options for tax class editable multiselect + * + * @param string $classType + * @return array + */ + public function getTaxClassSelectConfig($classType) + { + $config = array( + 'class_type' => $classType, + 'new_url' => $this->getUrl('*/tax_class/ajaxSave/'), + 'save_url' => $this->getUrl('*/tax_class/ajaxSave/'), + 'delete_url' => $this->getTaxClassDeleteUrl($classType), + 'delete_confirm_message' => Mage::helper('Mage_Tax_Helper_Data')->__('Do you really want to delete this tax class?'), + 'target_select_id' => $this->getTaxClassSelectHtmlId($classType), + 'add_button_caption' => Mage::helper('Mage_Tax_Helper_Data')->__('Add New Tax Class'), + ); + return $config; + } + + /** + * Retrieve tax class delete URL + * + * @param string $classType + * @return string + */ + public function getTaxClassDeleteUrl($classType) + { + $url = $this->getUrl('*/tax_class_product/ajaxDelete/'); + if ($classType == Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER) { + $url = $this->getUrl('*/tax_class_customer/ajaxDelete/'); + } + return $url; + } + + /** + * Retrieve Tax Rate delete URL + * + * @return string + */ + public function getTaxRateDeleteUrl() + { + return $this->getUrl('*/tax_rate/ajaxDelete/'); + } + + /** + * Retrieve Tax Rate save URL + * + * @return string + */ + public function getTaxRateSaveUrl() + { + return $this->getUrl('*/tax_rate/ajaxSave/'); + } } diff --git a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php index dbc666919c338..268e38ed444ac 100644 --- a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php @@ -80,13 +80,11 @@ private function _addCategoryLinkBlock() { /** @var $helper Mage_Adminhtml_Helper_Data */ $helper = Mage::helper('Mage_Adminhtml_Helper_Data'); - $this->setChild('category_link', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Link') - ->setData(array( - 'item_url' => $helper->getUrl('*/*/*') . 'category', - 'item_name' => $this->_getCategory()->getName(), - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Category:') - )) - ); + $this->addChild('category_link', 'Mage_Adminhtml_Block_Urlrewrite_Link', array( + 'item_url' => $helper->getUrl('*/*/*') . 'category', + 'item_name' => $this->_getCategory()->getName(), + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Category:') + )); } /** @@ -94,10 +92,7 @@ private function _addCategoryLinkBlock() */ private function _addCategoryTreeBlock() { - $this->setChild( - 'categories_tree', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Tree') - ); + $this->addChild('categories_tree', 'Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Tree'); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php index 20c8d0e827a33..43de578c7dfcb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php @@ -112,13 +112,11 @@ private function _addProductLinkBlock() { /** @var $helper Mage_Adminhtml_Helper_Data */ $helper = Mage::helper('Mage_Adminhtml_Helper_Data'); - $this->setChild('product_link', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Link') - ->setData(array( - 'item_url' => $helper->getUrl('*/*/*') . 'product', - 'item_name' => $this->_getProduct()->getName(), - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Product:') - )) - ); + $this->addChild('product_link', 'Mage_Adminhtml_Block_Urlrewrite_Link', array( + 'item_url' => $helper->getUrl('*/*/*') . 'product', + 'item_name' => $this->_getProduct()->getName(), + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Product:') + )); } /** @@ -128,13 +126,11 @@ private function _addCategoryLinkBlock() { /** @var $helper Mage_Adminhtml_Helper_Data */ $helper = Mage::helper('Mage_Adminhtml_Helper_Data'); - $this->setChild('category_link', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Link') - ->setData(array( - 'item_url' => $helper->getUrl('*/*/*', array('product' => $this->_getProduct()->getId())) . 'category', - 'item_name' => $this->_getCategory()->getName(), - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Category:') - )) - ); + $this->addChild('category_link', 'Mage_Adminhtml_Block_Urlrewrite_Link', array( + 'item_url' => $helper->getUrl('*/*/*', array('product' => $this->_getProduct()->getId())) . 'category', + 'item_name' => $this->_getCategory()->getName(), + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Category:') + )); } /** @@ -142,10 +138,7 @@ private function _addCategoryLinkBlock() */ private function _addProductsGridBlock() { - $this->setChild( - 'products_grid', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Catalog_Product_Grid') - ); + $this->addChild('products_grid', 'Mage_Adminhtml_Block_Urlrewrite_Catalog_Product_Grid'); } /** @@ -153,10 +146,7 @@ private function _addProductsGridBlock() */ private function _addCategoriesTreeBlock() { - $this->setChild( - 'categories_tree', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Tree') - ); + $this->addChild('categories_tree', 'Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Tree'); } /** @@ -166,15 +156,13 @@ private function _addSkipCategoriesBlock() { /** @var $helper Mage_Adminhtml_Helper_Data */ $helper = Mage::helper('Mage_Adminhtml_Helper_Data'); - $this->setChild('skip_categories', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->setData(array( - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Skip Category Selection'), - 'onclick' => 'window.location = \'' - . $helper->getUrl('*/*/*', array('product' => $this->_getProduct()->getId())) . '\'', - 'class' => 'save', - 'level' => -1 - )) - ); + $this->addChild('skip_categories', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Skip Category Selection'), + 'onclick' => 'window.location = \'' + . $helper->getUrl('*/*/*', array('product' => $this->_getProduct()->getId())) . '\'', + 'class' => 'save', + 'level' => -1 + )); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php index f2d41f46271b5..7377f7d0695a0 100644 --- a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php +++ b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php @@ -80,13 +80,11 @@ private function _addCmsPageLinkBlock() { /** @var $helper Mage_Adminhtml_Helper_Data */ $helper = Mage::helper('Mage_Adminhtml_Helper_Data'); - $this->setChild('cms_page_link', $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Link') - ->setData(array( - 'item_url' => $helper->getUrl('*/*/*') . 'cms_page', - 'item_name' => $this->getCmsPage()->getTitle(), - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('CMS page:') - )) - ); + $this->addChild('cms_page_link', 'Mage_Adminhtml_Block_Urlrewrite_Link', array( + 'item_url' => $helper->getUrl('*/*/*') . 'cms_page', + 'item_name' => $this->getCmsPage()->getTitle(), + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('CMS page:') + )); } /** @@ -94,10 +92,7 @@ private function _addCmsPageLinkBlock() */ private function _addCmsPageGridBlock() { - $this->setChild( - 'cms_pages_grid', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Urlrewrite_Cms_Page_Grid') - ); + $this->addChild('cms_pages_grid', 'Mage_Adminhtml_Block_Urlrewrite_Cms_Page_Grid'); } /** diff --git a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Edit/Form.php b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Edit/Form.php index ee3f282e9744f..2e3c77b911881 100644 --- a/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Edit/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Urlrewrite/Edit/Form.php @@ -191,7 +191,7 @@ protected function _prepareForm() protected function _prepareStoreElement($fieldset) { // get store switcher or a hidden field with it's id - if (Mage::app()->hasSingleStore()) { + if (Mage::app()->isSingleStoreMode()) { $fieldset->addField('store_id', 'hidden', array( 'name' => 'store_id', 'value' => Mage::app()->getStore(true)->getId() diff --git a/app/code/core/Mage/Adminhtml/Block/Widget.php b/app/code/core/Mage/Adminhtml/Block/Widget.php index c47a1808ff200..3b90c65ecd2d8 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget extends Mage_Backend_Block_Widget { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Accordion.php b/app/code/core/Mage/Adminhtml/Block/Widget/Accordion.php index cff15caf49848..506bcf704863f 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Accordion.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Accordion.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Accordion extends Mage_Backend_Block_Widget_Accordion { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Accordion/Item.php b/app/code/core/Mage/Adminhtml/Block/Widget/Accordion/Item.php index b60d9e52ba934..475f60cd2bf2f 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Accordion/Item.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Accordion/Item.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Accordion_Item extends Mage_Backend_Block_Widget_Accordion_Item { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Breadcrumbs.php b/app/code/core/Mage/Adminhtml/Block/Widget/Breadcrumbs.php index 2b58e15e57316..379c97ad735ca 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Breadcrumbs.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Breadcrumbs.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Breadcrumbs extends Mage_Backend_Block_Widget_Breadcrumbs { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Button.php b/app/code/core/Mage/Adminhtml/Block/Widget/Button.php index 3a45d409bd093..bd70856fec119 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Button.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Button.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Button extends Mage_Backend_Block_Widget_Button { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Container.php b/app/code/core/Mage/Adminhtml/Block/Widget/Container.php index 80fd782442c21..944c15d016dd5 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Container.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Container.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Container extends Mage_Backend_Block_Widget_Container { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form.php index 9dc181070e9ac..0ba29d6cfe7e4 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form extends Mage_Backend_Block_Widget_Form { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element.php index 2d250475e022b..deba27b2e46d5 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form_Element extends Mage_Backend_Block_Widget_Form_Element { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Dependence.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Dependence.php index b9c7140abf6b0..cdafe82d26d6a 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Dependence.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Dependence.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form_Element_Dependence extends Mage_Backend_Block_Widget_Form_Element_Dependence { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Gallery.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Gallery.php index 3a70290299e66..06dd8f46cdeb3 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Gallery.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Element/Gallery.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form_Element_Gallery extends Mage_Backend_Block_Widget_Form_Element_Gallery { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Element.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Element.php index ec995520daaf2..3a220aa684da8 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Element.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Element.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form_Renderer_Element extends Mage_Backend_Block_Widget_Form_Renderer_Element { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php index 1dfbfbd4f4612..9f9de827d99f1 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset extends Mage_Backend_Block_Widget_Form_Renderer_Fieldset { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php index ef6315b109fd0..3853006642410 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element + */ +class Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element extends Mage_Backend_Block_Widget_Form_Renderer_Fieldset_Element { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid.php index 3b0ac5fe16c0f..ecd2c84b570c4 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid extends Mage_Backend_Block_Widget_Grid { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php index 0e9d601f67bc3..07f9a2f5ce598 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column extends Mage_Backend_Block_Widget_Grid_Column { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Abstract.php index 3f7cc9875208d..a23aa48d1e448 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Abstract.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Abstract + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Abstract extends Mage_Backend_Block_Widget_Grid_Column_Filter_Abstract { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php index 68d0617307d34..c45314a8d49d8 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Checkbox + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Checkbox extends Mage_Backend_Block_Widget_Grid_Column_Filter_Checkbox { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php index 051c9fb6a29cc..cfae5f6209a7b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Country + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Country extends Mage_Backend_Block_Widget_Grid_Column_Filter_Country { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php index 1ec885cbed124..b4862c00020c8 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Date extends Mage_Backend_Block_Widget_Grid_Column_Filter_Date { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php index f00ac7abaedec..c92a2350d4426 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Datetime + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Datetime extends Mage_Backend_Block_Widget_Grid_Column_Filter_Datetime { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Interface.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Interface.php index 52abb445f0b9d..7e9568db7797f 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Interface.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Interface.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -interface Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Interface + */ +interface Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Interface extends Mage_Backend_Block_Widget_Grid_Column_Filter_Interface { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php index 7db87c7e98e1a..9af47d16f289f 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Massaction + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Massaction extends Mage_Backend_Block_Widget_Grid_Column_Filter_Massaction { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php index c805963065ae0..35ac72cac23b7 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Price extends Mage_Backend_Block_Widget_Grid_Column_Filter_Price { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php index 10e374622d32d..456b4f5e8d822 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Radio extends Mage_Backend_Block_Widget_Grid_Column_Filter_Radio { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php index 258dc19cffd7e..fe00ea22d7b91 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Range extends Mage_Backend_Block_Widget_Grid_Column_Filter_Range { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php index d623c37b8eefb..f9f5e8682e627 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Select extends Mage_Backend_Block_Widget_Grid_Column_Filter_Select { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php index 37cf5e9786b92..2c1aa4208677b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Store extends Mage_Backend_Block_Widget_Grid_Column_Filter_Store { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php index afb8b50dc2790..f02bd6b737309 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Text extends Mage_Backend_Block_Widget_Grid_Column_Filter_Text { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php index 9d17bceea28f6..75c6c51615e76 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Theme extends Mage_Backend_Block_Widget_Grid_Column_Filter_Theme { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php index c43c6a5fd96d2..7631d84b2ab28 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Abstract { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php index 43cf612e36c69..ce2602e7e2dec 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Action { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php index 6020abde92c6c..be17c0d370082 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Checkbox + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Checkbox extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Checkbox { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php index 056f3a8db2d98..9803cdd400841 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Concat + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Concat extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Concat { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php index e9911e8a94eb9..10da94600af34 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Country + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Country extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Country { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php index 71a2a46672878..6332988754127 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Currency + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Currency extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Currency { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php index 029f9d17518fb..6575816279397 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Date extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Date { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php index 9dc24b387a40e..d751a5d0b7b2c 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Datetime + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Datetime extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Datetime { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php index acd1fd7cc1bc8..a0ac716a7e207 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Input + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Input extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Input { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Interface.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Interface.php index 5c0de57bd0be0..56cb4c0a730c0 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Interface.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Interface.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -interface Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Interface + */ +interface Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Interface extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Interface { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php index 81471b4f311e7..e8340765b597b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Ip extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Ip { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php index d49f2446aa5b4..5e72c0b999bdb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Longtext + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Longtext extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Longtext { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php index 29dd5fa74032c..6f599a45f9480 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Massaction + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Massaction extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Massaction { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php index d333d13455d6c..ec9e09f9422a6 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Number + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Number extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Number { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php index 5d080cc829e79..f17bff1dc10db 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Options + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Options extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Options { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php index d61379878418e..5a87eb4aecc2b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Price + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Price extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Price { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php index eb3f0b4762fe9..f0f197e928d8f 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Radio + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Radio extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Radio { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php index 3dc7782dd0ff4..6a4b5836bb291 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Select + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Select extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Select { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php index 3bb6813906d27..61e1e14d3dcbb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Store + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Store extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Store { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php index 7824bdd6bd279..0696c180102cd 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Text extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Text { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php index 8e4c876cb1ff9..5010cb3421e82 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Wrapline + */ +class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Wrapline extends Mage_Backend_Block_Widget_Grid_Column_Renderer_Wrapline { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction.php index 7d6e3d1277bda..3c4100ff4d9cb 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Massaction extends Mage_Backend_Block_Widget_Grid_Massaction { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Abstract.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Abstract.php index 8b8ad983a8b94..32abbeb8aef2e 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Abstract.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Abstract.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Massaction_Abstract extends Mage_Backend_Block_Widget_Grid_Massaction_Abstract { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item.php index a33bf718a5f06..e7f06d4f094d3 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Massaction_Item extends Mage_Backend_Block_Widget_Grid_Massaction_Item { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Default.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Default.php index f74711227dab4..63aa2c0b8c78b 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Default.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Default.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -class Mage_Adminhtml_Block_Widget_Grid_Massaction_Item_Additional_Default + */ +class Mage_Adminhtml_Block_Widget_Grid_Massaction_Item_Additional_Default extends Mage_Backend_Block_Widget_Grid_Massaction_Item_Additional_Default { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Interface.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Interface.php index 4233991bf31a0..d02f750c300de 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Interface.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/Interface.php @@ -29,8 +29,8 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ -interface Mage_Adminhtml_Block_Widget_Grid_Massaction_Item_Additional_Interface + */ +interface Mage_Adminhtml_Block_Widget_Grid_Massaction_Item_Additional_Interface extends Mage_Backend_Block_Widget_Grid_Massaction_Item_Additional_Interface { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Serializer.php b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Serializer.php index 86ea3157b5f29..8eb280ed49a9c 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Serializer.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Serializer.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Grid_Serializer extends Mage_Backend_Block_Widget_Grid_Serializer { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Tab/Interface.php b/app/code/core/Mage/Adminhtml/Block/Widget/Tab/Interface.php index a9f41482287bf..f90b4b3191c5a 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Tab/Interface.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Tab/Interface.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ interface Mage_Adminhtml_Block_Widget_Tab_Interface extends Mage_Backend_Block_Widget_Tab_Interface { diff --git a/app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php b/app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php index 6b1bb8cef7e73..62a501c4773a3 100644 --- a/app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php +++ b/app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php @@ -29,7 +29,7 @@ * @package Mage_Adminhtml * @author Magento Core Team * @deprecated Moved to module Mage_Backend - */ + */ class Mage_Adminhtml_Block_Widget_Tabs extends Mage_Backend_Block_Widget_Tabs { diff --git a/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php b/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php index df4759b3e904a..514c515fe6a63 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php @@ -190,6 +190,10 @@ public function indexAction() */ public function newAction() { + if (!$this->getRequest()->getParam('set') || !$this->getRequest()->getParam('type')) { + $this->_forward('noroute'); + return; + } $product = $this->_initProduct(); $productData = $this->getRequest()->getPost('product'); @@ -726,6 +730,7 @@ public function saveAction() $product = $this->_initProductSave($this->_initProduct()); try { + $originalSku = $product->getSku(); $product->save(); $productId = $product->getId(); @@ -745,6 +750,11 @@ public function saveAction() Mage::getModel('Mage_CatalogRule_Model_Rule')->applyAllRulesToProduct($productId); $this->_getSession()->addSuccess($this->__('The product has been saved.')); + if ($product->getSku() != $originalSku) { + $this->_getSession()->addNotice( + $this->__('SKU for product %s has been changed to %s.', Mage::helper('Mage_Core_Helper_Data')->escapeHtml($product->getName()), Mage::helper('Mage_Core_Helper_Data')->escapeHtml($product->getSku())) + ); + } } catch (Mage_Core_Exception $e) { $this->_getSession()->addError($e->getMessage()) ->setProductData($data); diff --git a/app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php b/app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php index 712fccd4329a9..5f0ddce2ef1ac 100644 --- a/app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php +++ b/app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php @@ -26,10 +26,6 @@ /** * Configuration controller - * - * @category Mage - * @package Mage_Adminhtml - * @author Magento Core Team */ class Mage_Adminhtml_System_ConfigController extends Mage_Adminhtml_Controller_Action { @@ -38,10 +34,10 @@ class Mage_Adminhtml_System_ConfigController extends Mage_Adminhtml_Controller_A * * @var bool */ - protected $_isSectionAllowedFlag = true; + protected $_isSectionAllowed = true; /** - * Controller predispatch method + * Controller pre-dispatch method * Check if current section is found and is allowed * * @return Mage_Adminhtml_System_ConfigController @@ -51,7 +47,7 @@ public function preDispatch() parent::preDispatch(); if ($this->getRequest()->getParam('section')) { - $this->_isSectionAllowedFlag = $this->_isSectionAllowed($this->getRequest()->getParam('section')); + $this->_isSectionAllowed = $this->_isSectionAllowed($this->getRequest()->getParam('section')); } return $this; @@ -92,12 +88,15 @@ public function editAction() $this->_setActiveMenu('Mage_Adminhtml::system_config'); $this->getLayout()->getBlock('menu')->setAdditionalCacheKeyInfo(array($current)); - $this->_addBreadcrumb(Mage::helper('Mage_Adminhtml_Helper_Data')->__('System'), Mage::helper('Mage_Adminhtml_Helper_Data')->__('System'), - $this->getUrl('*/system')); + $this->_addBreadcrumb( + Mage::helper('Mage_Adminhtml_Helper_Data')->__('System'), + Mage::helper('Mage_Adminhtml_Helper_Data')->__('System'), + $this->getUrl('*/system') + ); $this->getLayout()->addBlock('Mage_Adminhtml_Block_System_Config_Tabs', '', 'left')->initTabs(); - if ($this->_isSectionAllowedFlag) { + if ($this->_isSectionAllowed) { $this->_addContent($this->getLayout()->createBlock('Mage_Adminhtml_Block_System_Config_Edit')->initForm()); $this->_addJs($this->getLayout() @@ -116,30 +115,11 @@ public function editAction() /** * Save configuration - * */ public function saveAction() { - $session = Mage::getSingleton('Mage_Adminhtml_Model_Session'); /* @var $session Mage_Adminhtml_Model_Session */ - - $groups = $this->getRequest()->getPost('groups'); - - if (isset($_FILES['groups']['name']) && is_array($_FILES['groups']['name'])) { - /** - * Carefully merge $_FILES and $_POST information - * None of '+=' or 'array_merge_recursive' can do this correct - */ - foreach($_FILES['groups']['name'] as $groupName => $group) { - if (is_array($group)) { - foreach ($group['fields'] as $fieldName => $field) { - if (!empty($field['value'])) { - $groups[$groupName]['fields'][$fieldName] = array('value' => $field['value']); - } - } - } - } - } + $session = Mage::getSingleton('Mage_Adminhtml_Model_Session'); try { if (!$this->_isSectionAllowed($this->getRequest()->getParam('section'))) { @@ -151,48 +131,67 @@ public function saveAction() $section = $this->getRequest()->getParam('section'); $website = $this->getRequest()->getParam('website'); $store = $this->getRequest()->getParam('store'); - Mage::getModel('Mage_Adminhtml_Model_Config_Data') - ->setSection($section) - ->setWebsite($website) - ->setStore($store) - ->setGroups($groups) - ->save(); - - // reinit configuration + Mage::getModel('Mage_Adminhtml_Model_Config_Data')->setSection($section)->setWebsite($website) + ->setStore($store)->setGroups($this->_getGroupsForSave())->save(); + + // re-init configuration Mage::getConfig()->reinit(); Mage::dispatchEvent('admin_system_config_section_save_after', array( - 'website' => $website, - 'store' => $store, - 'section' => $section + 'website' => $website, 'store' => $store, 'section' => $section )); Mage::app()->reinitStores(); // website and store codes can be used in event implementation, so set them as well - Mage::dispatchEvent("admin_system_config_changed_section_{$section}", - array('website' => $website, 'store' => $store) - ); + Mage::dispatchEvent("admin_system_config_changed_section_{$section}", array( + 'website' => $website, 'store' => $store + )); $session->addSuccess(Mage::helper('Mage_Adminhtml_Helper_Data')->__('The configuration has been saved.')); - } - catch (Mage_Core_Exception $e) { - foreach(explode("\n", $e->getMessage()) as $message) { - $session->addError($message); - } - } - catch (Exception $e) { + } catch (Mage_Core_Exception $e) { + $messages = explode("\n", $e->getMessage()); + array_walk($messages, create_function( + '$message', 'Mage::getSingleton(\'Mage_Adminhtml_Model_Session\')->addError($message);' + )); + } catch (Exception $e) { $session->addException($e, - Mage::helper('Mage_Adminhtml_Helper_Data')->__('An error occurred while saving this configuration:') . ' ' - . $e->getMessage()); + Mage::helper('Mage_Adminhtml_Helper_Data')->__('An error occurred while saving this configuration:') + . ' ' . $e->getMessage()); } $this->_saveState($this->getRequest()->getPost('config_state')); - $this->_redirect('*/*/edit', array('_current' => array('section', 'website', 'store'))); } /** - * Custom save logic for section + * Get groups for save + * + * @return array|null + */ + protected function _getGroupsForSave() + { + $groups = $this->getRequest()->getPost('groups'); + + if (isset($_FILES['groups']['name']) && is_array($_FILES['groups']['name'])) { + /** + * Carefully merge $_FILES and $_POST information + * None of '+=' or 'array_merge_recursive' can do this correct + */ + foreach ($_FILES['groups']['name'] as $groupName => $group) { + if (is_array($group)) { + foreach ($group['fields'] as $fieldName => $field) { + if (!empty($field['value'])) { + $groups[$groupName]['fields'][$fieldName] = array('value' => $field['value']); + } + } + } + } + } + return $groups; + } + + /** + * Custom save logic for section */ - protected function _saveSection () + protected function _saveSection() { $method = '_save' . uc_words($this->getRequest()->getParam('section'), ''); if (method_exists($this, $method)) { @@ -201,27 +200,21 @@ protected function _saveSection () } /** - * Advanced save procedure + * Advanced save procedure */ protected function _saveAdvanced() { - Mage::app()->cleanCache( - array( - 'layout', - Mage_Core_Model_Layout_Update::LAYOUT_GENERAL_CACHE_TAG - )); + Mage::app()->cleanCache(array('layout', Mage_Core_Model_Layout_Merge::LAYOUT_GENERAL_CACHE_TAG)); } /** * Save fieldset state through AJAX - * */ public function stateAction() { - if ($this->getRequest()->getParam('isAjax') == 1 - && $this->getRequest()->getParam('container') != '' - && $this->getRequest()->getParam('value') != '') { - + if ($this->getRequest()->getParam('isAjax') == 1 && $this->getRequest()->getParam('container') != '' + && $this->getRequest()->getParam('value') != '' + ) { $configState = array( $this->getRequest()->getParam('container') => $this->getRequest()->getParam('value') ); @@ -232,7 +225,6 @@ public function stateAction() /** * Export shipping table rates in csv format - * */ public function exportTableratesAction() { @@ -266,6 +258,7 @@ protected function _isAllowed() * Will forward to deniedAction(), if not allowed. * * @param string $section + * @throws Exception * @return bool */ protected function _isSectionAllowed($section) @@ -277,13 +270,11 @@ protected function _isSectionAllowed($section) throw new Exception(''); } return true; - } - catch (Zend_Acl_Exception $e) { + } catch (Zend_Acl_Exception $e) { $this->norouteAction(); $this->setFlag('', self::FLAG_NO_DISPATCH, true); return false; - } - catch (Exception $e) { + } catch (Exception $e) { $this->deniedAction(); $this->setFlag('', self::FLAG_NO_DISPATCH, true); return false; diff --git a/app/code/core/Mage/Adminhtml/controllers/Tax/Class/CustomerController.php b/app/code/core/Mage/Adminhtml/controllers/Tax/Class/CustomerController.php index 1791d1fa58aa1..1232a75a74dff 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Tax/Class/CustomerController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Tax/Class/CustomerController.php @@ -159,6 +159,64 @@ public function deleteAction() $this->_redirect('*/*/edit/',array('id'=>$classId)); } + /** + * Delete Tax Class via AJAX + */ + public function ajaxDeleteAction() + { + $responseContent = ''; + $classId = (int)$this->getRequest()->getParam('class_id'); + try { + $classModel = Mage::getModel('Mage_Tax_Model_Class')->load($classId); + $this->_checkCustomerTaxClassUsage($classModel); + $classModel->delete(); + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => true, + 'error' => false, + 'error_message' => '' + )); + } catch (Mage_Core_Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => $e->getMessage() + )); + } catch (Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => Mage::helper('Mage_Tax_Helper_Data')->__('An error occurred while deleting this tax class.') + )); + } + $this->getResponse()->setBody($responseContent); + } + + /** + * Check if customer tax class exists and has not been used yet (in Tax Rules or Customer Groups) + * + * @param Mage_Tax_Model_Class $classModel + */ + protected function _checkCustomerTaxClassUsage(Mage_Tax_Model_Class $classModel) + { + if (!$classModel->getId() || $classModel->getClassType() != Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('This class no longer exists.')); + } + + $ruleCollection = Mage::getModel('Mage_Tax_Model_Calculation_Rule')->getCollection() + ->setClassTypeFilter(Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER, $classModel->getId()); + + if ($ruleCollection->getSize() > 0) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('You cannot delete this tax class as it is used in Tax Rules. You have to delete the rules it is used in first.')); + } + + $customerGroupCollection = Mage::getModel('Mage_Customer_Model_Group')->getCollection() + ->addFieldToFilter('tax_class_id', $classModel->getId()); + $groupCount = $customerGroupCollection->getSize(); + if ($groupCount > 0) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('You cannot delete this tax class as it is used for %d customer groups.', $groupCount)); + } + } + /** * Initialize action * diff --git a/app/code/core/Mage/Adminhtml/controllers/Tax/Class/ProductController.php b/app/code/core/Mage/Adminhtml/controllers/Tax/Class/ProductController.php index d3f5c88896891..3fb67d2d50d54 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Tax/Class/ProductController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Tax/Class/ProductController.php @@ -158,6 +158,64 @@ public function deleteAction() $this->_redirect('*/*/edit/', array('id' => $classId)); } + /** + * Delete Tax Class via AJAX + */ + public function ajaxDeleteAction() + { + $responseContent = ''; + $classId = (int)$this->getRequest()->getParam('class_id'); + try { + $classModel = Mage::getModel('Mage_Tax_Model_Class')->load($classId); + $this->_checkProductTaxClassUsage($classModel); + $classModel->delete(); + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => true, + 'error' => false, + 'error_message' => '' + )); + } catch (Mage_Core_Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => $e->getMessage() + )); + } catch (Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => Mage::helper('Mage_Tax_Helper_Data')->__('An error occurred while deleting this tax class.') + )); + } + $this->getResponse()->setBody($responseContent); + } + + /** + * Check if product tax class exists and has not been used yet (in Tax Rules or Products) + * + * @param Mage_Tax_Model_Class $classModel + */ + protected function _checkProductTaxClassUsage(Mage_Tax_Model_Class $classModel) + { + if (!$classModel->getId() || $classModel->getClassType() != Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('This class no longer exists.')); + } + + $ruleCollection = Mage::getModel('Mage_Tax_Model_Calculation_Rule')->getCollection() + ->setClassTypeFilter(Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT, $classModel->getId()); + + if ($ruleCollection->getSize() > 0) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('You cannot delete this tax class as it is used in Tax Rules. You have to delete the rules it is used in first.')); + } + + $productCollection = Mage::getModel('Mage_Catalog_Model_Product')->getCollection() + ->addAttributeToFilter('tax_class_id', $classModel->getId()); + $productCount = $productCollection->getSize(); + if ($productCount > 0) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data')->__('You cannot delete this tax class as it is used for %d products.', $productCount)); + } + } + /** * Initialize action * diff --git a/app/code/core/Mage/Adminhtml/controllers/Tax/ClassController.php b/app/code/core/Mage/Adminhtml/controllers/Tax/ClassController.php index 5b49eef109015..e77aadcc1904f 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Tax/ClassController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Tax/ClassController.php @@ -73,6 +73,83 @@ public function saveAction() $this->getResponse()->setRedirect($this->getUrl('*/tax_class')); } + /** + * Save Tax Class via AJAX + */ + public function ajaxSaveAction() + { + $responseContent = ''; + try { + $classData = array( + 'class_id' => (int)$this->getRequest()->getPost('class_id') ?: null, // keep null for new tax classes + 'class_type' => $this->_processClassType((string)$this->getRequest()->getPost('class_type')), + 'class_name' => $this->_processClassName((string)$this->getRequest()->getPost('class_name')) + ); + $class = Mage::getModel('Mage_Tax_Model_Class') + ->setData($classData) + ->save(); + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => true, + 'error' => false, + 'error_message' => '', + 'class_id' => $class->getId(), + 'class_name' => $class->getClassName() + )); + } catch (Mage_Core_Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => $e->getMessage(), + 'class_id' => '', + 'class_name' => '' + )); + } catch (Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => Mage::helper('Mage_Tax_Helper_Data') ->__('There was an error saving tax class.'), + 'class_id' => '', + 'class_name' => '' + )); + } + $this->getResponse()->setBody($responseContent); + } + + /** + * Validate/Filter Tax Class Type + * + * @param string $classType + * @return string processed class type + * @throws Mage_Core_Exception + */ + protected function _processClassType($classType) + { + $validClassTypes = array( + Mage_Tax_Model_Class::TAX_CLASS_TYPE_CUSTOMER, + Mage_Tax_Model_Class::TAX_CLASS_TYPE_PRODUCT + ); + if (!in_array($classType, $validClassTypes)) { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data') ->__('Invalid type of tax class specified.')); + } + return $classType; + } + + /** + * Validate/Filter Tax Class Name + * + * @param string $className + * @return string processed class name + * @throws Mage_Core_Exception + */ + protected function _processClassName($className) + { + $className = trim(strip_tags($className)); + if ($className == '') { + Mage::throwException(Mage::helper('Mage_Tax_Helper_Data') ->__('Invalid name of tax class specified.')); + } + return $className; + } + /** * Initialize action * diff --git a/app/code/core/Mage/Adminhtml/controllers/Tax/RateController.php b/app/code/core/Mage/Adminhtml/controllers/Tax/RateController.php index 3e5bac753fe72..d195e504f62ee 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Tax/RateController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Tax/RateController.php @@ -125,6 +125,63 @@ public function saveAction() $this->getResponse()->setRedirect($this->getUrl('*/tax_rate')); } + /** + * Save Tax Rate via AJAX + */ + public function ajaxSaveAction() + { + $responseContent = ''; + try { + $rateData = $this->_processRateData($this->getRequest()->getPost()); + $rate = Mage::getModel('Mage_Tax_Model_Calculation_Rate') + ->setData($rateData) + ->save(); + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => true, + 'error' => false, + 'error_message' => '', + 'tax_calculation_rate_id' => $rate->getId(), + 'code' => $rate->getCode(), + )); + } catch (Mage_Core_Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => $e->getMessage(), + 'tax_calculation_rate_id' => '', + 'code' => '', + )); + } catch (Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => Mage::helper('Mage_Tax_Helper_Data') ->__('There was an error saving tax rate.'), + 'tax_calculation_rate_id' => '', + 'code' => '', + )); + } + $this->getResponse()->setBody($responseContent); + } + + /** + * Validate/Filter Rate Data + * + * @param array $rateData + * @return array + */ + protected function _processRateData($rateData) + { + $result = array(); + foreach ($rateData as $key => $value) { + if (is_array($value)) { + $result[$key] = $this->_processRateData($value); + } else { + $result[$key] = trim(strip_tags($value)); + } + } + return $result; + } + /** * Show Edit Form * @@ -195,6 +252,38 @@ public function deleteAction() } } + /** + * Delete Tax Rate via AJAX + */ + public function ajaxDeleteAction() + { + + $responseContent = ''; + $rateId = (int)$this->getRequest()->getParam('tax_calculation_rate_id'); + try { + $rate = Mage::getModel('Mage_Tax_Model_Calculation_Rate')->load($rateId); + $rate->delete(); + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => true, + 'error' => false, + 'error_message' => '' + )); + } catch (Mage_Core_Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => $e->getMessage() + )); + } catch (Exception $e) { + $responseContent = Mage::helper('Mage_Core_Helper_Data')->jsonEncode(array( + 'success' => false, + 'error' => true, + 'error_message' => Mage::helper('Mage_Tax_Helper_Data')->__('An error occurred while deleting this tax rate.') + )); + } + $this->getResponse()->setBody($responseContent); + } + /** * Export rates grid to CSV format * diff --git a/app/code/core/Mage/Adminhtml/controllers/Tax/RuleController.php b/app/code/core/Mage/Adminhtml/controllers/Tax/RuleController.php index 16a9c172b33e8..289ef9d4021d1 100644 --- a/app/code/core/Mage/Adminhtml/controllers/Tax/RuleController.php +++ b/app/code/core/Mage/Adminhtml/controllers/Tax/RuleController.php @@ -79,9 +79,7 @@ public function editAction() $this->_initAction() ->_addBreadcrumb($taxRuleId ? Mage::helper('Mage_Tax_Helper_Data')->__('Edit Rule') : Mage::helper('Mage_Tax_Helper_Data')->__('New Rule'), $taxRuleId ? Mage::helper('Mage_Tax_Helper_Data')->__('Edit Rule') : Mage::helper('Mage_Tax_Helper_Data')->__('New Rule')) - ->_addContent($this->getLayout() - ->createBlock('Mage_Adminhtml_Block_Tax_Rule_Edit') - ->setData('action', $this->getUrl('*/tax_rule/save'))) + ->loadLayout() ->renderLayout(); } diff --git a/app/code/core/Mage/Adminhtml/etc/config.xml b/app/code/core/Mage/Adminhtml/etc/config.xml index ace25b0cb1eb5..1e490430708a2 100644 --- a/app/code/core/Mage/Adminhtml/etc/config.xml +++ b/app/code/core/Mage/Adminhtml/etc/config.xml @@ -148,6 +148,9 @@ sales.xml + + tax.xml + diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog.xml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog.xml index d252f79f097ed..9b1e555338cab 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog.xml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog.xml @@ -28,9 +28,11 @@ - + + jquery/jquery-1.7.1.min.js + mage/jquery-no-conflict.js Catalog - + Mage_Catalog::catalog_products diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/options.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/options.phtml index 7400c5eb28ae7..814910374472d 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/options.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/options.phtml @@ -118,7 +118,7 @@ var templateText = ''+ ''+ getReadOnly() && !$this->canManageOptionDefaultOnly()):?> - 'getDeleteButtonHtml() ?>'+ + jsonEncode($this->getDeleteButtonHtml()) ?> + '<\/td>'+ '<\/tr>'; diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/set/main.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/set/main.phtml index d49b59b32ffef..1076f12be4146 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/set/main.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/attribute/set/main.phtml @@ -256,10 +256,10 @@ }, SystemNodesExists : function(currentNode) { - for( i in currentNode.childNodes ) { - if( currentNode.childNodes[i].id ) { + for (i in currentNode.childNodes) { + if (currentNode.childNodes[i].id) { child = editSet.currentNode.childNodes[i]; - if( child.attributes.is_user_defined != 1 ) { + if (child.attributes.is_unassignable != 1) { return true; } } @@ -391,19 +391,17 @@ rightBeforeInsert : function(tree, nodeThis, node, newParent) { var empty = TreePanels.root2.findChild('id', 'empty'); - if( empty ) { + if (empty) { return false; } - if (node.attributes.is_user_defined == 0) { + if (node.attributes.is_unassignable == 0) { alert('jsQuoteEscape(Mage::helper('Mage_Catalog_Helper_Data')->__('You cannot remove system attribute from this set.')) ?>'); return false; - } - else if (node.attributes.is_configurable == 1) { + } else if (node.attributes.is_configurable == 1) { alert('jsQuoteEscape(Mage::helper('Mage_Catalog_Helper_Data')->__('This attribute is used in configurable products. You cannot remove it from the attribute set.')) ?>'); return false; - } - else { + } else { return true; } }, diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit.phtml index 0817d7e155364..b18d03181a15e 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit.phtml @@ -124,11 +124,88 @@ Event.observe(window, 'load', function() { product_info_tabsJsTabs.showTabContent(obj); } Product.AttributesBridge.setTabsObject(product_info_tabsJsTabs); + + (function ($) { + + var masks = helper('Mage_Core_Helper_Data')->jsonEncode($this->getFieldsAutogenerationMasks())?>; + var availablePlaceholders = helper('Mage_Core_Helper_Data')->jsonEncode($this->getAttributesAllowedForAutogeneration())?>; + var Autogenerator = function(masks) { + this._masks = masks || {}; + this._fieldReverseIndex = this._buildReverseIndex(this._masks); + }; + + $.extend(Autogenerator.prototype, { + varRegexp: /{{([\w_]+?)}}/, + varsRegexp: new RegExp('{{(' + availablePlaceholders.join('|') + ')}}', 'g'), + data: { + disabled: 'autogenerator-disabled' + }, + bindAll: function(events) { + var self = this; + + $.each(self._masks, function(field, mask) { + var disabler = function() { + $(this).data(self.data.disabled, $(this).val().replace(/\s/g, '') != ''); + }; + var $field = $('#' + field); + if (!$field.val() && mask.length > 0 && !self.varRegexp.test(mask)) { + $field.val(mask); + } + if ($field.length) { + disabler.call($field); + $field.bind('focus blur change keyup click', disabler); + } + }); + + $.each(self._fieldReverseIndex, function(field) { + var fields = this, $field = $('#' + field); + var filler = function(onlyText) { + $.each(fields, function() { + var $el = $('#' + this); + if ($el.data(self.data.disabled)) { + return; + } + if (onlyText === true && self.varRegexp.test(self._masks[this])) { + return; + } + var value = self._masks[this].replace(self.varsRegexp, function(maskfieldName) { + return $('#' + maskfieldName.slice(2, -2)).val(); + }); + $el.val(value); + + }); + }; + if ($field.length) { + $field.bind(events || 'keyup change blur click', filler); + filler.call($field, true); + } + + }); + }, + _buildReverseIndex: function(masks) { + var self = this; + var fieldReverseIndex = {}; + $.each(masks, function(field, mask) { + $.each(mask.toString().match(self.varsRegexp) || [], function(key, maskName) { + var fieldName = maskName.slice(2, -2); + if (!(fieldName in fieldReverseIndex)) { + fieldReverseIndex[fieldName] = []; + } + fieldReverseIndex[fieldName].push(field); + }) + }); + return fieldReverseIndex; + } + }); + + new Autogenerator(masks).bindAll(); + })(jQuery); }); Validation.addAllThese([ ['validate-super-product-attributes', '__('Please select one or more attributes.') ?>', function(v) { - return (v != "no-attributes"); - }]]); + return (v != "no-attributes"); + }] +]); //]]> diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/option.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/option.phtml index 82843d4927f29..6bdd3dfe3e9c2 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/option.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/option.phtml @@ -41,7 +41,7 @@ window.firstStepTemplate = '
'+ '__('Input Type') ?> *'+ 'jsQuoteEscape(Mage::helper('Mage_Catalog_Helper_Data')->__('Is Required')) ?>'+ '__('Sort Order') ?>'+ - 'jsQuoteEscape($this->getDeleteButtonHtml()) ?>'+ + '' + jsonEncode($this->getDeleteButtonHtml()) ?> + ''+ ''+ ''+ ''+ @@ -333,7 +333,7 @@ if($('getAddButtonId() ?>')){ //validation for selected input type Validation.addAllThese([ - ['required-option-select', helper('Mage_Core_Helper_Data')->jsonEncode(Mage::helper('Mage_Catalog_Helper_Data')->__('Select type of option')) ?>, function(v, elm) { + ['required-option-select', jsonEncode(Mage::helper('Mage_Catalog_Helper_Data')->__('Select type of option')) ?>, function(v, elm) { if (elm.getValue() == '') { return false; } diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/type/select.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/type/select.phtml index dd526b5c55fa5..2ebf988afba48 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/type/select.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/catalog/product/edit/options/type/select.phtml @@ -45,7 +45,7 @@ OptionTemplateSelect = ''+ ''+ ''+ ''+ - ''+ + ''+ ''+ ''+ '
getAddButtonHtml() ?>' + jsonEncode($this->getAddButtonHtml()) ?> + '
'; @@ -64,7 +64,7 @@ OptionTemplateSelectRow = '' ''+ ''+ - 'getDeleteButtonHtml() ?>'+ + '' + jsonEncode($this->getDeleteButtonHtml()) ?> + ''+ ''; selectOptionType = { @@ -153,7 +153,7 @@ if ($('option_panel_type_select')) { selectOptionType.bindRemoveButtons(); Validation.addAllThese([ - ['required-option-select-type-rows', helper('Mage_Core_Helper_Data')->jsonEncode(Mage::helper('Mage_Catalog_Helper_Data')->__('Please add rows to option.')); ?>, function(v, elm) { + ['required-option-select-type-rows', jsonEncode(Mage::helper('Mage_Catalog_Helper_Data')->__('Please add rows to option.')); ?>, function(v, elm) { var optionContainerElm = elm.up('div.grid'); var selectTypesFlag = false; selectTypeElements = $$('#'+optionContainerElm.id+' .select-type-title'); diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/main.xml b/app/code/core/Mage/Adminhtml/view/adminhtml/main.xml index a690b4dcd3760..32b6f732496cc 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/main.xml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/main.xml @@ -57,6 +57,10 @@ Supported layout update handles (special): Magento Admin jquery/jquery-1.7.1.min.js mage/jquery-no-conflict.js + jquery/jquery-ui-1.8.18.custom.min.js + jquery/jquery.tmpl.min.js + mage/backend/ajax-setup.js + mage/loader.js prototype/prototype.js mage/adminhtml/fix-extjs-defer.jscan_load_ext_js mage/adminhtml/fix-extjs-defer-before.jscan_load_ext_js diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/store/switcher.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/store/switcher.phtml index ccdcefe9e4da3..e41159b429a86 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/store/switcher.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/store/switcher.phtml @@ -27,7 +27,7 @@ getWebsites()): ?>

-getUiId()?>> hasDefaultOption()): ?> diff --git a/app/code/core/Mage/Adminhtml/view/adminhtml/system/convert/profile/wizard.phtml b/app/code/core/Mage/Adminhtml/view/adminhtml/system/convert/profile/wizard.phtml index 0b6970ff4a6f9..079b37472c557 100644 --- a/app/code/core/Mage/Adminhtml/view/adminhtml/system/convert/profile/wizard.phtml +++ b/app/code/core/Mage/Adminhtml/view/adminhtml/system/convert/profile/wizard.phtml @@ -110,7 +110,7 @@ function exportUrlField() var urlFieldEl = $('profile_add_url_field').up(); var entityType = $('profile_entity_type').value; var direction = $('profile_direction').value; - var storeId = $('profile_store_id').value; + var storeId = $('profile_store_id') ? $('profile_store_id').value : 0; if (entityType == 'product' && direction == 'export' && storeId > 0) { urlFieldEl.show(); @@ -185,39 +185,41 @@ Event.observe(window, 'load', function(){ - - - - + + getWebsiteCollection() as $_website): ?> + + getGroupCollection() as $_group): ?> + getId() != $_group->getWebsiteId()) continue; ?> + + getStoreCollection() as $_store): ?> + getId() != $_store->getGroupId()) continue; ?> + + + + + + + + + + + + - - - - - - - - __("(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)") ?> - + + + __("(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)") ?> + + - + ' + . ' value="'.$this->getEscapedValue('from').'" class="input-text no-changes" ' . $this->getUiId('filter', $this->_getHtmlName(), 'from') . '/>' . '' @@ -59,7 +59,7 @@ public function getHtml() $html.= '

' . '' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' :' . '' + . ' value="'.$this->getEscapedValue('to').'" class="input-text no-changes" ' . $this->getUiId('filter', $this->_getHtmlName(), 'to') . '/>' . '' diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Datetime.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Datetime.php index b8633e6e6c12f..218c5af33f11b 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Datetime.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Datetime.php @@ -117,7 +117,7 @@ public function getHtml() $html = '
' . '' . Mage::helper('Mage_Backend_Helper_Data')->__('From').':' . '' + . ' value="'.$this->getEscapedValue('from').'" class="input-text no-changes" ' . $this->getUiId('filter', $this->_getHtmlName(), 'from') . '/>' . '' @@ -125,7 +125,7 @@ public function getHtml() $html.= '
' . '' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' :' . '' + . ' value="'.$this->getEscapedValue('to').'" class="input-text no-changes" ' . $this->getUiId('filter', $this->_getHtmlName(), 'to') . '/>' . '' diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Price.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Price.php index 1e6dcf24402ca..d7351b8c2347b 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Price.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Price.php @@ -39,8 +39,8 @@ class Mage_Backend_Block_Widget_Grid_Column_Filter_Price extends Mage_Backend_Bl public function getHtml() { $html = '
'; - $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('From').':
'; - $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' :
'; + $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('From').': getUiId('filter', $this->_getHtmlName(), 'from') . '/>
'; + $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' : getUiId('filter', $this->_getHtmlName(), 'to') . '/>
'; if ($this->getDisplayCurrencySelect()) $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('In').' : ' . $this->_getCurrencySelectHtml() . '
'; $html .= '
'; diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Range.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Range.php index eb6af24b16080..9a7b56e12131d 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Range.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Range.php @@ -35,8 +35,8 @@ class Mage_Backend_Block_Widget_Grid_Column_Filter_Range extends Mage_Backend_Bl { public function getHtml() { - $html = '
' . Mage::helper('Mage_Backend_Helper_Data')->__('From').':
'; - $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' :
'; + $html = '
' . Mage::helper('Mage_Backend_Helper_Data')->__('From').': getUiId('filter', $this->_getHtmlName(), 'from') . '/>
'; + $html .= '
' . Mage::helper('Mage_Backend_Helper_Data')->__('To').' : getUiId('filter', $this->_getHtmlName(), 'to') . '/>
'; return $html; } @@ -51,7 +51,7 @@ public function getValue($index=null) } return null; } - + public function getCondition() { diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Select.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Select.php index 89d20c49d4c89..f11a235c798dc 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Select.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Select.php @@ -69,7 +69,9 @@ protected function _renderOption($option, $value) public function getHtml() { - $html = 'getUiId('filter', $this->_getHtmlName()) + . 'class="no-changes">'; $value = $this->getValue(); foreach ($this->_getOptions() as $option){ if (is_array($option['value'])) { diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Store.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Store.php index eb2c85353ff4e..80499fc7c3fda 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Store.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Store.php @@ -52,7 +52,9 @@ public function getHtml() $allShow = $this->getColumn()->getStoreAll(); $html = '
'; + $html = '
getUiId('filter', $this->_getHtmlName()) . ' />
'; return $html; } } diff --git a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Theme.php b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Theme.php index 79febf1077aa9..b4f2642395985 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Theme.php +++ b/app/code/core/Mage/Backend/Block/Widget/Grid/Column/Filter/Theme.php @@ -48,7 +48,7 @@ public function getHtml() 'label' => '' )); } - $html = sprintf('getUiId('filter', $this->_getHtmlName()) . '>', $this->_getHtmlName(), $this->_getHtmlId()) . $this->_drawOptions($options) . ''; return $html; diff --git a/app/code/core/Mage/Backend/Block/Widget/Tabs.php b/app/code/core/Mage/Backend/Block/Widget/Tabs.php index a0b5245e9d6df..9049f838b9ec7 100644 --- a/app/code/core/Mage/Backend/Block/Widget/Tabs.php +++ b/app/code/core/Mage/Backend/Block/Widget/Tabs.php @@ -109,7 +109,10 @@ public function addTab($tabId, $tab) } elseif (is_string($tab)) { if (strpos($tab, '_Block_')) { - $this->_tabs[$tabId] = $this->getLayout()->createBlock($tab); + $this->_tabs[$tabId] = $this->getLayout()->createBlock( + $tab, + $this->getNameInLayout() . '_tab_' . $tabId + ); } elseif ($this->getChildBlock($tab)) { $this->_tabs[$tabId] = $this->getChildBlock($tab); diff --git a/app/code/core/Mage/Backend/view/adminhtml/admin/login.phtml b/app/code/core/Mage/Backend/view/adminhtml/admin/login.phtml index 02338f55446f5..ef3d77dea7fd0 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/admin/login.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/admin/login.phtml @@ -34,6 +34,12 @@ + + + + + + diff --git a/app/code/core/Mage/Backend/view/adminhtml/admin/login_buttons.phtml b/app/code/core/Mage/Backend/view/adminhtml/admin/login_buttons.phtml index b47f00483e74c..fcb0948c5ab80 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/admin/login_buttons.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/admin/login_buttons.phtml @@ -24,4 +24,10 @@ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) */ ?> - +getUiId(); ?> + /> diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/button.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/button.phtml new file mode 100644 index 0000000000000..ac7b9524e6f92 --- /dev/null +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/button.phtml @@ -0,0 +1,36 @@ + + +getBeforeHtml(); ?> + +getAfterHtml(); ?> diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/button/split.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/button/split.phtml new file mode 100644 index 0000000000000..83dd7233a6383 --- /dev/null +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/button/split.phtml @@ -0,0 +1,69 @@ + + +
+
getUiId(); ?>> + getLabel(); ?> +
+
getUiId("dropdown"); ?>>Select
+ +
+ diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/form/container.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/form/container.phtml index 592c1673595cc..89f3541795511 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/form/container.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/form/container.phtml @@ -26,11 +26,11 @@ ?> getFormInitScripts() ?> -
+
getUiId('content-header') ?>> getHeaderHtml() ?>

getButtonsHtml('header') ?>

diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/form/element.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/form/element.phtml index ebf3c96263f39..4e11452918d54 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/form/element.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/form/element.phtml @@ -54,7 +54,7 @@ case 'button': case 'password': ?> - getLabel()): ?> + getLabel()): ?> getOnClick() ? 'onClick="'.$element->getOnClick().'"' : '' ) ?>/> getDeleteButtonHtml("this") ?>'; + new_row_button = jsonEncode($this->getDeleteButtonHtml("this")) ?>; table = document.getElementById( "gallery" ); diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/form/renderer/fieldset/element.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/form/renderer/fieldset/element.phtml index 6b783b76a7230..b0a9821d287f0 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/form/renderer/fieldset/element.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/form/renderer/fieldset/element.phtml @@ -25,18 +25,19 @@ */ ?> getElement(); $_note = $_element->getNote(); $_trId = $_element->getHtmlContainerId(); $_class = $_element->getFieldsetHtmlClass(); ?> getNoDisplay()): ?> - id=""> + id="" getUiId('form-row',$_element->getId()) ?>> getType()=='hidden'): ?> - getElementHtml()) ?> + getUiId($_element->getId()) ?>>getElementHtml()) ?> - ">getLabelHtml()) ?> - "> + " getUiId('cell', $_element->getId(), 'label') ?>>getLabelHtml()) ?> + " getUiId('cell',$_element->getId(), 'value') ?>> getElementHtml()) ?>

" id="note_getId()?>">

diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/grid.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/grid.phtml index 4d125e1777f8e..e5b8635da0fff 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/grid.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/grid.phtml @@ -33,7 +33,9 @@ * getColumns() * getPagerVisibility() * getVarNamePage() + * */ +/* @var $this Mage_Backend_Block_Widget_Grid */ $numColumns = sizeof($this->getColumns()); ?> getCollection()): ?> @@ -62,15 +64,15 @@ $numColumns = sizeof($this->getColumns()); getCollection()->getCurPage() ?> getCollection()->getLastPageNumber() ?> 1): ?> - Go to Previous page + getUiId('previous') ?>>Go to Previous page Go to Previous page - + getUiId('current-page') ?>/> - Go to Next page + getUiId('next') ?>>Go to Next page Go to Previous page @@ -78,7 +80,7 @@ $numColumns = sizeof($this->getColumns()); __('of %s pages', $this->getCollection()->getLastPageNumber()) ?> | __('View') ?> - getUiId('per-page') ?>> @@ -86,8 +88,9 @@ $numColumns = sizeof($this->getColumns()); __('per page') ?>| - __('Total %d records found', $this->getCollection()->getSize()) ?> - getCollection()->getSize() ?> + getCollection()->getSize(); ?> + __('Total %d records found', $countRecords) ?> + getUiId('total-count') ?>> getRssLists()): ?> getRssLists() as $_rss): ?> |getLabel() ?> @@ -119,21 +122,21 @@ $numColumns = sizeof($this->getColumns());
getColumns() as $_column): ?> - getHtmlProperty() ?> /> + getHtmlProperty() ?>/> getHeadersVisibility() || $this->getFilterVisibility()): ?> getHeadersVisibility()): ?> getColumns() as $_column): ?> - getHeaderHtmlProperty() ?>>getHeaderHtml() ?> + getHeaderHtmlProperty() ?>getUiId('column', $_column->getId()) ?>>getHeaderHtml() ?> getFilterVisibility()): ?> getColumns() as $_column): ?> - getHeaderHtmlProperty() ?>>getFilterHtml() ?> + getHeaderHtmlProperty() ?>getUiId('column', $_column->getId()) ?>>getFilterHtml() ?> @@ -169,9 +172,9 @@ $numColumns = sizeof($this->getColumns()); getMultipleRows($_item)):?> - + getUiId('row-multy', $_item->getId(), $_i) ?>> getMultipleRowColumns($_i) as $_column): ?> - diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/grid/massaction.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/grid/massaction.phtml index 1c0855161f34f..42d0d8d560558 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/grid/massaction.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/grid/massaction.phtml @@ -28,14 +28,14 @@
+ getUiId('cell', $_column->getId(), $_i) ?>> getRowField($_i)) != '' ? $_html : ' ') ?>
@@ -49,7 +49,7 @@
- getUiId('select') ?>> getItems() as $_item): ?> diff --git a/app/code/core/Mage/Backend/view/adminhtml/widget/tabs.phtml b/app/code/core/Mage/Backend/view/adminhtml/widget/tabs.phtml index 723f9c4e82edf..57d398e490a6b 100644 --- a/app/code/core/Mage/Backend/view/adminhtml/widget/tabs.phtml +++ b/app/code/core/Mage/Backend/view/adminhtml/widget/tabs.phtml @@ -25,17 +25,17 @@ */ ?> getTitle()): ?> -

getTitle() ?>

+

getUiId('title') ?>>getTitle() ?>

-
    + diff --git a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php index bce14c76e7aef..4d79a9aa19772 100644 --- a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php +++ b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php @@ -59,15 +59,12 @@ public function getTabClass() */ protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Add New Option'), - 'class' => 'add', - 'id' => 'add_new_option', - 'on_click' => 'bOption.add()' - )) - ); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Add New Option'), + 'class' => 'add', + 'id' => 'add_new_option', + 'on_click' => 'bOption.add()' + )); $this->setChild('options_box', $this->getLayout()->createBlock('Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option', diff --git a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php index 20042d90b6d00..6f73eeff88566 100644 --- a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php +++ b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php @@ -122,39 +122,27 @@ public function isMultiWebsites() protected function _prepareLayout() { - $this->setChild('add_selection_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'id' => $this->getFieldId().'_{{index}}_add_button', - 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Add Selection'), - 'on_click' => 'bSelection.showSearch(event)', - 'class' => 'add' - ))); - - $this->setChild('close_search_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'id' => $this->getFieldId().'_{{index}}_close_button', - 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Close'), - 'on_click' => 'bSelection.closeSearch(event)', - 'class' => 'back no-display' - ))); - - $this->setChild('option_delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Option'), - 'class' => 'delete delete-product-option', - 'on_click' => 'bOption.remove(event)' - )) - ); - - $this->setChild( - 'selection_template', - $this->getLayout()->createBlock( - 'Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Selection' - ) - ); + $this->addChild('add_selection_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'id' => $this->getFieldId().'_{{index}}_add_button', + 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Add Selection'), + 'on_click' => 'bSelection.showSearch(event)', + 'class' => 'add' + )); + + $this->addChild('close_search_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'id' => $this->getFieldId().'_{{index}}_close_button', + 'label' => Mage::helper('Mage_Bundle_Helper_Data')->__('Close'), + 'on_click' => 'bSelection.closeSearch(event)', + 'class' => 'back no-display' + )); + + $this->addChild('option_delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete Option'), + 'class' => 'delete delete-product-option', + 'on_click' => 'bOption.remove(event)' + )); + + $this->addChild('selection_template', 'Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Selection'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php index e05be53435bc3..860c52261e961 100644 --- a/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php +++ b/app/code/core/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php @@ -70,14 +70,11 @@ public function getFieldName() */ protected function _prepareLayout() { - $this->setChild('selection_delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete'), - 'class' => 'delete icon-btn', - 'on_click' => 'bSelection.remove(event)' - )) - ); + $this->addChild('selection_delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Delete'), + 'class' => 'delete icon-btn', + 'on_click' => 'bSelection.remove(event)' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Bundle/etc/config.xml b/app/code/core/Mage/Bundle/etc/config.xml index 38d3b4d2b3679..65a836be7d435 100644 --- a/app/code/core/Mage/Bundle/etc/config.xml +++ b/app/code/core/Mage/Bundle/etc/config.xml @@ -80,6 +80,12 @@ + + + + + + diff --git a/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option.phtml b/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option.phtml index c71257693f730..ded6ca0269d09 100644 --- a/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option.phtml +++ b/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option.phtml @@ -33,7 +33,7 @@ optionTemplate = '
    ' + -'jsQuoteEscape($this->getOptionDeleteButtonHtml()) ?>' + +jsonEncode($this->getOptionDeleteButtonHtml()) ?> + '
    ' + '
getUseSelectAll()):?> - __('Select All') ?> + getUiId('select','all','link') ?>>__('Select All') ?> | - __('Unselect All') ?> + getUiId('unselect','all','link') ?>>__('Unselect All') ?> | - __('Select Visible') ?> + getUiId('select','visible','link') ?>>__('Select Visible') ?> | - __('Unselect Visible') ?> + getUiId('unselect','visible','link') ?>>__('Unselect Visible') ?> | 0 __('items selected') ?>
' + '' + @@ -57,7 +57,7 @@ optionTemplate = '
' + - '
' + + '' + '' + '' + '
 jsQuoteEscape($this->getAddSelectionButtonHtml()) ?> ' + jsonEncode($this->getAddSelectionButtonHtml()) ?> + '
' + diff --git a/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option/selection.phtml b/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option/selection.phtml index 49107fa0216b6..38ecf683bd5ca 100644 --- a/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option/selection.phtml +++ b/app/code/core/Mage/Bundle/view/adminhtml/product/edit/bundle/option/selection.phtml @@ -70,7 +70,7 @@ var bundleTemplateRow ='' + 'getQtyTypeSelectHtml() ?>' + '' + '' + - 'getSelectionDeleteButtonHtml() ?>'; + '' + jsonEncode($this->getSelectionDeleteButtonHtml()) ?> + ''; Bundle.Selection = Class.create(); Bundle.Selection.prototype = { diff --git a/app/code/core/Mage/Catalog/Helper/Product.php b/app/code/core/Mage/Catalog/Helper/Product.php index 31fe39a725c91..03c764a5b25fa 100644 --- a/app/code/core/Mage/Catalog/Helper/Product.php +++ b/app/code/core/Mage/Catalog/Helper/Product.php @@ -31,9 +31,13 @@ */ class Mage_Catalog_Helper_Product extends Mage_Core_Helper_Url { - const XML_PATH_PRODUCT_URL_SUFFIX = 'catalog/seo/product_url_suffix'; - const XML_PATH_PRODUCT_URL_USE_CATEGORY = 'catalog/seo/product_use_categories'; - const XML_PATH_USE_PRODUCT_CANONICAL_TAG = 'catalog/seo/product_canonical_tag'; + const XML_PATH_PRODUCT_URL_SUFFIX = 'catalog/seo/product_url_suffix'; + const XML_PATH_PRODUCT_URL_USE_CATEGORY = 'catalog/seo/product_use_categories'; + const XML_PATH_USE_PRODUCT_CANONICAL_TAG = 'catalog/seo/product_canonical_tag'; + const XML_PATH_AUTO_GENERATE_MASK = 'catalog/fields_masks'; + const XML_PATH_UNASSIGNABLE_ATTRIBUTES = 'global/catalog/product/attributes/unassignable'; + const XML_PATH_ATTRIBUTES_USED_IN_AUTOGENERATION = 'global/catalog/product/attributes/used_in_autogeneration'; + /** * Flag that shows if Magento has to check product to be saleable (enabled and/or inStock) @@ -468,4 +472,37 @@ public function getSkipSaleableCheck() { return $this->_skipSaleableCheck; } + + /** + * Get masks for auto generation of fields + * + * @return array + */ + public function getFieldsAutogenerationMasks() + { + return Mage::getConfig() + ->getNode(Mage_Catalog_Helper_Product::XML_PATH_AUTO_GENERATE_MASK, 'default') + ->asArray(); + } + + /** + * Retrieve list of attributes that cannot be removed from attribute set + * + * @return array + */ + public function getUnassignableAttributes() + { + $data = Mage::getConfig()->getNode(self::XML_PATH_UNASSIGNABLE_ATTRIBUTES); + return false === $data || is_string($data->asArray()) ? array() : array_keys($data->asArray()); + } + + /** + * Retrieve list of attributes that allowed for autogeneration + * + * @return array + */ + public function getAttributesAllowedForAutogeneration() + { + return array_keys(Mage::getConfig()->getNode(self::XML_PATH_ATTRIBUTES_USED_IN_AUTOGENERATION)->asArray()); + } } diff --git a/app/code/core/Mage/Catalog/Model/Product.php b/app/code/core/Mage/Catalog/Model/Product.php index ac56ed8342ffd..06685efd1ce8f 100644 --- a/app/code/core/Mage/Catalog/Model/Product.php +++ b/app/code/core/Mage/Catalog/Model/Product.php @@ -106,6 +106,24 @@ class Mage_Catalog_Model_Product extends Mage_Catalog_Model_Abstract */ protected $_calculatePrice = true; + /** + * Resource instance + * + * @var Mage_Catalog_Model_Resource_Product + */ + protected $_resource; + + /** + * Initialize data + * + * @param array $data + */ + public function __construct(array $data = array()) + { + $this->_resource = isset($data['resource']) ? $data['resource'] : null; + parent::__construct($data); + } + /** * Initialize resources */ @@ -481,6 +499,7 @@ protected function _beforeSave() $this->setHasOptions(false); $this->setRequiredOptions(false); } + parent::_beforeSave(); } @@ -579,7 +598,10 @@ protected function _afterLoad() */ protected function _getResource() { - return parent::_getResource(); + if (is_null($this->_resource)) { + return parent::_getResource(); + } + return $this->_resource; } /** @@ -1041,7 +1063,6 @@ public function duplicate() $newProduct = Mage::getModel('Mage_Catalog_Model_Product')->setData($this->getData()) ->setIsDuplicate(true) ->setOriginalId($this->getId()) - ->setSku(null) ->setStatus(Mage_Catalog_Model_Product_Status::STATUS_DISABLED) ->setCreatedAt(null) ->setUpdatedAt(null) diff --git a/app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Sku.php b/app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Sku.php index ce16f66300d41..c35ef1b1a9830 100644 --- a/app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Sku.php +++ b/app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Sku.php @@ -51,12 +51,72 @@ class Mage_Catalog_Model_Product_Attribute_Backend_Sku extends Mage_Eav_Model_En public function validate($object) { $helper = Mage::helper('Mage_Core_Helper_String'); + $attrCode = $this->getAttribute()->getAttributeCode(); + $value = $object->getData($attrCode); + if ($this->getAttribute()->getIsRequired() && $this->getAttribute()->isValueEmpty($value)) { + return false; + } if ($helper->strlen($object->getSku()) > self::SKU_MAX_LENGTH) { Mage::throwException( Mage::helper('Mage_Catalog_Helper_Data')->__('SKU length should be %s characters maximum.', self::SKU_MAX_LENGTH) ); } - return parent::validate($object); + return true; + } + + /** + * Generate and set unique SKU to product + * + * @param $object Mage_Catalog_Model_Product + */ + protected function _generateUniqueSku($object) + { + $attribute = $this->getAttribute(); + $entity = $attribute->getEntity(); + $increment = $this->_getLastSimilarAttributeValueIncrement($attribute, $object); + $attributeValue = $object->getData($attribute->getAttributeCode()); + while (!$entity->checkAttributeUniqueValue($attribute, $object)) { + $object->setData($attribute->getAttributeCode(), trim($attributeValue) . '-' . ++$increment); + } + } + + /** + * Make SKU unique before save + * + * @param Varien_Object $object + * @return Mage_Catalog_Model_Product_Attribute_Backend_Sku + */ + public function beforeSave($object) + { + $this->_generateUniqueSku($object); + return parent::beforeSave($object); + } + + /** + * Return increment needed for SKU uniqueness + * + * @param Mage_Eav_Model_Entity_Attribute_Abstract $attribute + * @param Mage_Catalog_Model_Product $object + * @return int + */ + protected function _getLastSimilarAttributeValueIncrement($attribute, $object) + { + $adapter = $this->getAttribute()->getEntity()->getReadConnection(); + $select = $adapter->select(); + $value = $object->getData($attribute->getAttributeCode()); + $bind = array( + 'entity_type_id' => $attribute->getEntityTypeId(), + 'attribute_code' => trim($value) . '-%' + ); + + $select + ->from($this->getTable(), $attribute->getAttributeCode()) + ->where('entity_type_id = :entity_type_id') + ->where($attribute->getAttributeCode() . ' LIKE :attribute_code') + ->order(array('entity_id DESC', $attribute->getAttributeCode() . ' ASC')) + ->limit(1); + $data = $adapter->fetchOne($select, $bind); + return abs((int)str_replace($value, '', $data)); } } diff --git a/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php b/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php index 6a0eea1d55fe0..bc7b9ce8c18d1 100644 --- a/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php +++ b/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php @@ -112,7 +112,7 @@ protected function _getIndexer() public function matchEvent(Mage_Index_Model_Event $event) { /** @var $productFlatHelper Mage_Catalog_Helper_Product_Flat */ - $productFlatHelper = Mage::helper('Mage_Catalog_Helper_Product_Flat'); + $productFlatHelper = $event->getFlatHelper() ?: Mage::helper('Mage_Catalog_Helper_Product_Flat'); if (!$productFlatHelper->isAvailable() || !$productFlatHelper->isBuilt()) { return false; } @@ -123,56 +123,22 @@ public function matchEvent(Mage_Index_Model_Event $event) } $entity = $event->getEntity(); - if ($entity == Mage_Catalog_Model_Resource_Eav_Attribute::ENTITY) { - /* @var $attribute Mage_Catalog_Model_Resource_Eav_Attribute */ - $attribute = $event->getDataObject(); - $addFilterable = $productFlatHelper->isAddFilterableAttributes(); - - $enableBefore = $attribute && (($attribute->getOrigData('backend_type') == 'static') - || ($addFilterable && $attribute->getOrigData('is_filterable') > 0) - || ($attribute->getOrigData('used_in_product_listing') == 1) - || ($attribute->getOrigData('is_used_for_promo_rules') == 1) - || ($attribute->getOrigData('used_for_sort_by') == 1)); - - $enableAfter = $attribute && (($attribute->getData('backend_type') == 'static') - || ($addFilterable && $attribute->getData('is_filterable') > 0) - || ($attribute->getData('used_in_product_listing') == 1) - || ($attribute->getData('is_used_for_promo_rules') == 1) - || ($attribute->getData('used_for_sort_by') == 1)); - - if ($attribute && $event->getType() == Mage_Index_Model_Event::TYPE_DELETE) { - $result = $enableBefore; - } elseif ($attribute && $event->getType() == Mage_Index_Model_Event::TYPE_SAVE) { - if ($enableAfter || $enableBefore) { - $result = true; - } else { - $result = false; - } - } else { - $result = false; - } - } else if ($entity == Mage_Core_Model_Store::ENTITY) { - if ($event->getType() == Mage_Index_Model_Event::TYPE_DELETE) { - $result = true; - } else { - /* @var $store Mage_Core_Model_Store */ - $store = $event->getDataObject(); - if ($store && $store->isObjectNew()) { - $result = true; - } else { - $result = false; - } - } - } else if ($entity == Mage_Core_Model_Store_Group::ENTITY) { - /* @var $storeGroup Mage_Core_Model_Store_Group */ - $storeGroup = $event->getDataObject(); - if ($storeGroup && $storeGroup->dataHasChangedFor('website_id')) { - $result = true; - } else { - $result = false; - } - } else { - $result = parent::matchEvent($event); + switch ($entity) { + case Mage_Catalog_Model_Resource_Eav_Attribute::ENTITY: + $result = $this->_matchAttributeEvent($event, $productFlatHelper); + break; + + case Mage_Core_Model_Store::ENTITY: + $result = $this->_matchStoreEvent($event); + break; + + case Mage_Core_Model_Store_Group::ENTITY: + $result = $this->_matchStoreGroupEvent($event); + break; + + default: + $result = parent::matchEvent($event); + break; } $event->addNewData(self::EVENT_MATCH_RESULT_KEY, $result); @@ -180,6 +146,88 @@ public function matchEvent(Mage_Index_Model_Event $event) return $result; } + /** + * Whether a store group available for matching or not + * + * @param Mage_Index_Model_Event $event + * @return bool + */ + protected function _matchStoreGroupEvent(Mage_Index_Model_Event $event) + { + /* @var $storeGroup Mage_Core_Model_Store_Group */ + $storeGroup = $event->getDataObject(); + if ($storeGroup && $storeGroup->dataHasChangedFor('website_id')) { + return true; + } + return false; + } + + /** + * Whether a store available for matching or not + * + * @param Mage_Index_Model_Event $event + * @return bool + */ + protected function _matchStoreEvent(Mage_Index_Model_Event $event) + { + if ($event->getType() == Mage_Index_Model_Event::TYPE_DELETE) { + return true; + } else { + /* @var $store Mage_Core_Model_Store */ + $store = $event->getDataObject(); + if ($store && $store->isObjectNew()) { + return true; + } + } + + return false; + } + + /** + * Whether an attribute available for matching or not + * + * @param Mage_Index_Model_Event $event + * @param $productFlatHelper + * @return bool + */ + protected function _matchAttributeEvent(Mage_Index_Model_Event $event, $productFlatHelper) + { + $attribute = $event->getDataObject(); + if (!$attribute) { + return false; + } + + $enableBefore = $this->_isAttributeEnabled($attribute, $productFlatHelper); + $enableAfter = $this->_isAttributeEnabled($attribute, $productFlatHelper, false); + + if ($event->getType() == Mage_Index_Model_Event::TYPE_DELETE) { + return $enableBefore; + } elseif ($event->getType() == Mage_Index_Model_Event::TYPE_SAVE && ($enableAfter || $enableBefore)) { + return true; + } + + return false; + } + + /** + * Whether an attribute available for matching or not + * + * @param Mage_Catalog_Model_Resource_Eav_Attribute $attribute + * @param Mage_Catalog_Helper_Product_Flat $productFlatHelper + * @param bool $before + * @return bool + */ + protected function _isAttributeEnabled($attribute, $productFlatHelper, $before = true) { + + $method = $before ? 'getOrigData': 'getData'; + + return $attribute && (($attribute->$method('backend_type') == 'static') + || ($productFlatHelper->isAddFilterableAttributes() && $attribute->$method('is_filterable') > 0) + || ($attribute->$method('used_in_product_listing') == 1) + || ($attribute->$method('is_used_for_promo_rules') == 1) + || ($attribute->$method('used_for_sort_by') == 1)); + } + /** * Register data required by process in event object * diff --git a/app/code/core/Mage/Catalog/Model/Product/Option.php b/app/code/core/Mage/Catalog/Model/Product/Option.php index f72f2edf18aa1..49370f3384d71 100644 --- a/app/code/core/Mage/Catalog/Model/Product/Option.php +++ b/app/code/core/Mage/Catalog/Model/Product/Option.php @@ -78,9 +78,45 @@ class Mage_Catalog_Model_Product_Option extends Mage_Core_Model_Abstract protected $_values = array(); + /** + * Resource instance + * + * @var Mage_Catalog_Model_Resource_Product_Option + */ + protected $_resource; + + /** + * Translate instance + * + * @var Mage_Core_Model_Translate + */ + protected $_translate; + + /** + * Initialize data + * + * @param array $data + */ + public function __construct(array $data = array()) + { + $this->_resource = isset($data['resource']) ? $data['resource'] : null; + parent::__construct($data); + } + + /** + * Get resource instance + * + * @return Mage_Core_Model_Resource_Db_Abstract + */ + protected function _getResource() + { + return $this->_resource ?: parent::_getResource(); + } + protected function _construct() { $this->_init('Mage_Catalog_Model_Resource_Product_Option'); + parent::_construct(); } /** diff --git a/app/code/core/Mage/Catalog/Model/Product/Type/Abstract.php b/app/code/core/Mage/Catalog/Model/Product/Type/Abstract.php index c91dfe0ed6bbf..cf143ac1e3f5d 100644 --- a/app/code/core/Mage/Catalog/Model/Product/Type/Abstract.php +++ b/app/code/core/Mage/Catalog/Model/Product/Type/Abstract.php @@ -74,6 +74,13 @@ abstract class Mage_Catalog_Model_Product_Type_Abstract */ protected $_fileQueue = array(); + /** + * Helpers list + * + * @var array + */ + protected $_helpers = array(); + const CALCULATE_CHILD = 0; const CALCULATE_PARENT = 1; @@ -104,6 +111,16 @@ abstract class Mage_Catalog_Model_Product_Type_Abstract */ const OPTION_PREFIX = 'option_'; + /** + * Initialize data + * + * @param array $data + */ + public function __construct(array $data = array()) + { + $this->_helpers = isset($data['helpers']) ? $data['helpers'] : array(); + } + /** * Specify type identifier * @@ -392,7 +409,7 @@ public function processFileQueue() $path = dirname($dst); $io = new Varien_Io_File(); if (!$io->isWriteable($path) && !$io->mkdir($path, 0777, true)) { - Mage::throwException(Mage::helper('Mage_Catalog_Helper_Data')->__("Cannot create writeable directory '%s'.", $path)); + Mage::throwException($this->_helper('Mage_Catalog_Helper_Data')->__("Cannot create writeable directory '%s'.", $path)); } $uploader->setDestination($path); @@ -404,15 +421,15 @@ public function processFileQueue() if (isset($queueOptions['option'])) { $queueOptions['option']->setIsValid(false); } - Mage::throwException(Mage::helper('Mage_Catalog_Helper_Data')->__("File upload failed")); + Mage::throwException($this->_helper('Mage_Catalog_Helper_Data')->__("File upload failed")); } - Mage::helper('Mage_Core_Helper_File_Storage_Database')->saveFile($dst); + $this->_helper('Mage_Core_Helper_File_Storage_Database')->saveFile($dst); break; case 'move_uploaded_file': $src = $queueOptions['src_name']; $dst = $queueOptions['dst_name']; move_uploaded_file($src, $dst); - Mage::helper('Mage_Core_Helper_File_Storage_Database')->saveFile($dst); + $this->_helper('Mage_Core_Helper_File_Storage_Database')->saveFile($dst); break; default: break; @@ -454,7 +471,7 @@ protected function _isStrictProcessMode($processMode) */ public function getSpecifyOptionMessage() { - return Mage::helper('Mage_Catalog_Helper_Data')->__('Please specify the product\'s required option(s).'); + return $this->_helper('Mage_Catalog_Helper_Data')->__('Please specify the product\'s required option(s).'); } /** @@ -509,7 +526,7 @@ public function checkProductBuyState($product) if (!$customOption || strlen($customOption->getValue()) == 0) { $product->setSkipCheckRequiredOption(true); Mage::throwException( - Mage::helper('Mage_Catalog_Helper_Data')->__('The product has required options') + $this->_helper('Mage_Catalog_Helper_Data')->__('The product has required options') ); } } @@ -914,7 +931,7 @@ public function checkProductConfiguration($product, $buyRequest) $errors[] = $e->getMessages(); } catch (Exception $e) { Mage::logException($e); - $errors[] = Mage::helper('Mage_Catalog_Helper_Data')->__('There was an error while request processing.'); + $errors[] = $this->_helper('Mage_Catalog_Helper_Data')->__('There was an error while request processing.'); } return $errors; @@ -931,4 +948,15 @@ public function isMapEnabledInOptions($product, $visibility = null) { return false; } + + /** + * Retrieve helper by specified name + * + * @param string $name + * @return Mage_Core_Helper_Abstract + */ + protected function _helper($name) + { + return isset($this->_helpers[$name]) ? $this->_helpers[$name] : Mage::helper($name); + } } diff --git a/app/code/core/Mage/Catalog/Model/Resource/Product.php b/app/code/core/Mage/Catalog/Model/Resource/Product.php index 0831b9d7e117d..f6b8ebdcb8dc1 100755 --- a/app/code/core/Mage/Catalog/Model/Resource/Product.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Product.php @@ -161,13 +161,6 @@ public function getIdBySku($sku) */ protected function _beforeSave(Varien_Object $object) { - /** - * Try detect product id by sku if id is not declared - */ - if (!$object->getId() && $object->getSku()) { - $object->setId($this->getIdBySku($object->getSku())); - } - /** * Check if declared category ids in object data. */ @@ -178,7 +171,14 @@ protected function _beforeSave(Varien_Object $object) $object->setCategoryIds($categoryIds); } - return parent::_beforeSave($object); + $self = parent::_beforeSave($object); + /** + * Try detect product id by sku if id is not declared + */ + if (!$object->getId() && $object->getSku()) { + $object->setId($this->getIdBySku($object->getSku())); + } + return $self; } /** diff --git a/app/code/core/Mage/Catalog/Model/Resource/Setup.php b/app/code/core/Mage/Catalog/Model/Resource/Setup.php index 1baab448594ed..d4f9ab783f3f5 100755 --- a/app/code/core/Mage/Catalog/Model/Resource/Setup.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Setup.php @@ -401,11 +401,22 @@ public function getDefaultEntities() 'used_in_product_listing' => true, 'used_for_sort_by' => true, ), + 'sku' => array( + 'type' => 'static', + 'label' => 'SKU', + 'input' => 'text', + 'backend' => 'Mage_Catalog_Model_Product_Attribute_Backend_Sku', + 'unique' => true, + 'sort_order' => 2, + 'searchable' => true, + 'comparable' => true, + 'visible_in_advanced_search' => true, + ), 'description' => array( 'type' => 'text', 'label' => 'Description', 'input' => 'textarea', - 'sort_order' => 2, + 'sort_order' => 3, 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE, 'searchable' => true, 'comparable' => true, @@ -417,7 +428,7 @@ public function getDefaultEntities() 'type' => 'text', 'label' => 'Short Description', 'input' => 'textarea', - 'sort_order' => 3, + 'sort_order' => 4, 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE, 'searchable' => true, 'comparable' => true, @@ -426,17 +437,6 @@ public function getDefaultEntities() 'visible_in_advanced_search' => true, 'used_in_product_listing' => true, ), - 'sku' => array( - 'type' => 'static', - 'label' => 'SKU', - 'input' => 'text', - 'backend' => 'Mage_Catalog_Model_Product_Attribute_Backend_Sku', - 'unique' => true, - 'sort_order' => 4, - 'searchable' => true, - 'comparable' => true, - 'visible_in_advanced_search' => true, - ), 'price' => array( 'type' => 'decimal', 'label' => 'Price', diff --git a/app/code/core/Mage/Catalog/data/catalog_setup/data-upgrade-1.6.0.0.16-1.6.0.0.17.php b/app/code/core/Mage/Catalog/data/catalog_setup/data-upgrade-1.6.0.0.16-1.6.0.0.17.php index d6b6e780592ad..b70409fbc1c66 100644 --- a/app/code/core/Mage/Catalog/data/catalog_setup/data-upgrade-1.6.0.0.16-1.6.0.0.17.php +++ b/app/code/core/Mage/Catalog/data/catalog_setup/data-upgrade-1.6.0.0.16-1.6.0.0.17.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $this Mage_Catalog_Model_Resource_Setup */ /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ diff --git a/app/code/core/Mage/Catalog/etc/config.xml b/app/code/core/Mage/Catalog/etc/config.xml index a8eee2143c2c8..94d0bcea86b3b 100644 --- a/app/code/core/Mage/Catalog/etc/config.xml +++ b/app/code/core/Mage/Catalog/etc/config.xml @@ -209,6 +209,23 @@ 0 0 + + + + + + + + + + + + + + + + + Mage_Catalog_Model_Template_Filter @@ -385,6 +402,12 @@ 0 + + {{name}} + {{name}} + {{name}},{{sku}} + {{name}} {{description}} + grid-list 9,15,30 diff --git a/app/code/core/Mage/Catalog/etc/system.xml b/app/code/core/Mage/Catalog/etc/system.xml index 01bb855893a0d..bb50a315356b0 100644 --- a/app/code/core/Mage/Catalog/etc/system.xml +++ b/app/code/core/Mage/Catalog/etc/system.xml @@ -44,6 +44,52 @@ 1 Mage_Catalog::config_catalog + + + text + 90 + 1 + 1 + 1 + + + + Use {{name}} as Product Name placeholder + text + 10 + 1 + 0 + 0 + + + + Use {{name}} as Product Name placeholder + text + 20 + 1 + 0 + 0 + + + + Use {{name}} and {{sku}} as Product Name and Product SKU placeholders + text + 30 + 1 + 0 + 0 + + + + Use {{name}} and {{description}} as Product Name and Product Description placeholders + text + 40 + 1 + 0 + 0 + + + text diff --git a/app/code/core/Mage/CatalogRule/data/catalogrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php b/app/code/core/Mage/CatalogRule/data/catalogrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php index 150af420663a3..0782b76065638 100644 --- a/app/code/core/Mage/CatalogRule/data/catalogrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php +++ b/app/code/core/Mage/CatalogRule/data/catalogrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Cms/data/cms_setup/data-upgrade-1.6.0.0.2-1.6.0.0.3.php b/app/code/core/Mage/Cms/data/cms_setup/data-upgrade-1.6.0.0.2-1.6.0.0.3.php index 8fbcd4e794e69..fcdcb606a1fe0 100644 --- a/app/code/core/Mage/Cms/data/cms_setup/data-upgrade-1.6.0.0.2-1.6.0.0.3.php +++ b/app/code/core/Mage/Cms/data/cms_setup/data-upgrade-1.6.0.0.2-1.6.0.0.3.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Connect/view/adminhtml/extension/custom/authors.phtml b/app/code/core/Mage/Connect/view/adminhtml/extension/custom/authors.phtml index cfa36da364aac..f5c6cf0325b3d 100644 --- a/app/code/core/Mage/Connect/view/adminhtml/extension/custom/authors.phtml +++ b/app/code/core/Mage/Connect/view/adminhtml/extension/custom/authors.phtml @@ -38,7 +38,7 @@ var authorTemplate = ''+ ''+ ''+ - 'jsQuoteEscape($this->getRemoveRowButtonHtml('tr')) ?>'+ + jsonEncode($this->getRemoveRowButtonHtml('tr')) ?> + ''+ ''; diff --git a/app/code/core/Mage/Core/Block/Abstract.php b/app/code/core/Mage/Core/Block/Abstract.php index 4cf8f60a37e99..304c076708716 100644 --- a/app/code/core/Mage/Core/Block/Abstract.php +++ b/app/code/core/Mage/Core/Block/Abstract.php @@ -262,6 +262,9 @@ public function setChild($alias, $block) $this->unsetChild($alias); } if ($block instanceof self) { + if ($block->getIsAnonymous()) { + $block->setNameInLayout($this->getNameInLayout() . '.' . $alias); + } $block = $block->getNameInLayout(); } $layout->setChild($thisName, $block, $alias); @@ -269,6 +272,21 @@ public function setChild($alias, $block) return $this; } + /** + * Create block and set as child + * + * @param string $alias + * @param Mage_Core_Block_Abstract $block + * @param array $data + * @return Mage_Core_Block_Abstract new block + */ + public function addChild($alias, $block, $data = array()) + { + $block = $this->getLayout()->createBlock($block, $this->getNameInLayout() . '.' . $alias, $data); + $this->setChild($alias, $block); + return $block; + } + /** * Unset child block * diff --git a/app/code/core/Mage/Core/Block/Messages.php b/app/code/core/Mage/Core/Block/Messages.php index 25889f1e7b0d3..cc6eda974c524 100644 --- a/app/code/core/Mage/Core/Block/Messages.php +++ b/app/code/core/Mage/Core/Block/Messages.php @@ -212,7 +212,7 @@ public function getHtml($type=null) { $html = '<' . $this->_messagesFirstLevelTagName . ' id="admin_messages">'; foreach ($this->getMessages($type) as $message) { - $html.= '<' . $this->_messagesSecondLevelTagName . ' class="'.$message->getType().'-msg">' + $html.= '<' . $this->_messagesSecondLevelTagName . ' class="'.$message->getType().'-msg" ' . $this->getUiId('message') . '>' . ($this->_escapeMessageFlag) ? $this->escapeHtml($message->getText()) : $message->getText() . '_messagesSecondLevelTagName . '>'; } @@ -245,7 +245,7 @@ public function getGroupedHtml() foreach ( $messages as $message ) { $html.= '<' . $this->_messagesSecondLevelTagName . '>'; - $html.= '<' . $this->_messagesContentWrapperTagName . '>'; + $html.= '<' . $this->_messagesContentWrapperTagName . $this->getUiId('message', $type) . '>'; $html.= ($this->_escapeMessageFlag) ? $this->escapeHtml($message->getText()) : $message->getText(); $html.= '_messagesContentWrapperTagName . '>'; $html.= '_messagesSecondLevelTagName . '>'; diff --git a/app/code/core/Mage/Core/Model/App.php b/app/code/core/Mage/Core/Model/App.php index 94c3cc9588148..e1d5a4af320f5 100644 --- a/app/code/core/Mage/Core/Model/App.php +++ b/app/code/core/Mage/Core/Model/App.php @@ -1301,7 +1301,6 @@ public function dispatchEvent($eventName, $args) 'type' => (string)$obsConfig->type, 'model' => $obsConfig->class ? (string)$obsConfig->class : $obsConfig->getClassName(), 'method'=> (string)$obsConfig->method, - 'args' => (array)$obsConfig->args, ); } $events[$eventName]['observers'] = $observers; diff --git a/app/code/core/Mage/Core/Model/Layout.php b/app/code/core/Mage/Core/Model/Layout.php index c736c053346c2..8631bcd6b8be8 100644 --- a/app/code/core/Mage/Core/Model/Layout.php +++ b/app/code/core/Mage/Core/Model/Layout.php @@ -88,7 +88,7 @@ class Mage_Core_Model_Layout extends Varien_Simplexml_Config /** * Layout Update module * - * @var Mage_Core_Model_Layout_Update + * @var Mage_Core_Model_Layout_Merge */ protected $_update; @@ -153,7 +153,7 @@ class Mage_Core_Model_Layout extends Varien_Simplexml_Config * * @var int */ - protected $_nameIncrement = 0; + protected $_nameIncrement = array(); /** * Information about structural elements, scheduled for creation @@ -227,12 +227,12 @@ public function __destruct() /** * Retrieve the layout update instance * - * @return Mage_Core_Model_Layout_Update + * @return Mage_Core_Model_Layout_Merge */ public function getUpdate() { if (!$this->_update) { - $this->_update = Mage::getModel('Mage_Core_Model_Layout_Update', array('area' => $this->getArea())); + $this->_update = Mage::getModel('Mage_Core_Model_Layout_Merge', array('area' => $this->getArea())); } return $this->_update; } @@ -296,7 +296,7 @@ public function generateElements() while (!empty($this->_scheduledStructure)) { reset($this->_scheduledStructure); $this->_scheduleElement(key($this->_scheduledStructure)); - }; + } $this->_scheduledPaths = array(); $moveList = array_keys(array_intersect_key($this->_scheduledElements, $this->_scheduledMoves)); @@ -446,7 +446,7 @@ protected function _scheduleStructure($node, $parent) if ((string)$node->getAttribute('name')) { $name = (string)$node->getAttribute('name'); } else { - $name = $this->_generateAnonymousName(); + $name = $this->_generateAnonymousName($parent->getElementName() . '_schedule_block'); $node->addAttribute('name', $name); } $path = $name; @@ -543,7 +543,7 @@ protected function _scheduleElement($key) return; } list($type, $alias, $parentName, $siblingName, $isAfter, $node) = $row; - $name = $this->_createStructuralElement($key, $type); + $name = $this->_createStructuralElement($key, $type, $parentName . $alias); if ($parentName) { // recursively populate parent first if (isset($this->_scheduledStructure[$parentName])) { @@ -581,10 +581,10 @@ protected function _scheduleElement($key) * @param string $type * @return string */ - protected function _createStructuralElement($name, $type) + protected function _createStructuralElement($name, $type, $class) { if (empty($name)) { - $name = $this->_generateAnonymousName(); + $name = $this->_generateAnonymousName($class); } $this->_structure->createElement($name, array('type' => $type)); return $name; @@ -595,9 +595,26 @@ protected function _createStructuralElement($name, $type) * * @return string */ - protected function _generateAnonymousName() + protected function _generateAnonymousName($class) { - return 'ANONYMOUS_' . $this->_nameIncrement++; + $position = strpos($class, 'Block'); + $key = $position !== false ? substr($class, $position + 6) : $class; + $key = strtolower(trim($key, '_')); + + if (!isset($this->_nameIncrement[$key])) { + $this->_nameIncrement[$key] = 0; + } + + if ($this->_nameIncrement[$key] == 0 && !$this->_structure->hasElement($key)) { + $this->_nameIncrement[$key]++; + return $key; + } + + do { + $name = $key . '_' . $this->_nameIncrement[$key]++; + } while ($this->_structure->hasElement($name)); + + return $name; } /** @@ -1086,7 +1103,7 @@ protected function _translateLayoutNode($node, &$args) * e.g. info.title means that Magento needs to translate value of node * that is a child of <info> node */ - // @var $argumentHierarhy array - path to translatable item in $args array + // @var $argumentHierarchy array - path to translatable item in $args array $argumentHierarchy = explode('.', $translatableArg); $argumentStack = &$args; $canTranslate = true; @@ -1094,7 +1111,7 @@ protected function _translateLayoutNode($node, &$args) $argumentName = array_shift($argumentHierarchy); if (isset($argumentStack[$argumentName])) { /* - * Move to the next element in arguments hieracrhy + * Move to the next element in arguments hierarchy * in order to find target translatable argument */ $argumentStack = &$argumentStack[$argumentName]; @@ -1152,8 +1169,11 @@ public function unsetElement($name) */ public function createBlock($type, $name = '', array $attributes = array()) { - $name = $this->_createStructuralElement($name, self::TYPE_BLOCK); - return $this->_createBlock($type, $name, $attributes); + $isAnonymousBlock = empty($name); + $name = $this->_createStructuralElement($name, self::TYPE_BLOCK, $type); + $block = $this->_createBlock($type, $name, $attributes); + $block->setIsAnonymous($isAnonymousBlock); + return $block; } /** @@ -1192,7 +1212,11 @@ public function addBlock($block, $name = '', $parent = '', $alias = '') if (empty($name) && $block instanceof Mage_Core_Block_Abstract) { $name = $block->getNameInLayout(); } - $name = $this->_createStructuralElement($name, self::TYPE_BLOCK); + $name = $this->_createStructuralElement( + $name, + self::TYPE_BLOCK, + $name ?: (is_object($block) ? get_class($block) : $block) + ); if ($parent) { $this->_structure->setAsChild($name, $parent, $alias); } @@ -1210,7 +1234,7 @@ public function addBlock($block, $name = '', $parent = '', $alias = '') */ public function addContainer($name, $label, array $options = array(), $parent = '', $alias = '') { - $name = $this->_createStructuralElement($name, self::TYPE_CONTAINER); + $name = $this->_createStructuralElement($name, self::TYPE_CONTAINER, $alias); $this->_generateContainer($name, $label, $options); if ($parent) { $this->_structure->setAsChild($name, $parent, $alias); @@ -1424,7 +1448,7 @@ public static function findTranslationModuleName(Varien_Simplexml_Element $node) return $result; } foreach (array_reverse($node->xpath('ancestor::*[@module]')) as $element) { - $result = (string) $element->getAttribute('module'); + $result = (string)$element->getAttribute('module'); if ($result) { //return Mage::getConfig()->getModuleConfig($result) ? $result : 'core'; return $result; diff --git a/app/code/core/Mage/Core/Model/Layout/Merge.php b/app/code/core/Mage/Core/Model/Layout/Merge.php new file mode 100644 index 0000000000000..28d983651103f --- /dev/null +++ b/app/code/core/Mage/Core/Model/Layout/Merge.php @@ -0,0 +1,674 @@ +<?php +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Open Software License (OSL 3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/osl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Mage + * @package Mage_Core + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) + */ + +/** + * Layout merge model + */ +class Mage_Core_Model_Layout_Merge +{ + /** + * Additional tag for cleaning layout cache convenience + */ + const LAYOUT_GENERAL_CACHE_TAG = 'LAYOUT_GENERAL_CACHE_TAG'; + + /**#@+ + * Available item type names + */ + const TYPE_PAGE = 'page'; + const TYPE_FRAGMENT = 'fragment'; + /**#@-*/ + + /** + * @var string + */ + private $_area; + + /** + * @var string + */ + private $_package; + + /** + * @var string + */ + private $_theme; + + /** + * @var int + */ + private $_storeId; + + /** + * Layout Update Simplexml Element Class Name + * + * @var string + */ + protected $_elementClass; + + /** + * In-memory cache for loaded layout updates + * + * @var Mage_Core_Model_Layout_Element + */ + protected $_layoutUpdatesCache; + + /** + * Cumulative array of update XML strings + * + * @var array + */ + protected $_updates = array(); + + /** + * Handles used in this update + * + * @var array + */ + protected $_handles = array(); + + /** + * Page handle names sorted by from parent to child + * + * @var array + */ + protected $_pageHandles = array(); + + /** + * Substitution values in structure array('from' => array(), 'to' => array()) + * + * @var array + */ + protected $_subst = array(); + + /** + * Init merge model + * + * @param array $arguments + */ + public function __construct(array $arguments = array()) + { + /* Default values */ + $arguments += array( + 'area' => Mage::getDesign()->getArea(), + 'package' => Mage::getDesign()->getPackageName(), + 'theme' => Mage::getDesign()->getTheme(), + 'store' => null, + ); + $this->_area = $arguments['area']; + $this->_package = $arguments['package']; + $this->_theme = $arguments['theme']; + $this->_storeId = Mage::app()->getStore($arguments['store'])->getId(); + $this->_elementClass = Mage::getConfig()->getModelClassName('Mage_Core_Model_Layout_Element'); + + foreach (Mage::getConfig()->getPathVars() as $key => $value) { + $this->_subst['from'][] = '{{' . $key . '}}'; + $this->_subst['to'][] = $value; + } + } + + /** + * Add XML update instruction + * + * @param string $update + * @return Mage_Core_Model_Layout_Merge + */ + public function addUpdate($update) + { + $this->_updates[] = $update; + return $this; + } + + /** + * Get all registered updates as array + * + * @return array + */ + public function asArray() + { + return $this->_updates; + } + + /** + * Get all registered updates as string + * + * @return string + */ + public function asString() + { + return implode('', $this->_updates); + } + + /** + * Add handle(s) to update + * + * @param array|string $handleName + * @return Mage_Core_Model_Layout_Merge + */ + public function addHandle($handleName) + { + if (is_array($handleName)) { + foreach ($handleName as $name) { + $this->_handles[$name] = 1; + } + } else { + $this->_handles[$handleName] = 1; + } + return $this; + } + + /** + * Remove handle from update + * + * @param string $handleName + * @return Mage_Core_Model_Layout_Merge + */ + public function removeHandle($handleName) + { + unset($this->_handles[$handleName]); + return $this; + } + + /** + * Get handle names array + * + * @return array + */ + public function getHandles() + { + return array_keys($this->_handles); + } + + /** + * Add the first existing (declared in layout updates) page handle along with all parents to the update. + * Return whether any page handles have been added or not. + * + * @param array $handlesToTry + * @return bool + */ + public function addPageHandles(array $handlesToTry) + { + foreach ($handlesToTry as $handleName) { + if (!$this->pageHandleExists($handleName)) { + continue; + } + $handles = $this->getPageHandleParents($handleName); + $handles[] = $handleName; + + /* replace existing page handles with the new ones */ + foreach ($this->_pageHandles as $pageHandleName) { + $this->removeHandle($pageHandleName); + } + $this->_pageHandles = $handles; + $this->addHandle($handles); + return true; + } + return false; + } + + /** + * Retrieve the all parent handles ordered from parent to child. The $isPageTypeOnly parameters controls, + * whether only page type parent relation is processed. + * + * @param string $handleName + * @param bool $isPageTypeOnly + * @return array + */ + public function getPageHandleParents($handleName, $isPageTypeOnly = true) + { + $result = array(); + $node = $this->_getPageHandleNode($handleName); + while ($node) { + $parentItem = $node->getAttribute('parent'); + if (!$parentItem && !$isPageTypeOnly) { + $parentItem = $node->getAttribute('owner'); + } + $node = $this->_getPageHandleNode($parentItem); + if ($node) { + $result[] = $parentItem; + } + } + return array_reverse($result); + } + + /** + * Whether a page handle is declared in the system or not + * + * @param string $handleName + * @return bool + */ + public function pageHandleExists($handleName) + { + return (bool)$this->_getPageHandleNode($handleName); + } + + /** + * Get handle xml node by handle name + * + * @param string $handleName + * @return Mage_Core_Model_Layout_Element|null + */ + protected function _getPageHandleNode($handleName) + { + /* quick validation for non-existing page types */ + if (!$handleName || !isset($this->getFileLayoutUpdatesXml()->$handleName)) { + return null; + } + $condition = '@type="' . self::TYPE_PAGE . '" or @type="' . self::TYPE_FRAGMENT . '"'; + $nodes = $this->getFileLayoutUpdatesXml()->xpath("/layouts/{$handleName}[{$condition}][1]"); + return $nodes ? reset($nodes) : null; + } + + /** + * Retrieve used page handle names sorted from parent to child + * + * @return array + */ + public function getPageHandles() + { + return $this->_pageHandles; + } + + /** + * Retrieve full hierarchy of types and fragment types in the system + * + * Result format: + * array( + * 'handle_name_1' => array( + * 'name' => 'handle_name_1', + * 'label' => 'Handle Name 1', + * 'children' => array( + * 'handle_name_2' => array( + * 'name' => 'handle_name_2', + * 'label' => 'Handle Name 2', + * 'type' => self::TYPE_PAGE or self::TYPE_FRAGMENT, + * 'children' => array( + * // ... + * ) + * ), + * // ... + * ) + * ), + * // ... + * ) + * + * @return array + */ + public function getPageHandlesHierarchy() + { + return $this->_getPageHandleChildren(''); + } + + /** + * Retrieve recursively all children of a page handle + * + * @param string $parentName + * @return array + */ + protected function _getPageHandleChildren($parentName) + { + $result = array(); + + $conditions = array( + '(@type="' . self::TYPE_PAGE . '" and ' . ($parentName ? "@parent='$parentName'" : 'not(@parent)') . ')' + ); + if ($parentName) { + $conditions[] = '(@type="' . self::TYPE_FRAGMENT . '" and @owner="' . $parentName . '")'; + } + $xpath = '/layouts/*[' . implode(' or ', $conditions) . ']'; + $nodes = $this->getFileLayoutUpdatesXml()->xpath($xpath) ?: array(); + /** @var $node Mage_Core_Model_Layout_Element */ + foreach ($nodes as $node) { + $name = $node->getName(); + $info = array( + 'name' => $name, + 'label' => (string)$node->label, + 'type' => $node->getAttribute('type'), + 'children' => array() + ); + if ($info['type'] == self::TYPE_PAGE) { + $info['children'] = $this->_getPageHandleChildren($name); + } + $result[$name] = $info; + } + return $result; + } + + /** + * Retrieve the label for a page handle + * + * @param string $handleName + * @return string|null + */ + public function getPageHandleLabel($handleName) + { + $node = $this->_getPageHandleNode($handleName); + return $node ? (string)$node->label : null; + } + + /** + * Retrieve the type of a page handle + * + * @param string $handleName + * @return string|null + */ + public function getPageHandleType($handleName) + { + $node = $this->_getPageHandleNode($handleName); + return $node ? $node->getAttribute('type') : null; + } + + /** + * Load layout updates by handles + * + * @param array|string $handles + * @throws Magento_Exception + * @return Mage_Core_Model_Layout_Merge + */ + public function load($handles = array()) + { + if (is_string($handles)) { + $handles = array($handles); + } elseif (!is_array($handles)) { + throw new Magento_Exception('Invalid layout update handle'); + } + + $this->addHandle($handles); + + $cacheId = $this->_getCacheId(md5(implode('|', $this->getHandles()))); + $result = $this->_loadCache($cacheId); + if ($result) { + $this->addUpdate($result); + return $this; + } + + foreach ($this->getHandles() as $handle) { + $this->_merge($handle); + } + + foreach ($this->_loadDbUpdates() as $updateXml) { + $this->addUpdate($updateXml); + } + + $this->_saveCache($this->asString(), $cacheId, $this->getHandles()); + return $this; + } + + /** + * Load DB layout updates + * + * @return array + */ + protected function _loadDbUpdates() + { + return array(); + } + + /** + * Get layout updates as Mage_Core_Model_Layout_Element object + * + * @return Mage_Core_Model_Layout_Element + */ + public function asSimplexml() + { + $updates = trim($this->asString()); + $updates = '<' . '?xml version="1.0"?' . '><layout>' . $updates . '</layout>'; + return simplexml_load_string($updates, $this->_elementClass); + } + + /** + * Merge layout update by handle + * + * @param string $handle + * @return Mage_Core_Model_Layout_Merge + */ + protected function _merge($handle) + { + $this->_fetchPackageLayoutUpdates($handle); + if (Mage::isInstalled()) { + $this->_fetchDbLayoutUpdates($handle); + } + return $this; + } + + /** + * Add updates for the specified handle + * + * @param string $handle + * @return bool + */ + protected function _fetchPackageLayoutUpdates($handle) + { + $_profilerKey = 'layout_package_update:' . $handle; + Magento_Profiler::start($_profilerKey); + $layout = $this->getFileLayoutUpdatesXml(); + foreach ($layout->$handle as $updateXml) { + $this->_fetchRecursiveUpdates($updateXml); + $this->addUpdate($updateXml->innerXml()); + } + Magento_Profiler::stop($_profilerKey); + + return true; + } + + /** + * Fetch & add layout updates for the specified handle from the database + * + * @param string $handle + * @return bool + */ + protected function _fetchDbLayoutUpdates($handle) + { + $_profilerKey = 'layout_db_update: ' . $handle; + Magento_Profiler::start($_profilerKey); + $updateStr = $this->_getUpdateString($handle); + if (!$updateStr) { + Magento_Profiler::stop($_profilerKey); + return false; + } + $updateStr = '<update_xml>' . $updateStr . '</update_xml>'; + $updateStr = str_replace($this->_subst['from'], $this->_subst['to'], $updateStr); + $updateXml = simplexml_load_string($updateStr, $this->_elementClass); + $this->_fetchRecursiveUpdates($updateXml); + $this->addUpdate($updateXml->innerXml()); + + Magento_Profiler::stop($_profilerKey); + return (bool)$updateStr; + } + + /** + * Get update string + * + * @param string $handle + * @return string + */ + protected function _getUpdateString($handle) + { + return Mage::getResourceModel('Mage_Core_Model_Resource_Layout_Update')->fetchUpdatesByHandle($handle); + } + + /** + * Add handles declared as '<update handle="handle_name"/>' directives + * + * @param SimpleXMLElement $updateXml + * @return Mage_Core_Model_Layout_Merge + */ + protected function _fetchRecursiveUpdates($updateXml) + { + foreach ($updateXml->children() as $child) { + if (strtolower($child->getName()) == 'update' && isset($child['handle'])) { + $this->_merge((string)$child['handle']); + // Adding merged layout handle to the list of applied handles + $this->addHandle((string)$child['handle']); + } + } + return $this; + } + + /** + * Retrieve already merged layout updates from files for specified area/theme/package/store + * + * @return Mage_Core_Model_Layout_Element + */ + public function getFileLayoutUpdatesXml() + { + if ($this->_layoutUpdatesCache) { + return $this->_layoutUpdatesCache; + } + $cacheId = $this->_getCacheId(); + $result = $this->_loadCache($cacheId); + if ($result) { + $result = simplexml_load_string($result, $this->_elementClass); + } else { + $result = $this->_loadFileLayoutUpdatesXml(); + $this->_saveCache($result->asXml(), $cacheId); + } + $this->_layoutUpdatesCache = $result; + return $result; + } + + /** + * Retrieve cache identifier taking into account current area/package/theme/store + * + * @param string $suffix + * @return string + */ + protected function _getCacheId($suffix = '') + { + return "LAYOUT_{$this->_area}_STORE{$this->_storeId}_{$this->_package}_{$this->_theme}{$suffix}"; + } + + /** + * Retrieve data from the cache, if the layout caching is allowed, or FALSE otherwise + * + * @param string $cacheId + * @return string|false + */ + protected function _loadCache($cacheId) + { + if (!Mage::app()->useCache('layout')) { + return false; + } + return Mage::app()->loadCache($cacheId); + } + + /** + * Save data to the cache, if the layout caching is allowed + * + * @param string $data + * @param string $cacheId + * @param array $cacheTags + */ + protected function _saveCache($data, $cacheId, array $cacheTags = array()) + { + if (!Mage::app()->useCache('layout')) { + return; + } + $cacheTags[] = self::LAYOUT_GENERAL_CACHE_TAG; + Mage::app()->saveCache($data, $cacheId, $cacheTags, null); + } + + /** + * Collect and merge layout updates from files + * + * @throws Magento_Exception + * @return Mage_Core_Model_Layout_Element + */ + protected function _loadFileLayoutUpdatesXml() + { + $layoutParams = array('area' => $this->_area, 'package' => $this->_package, 'theme' => $this->_theme); + + /* + * Allow to modify declared layout updates. + * For example, the module can remove all its updates to not participate in rendering depending on settings. + */ + $updatesRootPath = $this->_area . '/layout/updates'; + $updatesRoot = Mage::app()->getConfig()->getNode($updatesRootPath); + Mage::dispatchEvent('core_layout_update_updates_get_after', array('updates' => $updatesRoot)); + + /* Layout update files declared in configuration */ + $updateFiles = array(); + foreach ($updatesRoot->children() as $updateNode) { + $module = $updateNode->getAttribute('module'); + $file = (string)$updateNode->file; + if (!$module || !$file) { + $updateNodePath = $updatesRootPath . '/' . $updateNode->getName(); + throw new Magento_Exception( + "Layout update instruction '{$updateNodePath}' must specify module and file." + ); + } + if (Mage::getStoreConfigFlag("advanced/modules_disable_output/{$module}", $this->_storeId)) { + continue; + } + /* Resolve layout update filename with fallback to the module */ + $filename = Mage::getDesign()->getFilename($file, $layoutParams + array('module' => $module)); + if (!is_readable($filename)) { + throw new Magento_Exception("Layout update file '{$filename}' doesn't exist or isn't readable."); + } + $updateFiles[] = $filename; + } + + /* Custom local layout updates file for the current theme */ + $filename = Mage::getDesign()->getFilename('local.xml', $layoutParams); + if (is_readable($filename)) { + $updateFiles[] = $filename; + } + + $layoutStr = ''; + foreach ($updateFiles as $filename) { + $fileStr = file_get_contents($filename); + $fileStr = str_replace($this->_subst['from'], $this->_subst['to'], $fileStr); + /** @var $fileXml Mage_Core_Model_Layout_Element */ + $fileXml = simplexml_load_string($fileStr, $this->_elementClass); + $layoutStr .= $fileXml->innerXml(); + } + $layoutStr = '<layouts>' . $layoutStr . '</layouts>'; + $layoutXml = simplexml_load_string($layoutStr, $this->_elementClass); + return $layoutXml; + } + + /** + * Retrieve containers from the update handles that have been already loaded + * + * Result format: + * array( + * 'container_name' => 'Container Label', + * // ... + * ) + * + * @return array + */ + public function getContainers() + { + $result = array(); + $containerNodes = $this->asSimplexml()->xpath('//container'); + /** @var $oneContainerNode Mage_Core_Model_Layout_Element */ + foreach ($containerNodes as $oneContainerNode) { + $helper = Mage::helper(Mage_Core_Model_Layout::findTranslationModuleName($oneContainerNode)); + $result[$oneContainerNode->getAttribute('name')] = $helper->__($oneContainerNode->getAttribute('label')); + } + return $result; + } +} diff --git a/app/code/core/Mage/Core/Model/Layout/Update.php b/app/code/core/Mage/Core/Model/Layout/Update.php index 85c33886b5b51..4e775280aae52 100644 --- a/app/code/core/Mage/Core/Model/Layout/Update.php +++ b/app/code/core/Mage/Core/Model/Layout/Update.php @@ -24,629 +24,16 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ - -class Mage_Core_Model_Layout_Update +/** + * Layout Update model class + */ +class Mage_Core_Model_Layout_Update extends Mage_Core_Model_Abstract { /** - * Additional tag for cleaning layout cache convenience - */ - const LAYOUT_GENERAL_CACHE_TAG = 'LAYOUT_GENERAL_CACHE_TAG'; - - /** - * Available item type names - */ - const TYPE_PAGE = 'page'; - const TYPE_FRAGMENT = 'fragment'; - - /** - * @var string - */ - private $_area; - - /** - * @var string - */ - private $_package; - - /** - * @var string - */ - private $_theme; - - /** - * @var int - */ - private $_storeId; - - /** - * Layout Update Simplexml Element Class Name - * - * @var string - */ - protected $_elementClass; - - /** - * In-memory cache for loaded layout updates - * - * @var Mage_Core_Model_Layout_Element - */ - protected $_layoutUpdatesCache; - - /** - * Cumulative array of update XML strings - * - * @var array - */ - protected $_updates = array(); - - /** - * Handles used in this update - * - * @var array - */ - protected $_handles = array(); - - /** - * Page handle names sorted by from parent to child - * - * @var array - */ - protected $_pageHandles = array(); - - /** - * Substitution values in structure array('from'=>array(), 'to'=>array()) - * - * @var array - */ - protected $_subst = array(); - - /** - * Constructor - * - * @param array $arguments - */ - public function __construct(array $arguments = array()) - { - /* Default values */ - $arguments += array( - 'area' => Mage::getDesign()->getArea(), - 'package' => Mage::getDesign()->getPackageName(), - 'theme' => Mage::getDesign()->getTheme(), - 'store' => null, - ); - $this->_area = $arguments['area']; - $this->_package = $arguments['package']; - $this->_theme = $arguments['theme']; - $this->_storeId = Mage::app()->getStore($arguments['store'])->getId(); - foreach (Mage::getConfig()->getPathVars() as $key => $value) { - $this->_subst['from'][] = '{{' . $key . '}}'; - $this->_subst['to'][] = $value; - } - } - - /** - * Retrieve XML element class name - * - * @return string - */ - public function getElementClass() - { - if (!$this->_elementClass) { - $this->_elementClass = Mage::getConfig()->getModelClassName('Mage_Core_Model_Layout_Element'); - } - return $this->_elementClass; - } - - /** - * Add XML update instruction - * - * @param string $update - * @return Mage_Core_Model_Layout_Update - */ - public function addUpdate($update) - { - $this->_updates[] = $update; - return $this; - } - - /** - * Get all registered updates as array - * - * @return array - */ - public function asArray() - { - return $this->_updates; - } - - /** - * Get all registered updates as string - * - * @return string - */ - public function asString() - { - return implode('', $this->_updates); - } - - /** - * Add handle(s) to update - * - * @param array|string $handleName - * @return Mage_Core_Model_Layout_Update - */ - public function addHandle($handleName) - { - if (is_array($handleName)) { - foreach ($handleName as $name) { - $this->_handles[$name] = 1; - } - } else { - $this->_handles[$handleName] = 1; - } - return $this; - } - - public function removeHandle($handleName) - { - unset($this->_handles[$handleName]); - return $this; - } - - public function getHandles() - { - return array_keys($this->_handles); - } - - /** - * Add the first existing (declared in layout updates) page handle along with all parents to the update. - * Return whether any page handles have been added or not. - * - * @param array $handlesToTry - * @return bool - */ - public function addPageHandles(array $handlesToTry) - { - foreach ($handlesToTry as $handleName) { - if (!$this->pageHandleExists($handleName)) { - continue; - } - $handles = $this->getPageHandleParents($handleName); - $handles[] = $handleName; - - /* replace existing page handles with the new ones */ - foreach ($this->_pageHandles as $handleName) { - $this->removeHandle($handleName); - } - $this->_pageHandles = $handles; - $this->addHandle($handles); - return true; - } - return false; - } - - /** - * Retrieve the all parent handles ordered from parent to child. The $isPageTypeOnly parameters controls, - * whether only page type parent relation is processed. - * - * @param string $handleName - * @param bool $isPageTypeOnly - * @return array - */ - public function getPageHandleParents($handleName, $isPageTypeOnly = true) - { - $result = array(); - $node = $this->_getPageHandleNode($handleName); - while ($node) { - $parentItem = $node->getAttribute('parent'); - if (!$parentItem && !$isPageTypeOnly) { - $parentItem = $node->getAttribute('owner'); - } - $node = $this->_getPageHandleNode($parentItem); - if ($node) { - $result[] = $parentItem; - } - } - return array_reverse($result); - } - - /** - * Whether a page handle is declared in the system or not - * - * @param string $handleName - * @return bool - */ - public function pageHandleExists($handleName) - { - return (bool)$this->_getPageHandleNode($handleName); - } - - /** - * Get handle xml node by handle name - * - * @param string $handleName - * @return Mage_Core_Model_Layout_Element|null - */ - protected function _getPageHandleNode($handleName) - { - /* quick validation for non-existing page types */ - if (!$handleName || !isset($this->getFileLayoutUpdatesXml()->$handleName)) { - return null; - } - $condition = '@type="' . self::TYPE_PAGE . '" or @type="' . self::TYPE_FRAGMENT . '"'; - $nodes = $this->getFileLayoutUpdatesXml()->xpath("/layouts/{$handleName}[$condition][1]"); - return $nodes ? reset($nodes) : null; - } - - /** - * Retrieve used page handle names sorted from parent to child - * - * @return array - */ - public function getPageHandles() - { - return $this->_pageHandles; - } - - /** - * Retrieve full hierarchy of types and fragment types in the system - * - * Result format: - * array( - * 'handle_name_1' => array( - * 'name' => 'handle_name_1', - * 'label' => 'Handle Name 1', - * 'children' => array( - * 'handle_name_2' => array( - * 'name' => 'handle_name_2', - * 'label' => 'Handle Name 2', - * 'type' => self::TYPE_PAGE or self::TYPE_FRAGMENT, - * 'children' => array( - * // ... - * ) - * ), - * // ... - * ) - * ), - * // ... - * ) - * - * @return array - */ - public function getPageHandlesHierarchy() - { - return $this->_getPageHandleChildren(''); - } - - /** - * Retrieve recursively all children of a page handle - * - * @param string $parentName - * @return array - */ - protected function _getPageHandleChildren($parentName) - { - $result = array(); - - $conditions = array( - '(@type="' . self::TYPE_PAGE . '" and ' . ($parentName ? "@parent='$parentName'" : 'not(@parent)') . ')' - ); - if ($parentName) { - $conditions[] = '(@type="' . self::TYPE_FRAGMENT . '" and @owner="' . $parentName . '")'; - } - $xpath = '/layouts/*[' . implode(' or ', $conditions) . ']'; - $nodes = $this->getFileLayoutUpdatesXml()->xpath($xpath) ?: array(); - /** @var $node Mage_Core_Model_Layout_Element */ - foreach ($nodes as $node) { - $name = $node->getName(); - $info = array( - 'name' => $name, - 'label' => (string)$node->label, - 'type' => $node->getAttribute('type'), - 'children' => array() - ); - if ($info['type'] == self::TYPE_PAGE) { - $info['children'] = $this->_getPageHandleChildren($name); - } - $result[$name] = $info; - } - return $result; - } - - /** - * Retrieve the label for a page handle - * - * @param string $handleName - * @return string|null - */ - public function getPageHandleLabel($handleName) - { - $node = $this->_getPageHandleNode($handleName); - return $node ? (string)$node->label : null; - } - - /** - * Retrieve the type of a page handle - * - * @param string $handleName - * @return string|bool - */ - public function getPageHandleType($handleName) - { - $node = $this->_getPageHandleNode($handleName); - return $node ? $node->getAttribute('type') : null; - } - - /** - * Load layout updates by handles - * - * @param array|string $handles - * @return Mage_Core_Model_Layout_Update - * @throws Magento_Exception - */ - public function load($handles = array()) - { - if (is_string($handles)) { - $handles = array($handles); - } else if (!is_array($handles)) { - throw new Magento_Exception('Invalid layout update handle'); - } - - $this->addHandle($handles); - - $cacheId = $this->_getCacheId(md5(implode('|', $this->getHandles()))); - $result = $this->_loadCache($cacheId); - if ($result) { - $this->addUpdate($result); - return $this; - } - - foreach ($this->getHandles() as $handle) { - $this->_merge($handle); - } - - $this->_saveCache($this->asString(), $cacheId, $this->getHandles()); - return $this; - } - - public function asSimplexml() - { - $updates = trim($this->asString()); - $updates = '<'.'?xml version="1.0"?'.'><layout>'.$updates.'</layout>'; - return simplexml_load_string($updates, $this->getElementClass()); - } - - /** - * Merge layout update by handle - * - * @param string $handle - * @return Mage_Core_Model_Layout_Update - */ - protected function _merge($handle) - { - $this->_fetchPackageLayoutUpdates($handle); - if (Mage::isInstalled()) { - $this->_fetchDbLayoutUpdates($handle); - } - return $this; - } - - /** - * Add updates for the specified handle - * - * @param string $handle - * @return bool - */ - protected function _fetchPackageLayoutUpdates($handle) - { - $_profilerKey = 'layout_package_update:' . $handle; - Magento_Profiler::start($_profilerKey); - $layout = $this->getFileLayoutUpdatesXml(); - foreach ($layout->$handle as $updateXml) { - $this->_fetchRecursiveUpdates($updateXml); - $this->addUpdate($updateXml->innerXml()); - } - Magento_Profiler::stop($_profilerKey); - - return true; - } - - /** - * Fetch & add layout updates for the specified handle from the database - * - * @param string $handle - * @return bool - */ - protected function _fetchDbLayoutUpdates($handle) - { - $_profilerKey = 'layout_db_update: ' . $handle; - Magento_Profiler::start($_profilerKey); - $updateStr = $this->_getUpdateString($handle); - if (!$updateStr) { - Magento_Profiler::stop($_profilerKey); - return false; - } - $updateStr = '<update_xml>' . $updateStr . '</update_xml>'; - $updateStr = str_replace($this->_subst['from'], $this->_subst['to'], $updateStr); - $updateXml = simplexml_load_string($updateStr, $this->getElementClass()); - $this->_fetchRecursiveUpdates($updateXml); - $this->addUpdate($updateXml->innerXml()); - - Magento_Profiler::stop($_profilerKey); - return (bool)$updateStr; - } - - /** - * Get update string - * - * @param string $handle - * @return mixed - */ - protected function _getUpdateString($handle) - { - return Mage::getResourceModel('Mage_Core_Model_Resource_Layout')->fetchUpdatesByHandle($handle); - } - - /** - * Add handles declared as '<update handle="handle_name"/>' directives - * - * @param SimpleXMLElement $updateXml - * @return Mage_Core_Model_Layout_Update - */ - protected function _fetchRecursiveUpdates($updateXml) - { - foreach ($updateXml->children() as $child) { - if (strtolower($child->getName()) == 'update' && isset($child['handle'])) { - $this->_merge((string)$child['handle']); - // Adding merged layout handle to the list of applied handles - $this->addHandle((string)$child['handle']); - } - } - return $this; - } - - /** - * Retrieve already merged layout updates from files for specified area/theme/package/store - * - * @return Mage_Core_Model_Layout_Element - */ - public function getFileLayoutUpdatesXml() - { - if ($this->_layoutUpdatesCache) { - return $this->_layoutUpdatesCache; - } - $cacheId = $this->_getCacheId(); - $result = $this->_loadCache($cacheId); - if ($result) { - $result = simplexml_load_string($result, $this->getElementClass()); - } else { - $result = $this->_loadFileLayoutUpdatesXml(); - $this->_saveCache($result->asXml(), $cacheId); - } - $this->_layoutUpdatesCache = $result; - return $result; - } - - /** - * Retrieve cache identifier taking into account current area/package/theme/store - * - * @param string $suffix - * @return string - */ - protected function _getCacheId($suffix = '') - { - return "LAYOUT_{$this->_area}_STORE{$this->_storeId}_{$this->_package}_{$this->_theme}{$suffix}"; - } - - /** - * Retrieve data from the cache, if the layout caching is allowed, or FALSE otherwise - * - * @param string $cacheId - * @return string|false - */ - protected function _loadCache($cacheId) - { - if (!Mage::app()->useCache('layout')) { - return false; - } - return Mage::app()->loadCache($cacheId); - } - - /** - * Save data to the cache, if the layout caching is allowed - * - * @param string $data - * @param string $cacheId - * @param array $cacheTags - */ - protected function _saveCache($data, $cacheId, array $cacheTags = array()) - { - if (!Mage::app()->useCache('layout')) { - return; - } - $cacheTags[] = self::LAYOUT_GENERAL_CACHE_TAG; - Mage::app()->saveCache($data, $cacheId, $cacheTags, null); - } - - /** - * Collect and merge layout updates from files - * - * @return Mage_Core_Model_Layout_Element - * @throws Magento_Exception - */ - protected function _loadFileLayoutUpdatesXml() - { - $layoutParams = array('area' => $this->_area, 'package' => $this->_package, 'theme' => $this->_theme); - - /* - * Allow to modify declared layout updates. - * For example, the module can remove all its updates to not participate in rendering depending on settings. - */ - $updatesRootPath = $this->_area . '/layout/updates'; - $updatesRoot = Mage::app()->getConfig()->getNode($updatesRootPath); - Mage::dispatchEvent('core_layout_update_updates_get_after', array('updates' => $updatesRoot)); - - /* Layout update files declared in configuration */ - $updateFiles = array(); - foreach ($updatesRoot->children() as $updateNode) { - $module = $updateNode->getAttribute('module'); - $file = (string)$updateNode->file; - if (!$module || !$file) { - $updateNodePath = $updatesRootPath . '/' . $updateNode->getName(); - throw new Magento_Exception( - "Layout update instruction '{$updateNodePath}' must specify module and file." - ); - } - if (Mage::getStoreConfigFlag("advanced/modules_disable_output/$module", $this->_storeId)) { - continue; - } - /* Resolve layout update filename with fallback to the module */ - $filename = Mage::getDesign()->getFilename($file, $layoutParams + array('module' => $module)); - if (!is_readable($filename)) { - throw new Magento_Exception("Layout update file '{$filename}' doesn't exist or isn't readable."); - } - $updateFiles[] = $filename; - } - - /* Custom local layout updates file for the current theme */ - $filename = Mage::getDesign()->getFilename('local.xml', $layoutParams); - if (is_readable($filename)) { - $updateFiles[] = $filename; - } - - $layoutStr = ''; - foreach ($updateFiles as $filename) { - $fileStr = file_get_contents($filename); - $fileStr = str_replace($this->_subst['from'], $this->_subst['to'], $fileStr); - /** @var $fileXml Mage_Core_Model_Layout_Element */ - $fileXml = simplexml_load_string($fileStr, $this->getElementClass()); - $layoutStr .= $fileXml->innerXml(); - } - $layoutStr = '<layouts>' . $layoutStr . '</layouts>'; - $layoutXml = simplexml_load_string($layoutStr, $this->getElementClass()); - return $layoutXml; - } - - /** - * Retrieve containers from the update handles that have been already loaded - * - * Result format: - * array( - * 'container_name' => 'Container Label', - * // ... - * ) - * - * @return array + * Layout Update model initialization */ - public function getContainers() + protected function _construct() { - $result = array(); - $containerNodes = $this->asSimplexml()->xpath('//container'); - /** @var $oneContainerNode Mage_Core_Model_Layout_Element */ - foreach ($containerNodes as $oneContainerNode) { - $helper = Mage::helper(Mage_Core_Model_Layout::findTranslationModuleName($oneContainerNode)); - $result[$oneContainerNode->getAttribute('name')] = $helper->__($oneContainerNode->getAttribute('label')); - } - return $result; + $this->_init('Mage_Core_Model_Resource_Layout_Update'); } } diff --git a/app/code/core/Mage/Core/Model/Resource/Layout.php b/app/code/core/Mage/Core/Model/Resource/Layout/Update.php similarity index 90% rename from app/code/core/Mage/Core/Model/Resource/Layout.php rename to app/code/core/Mage/Core/Model/Resource/Layout/Update.php index 98aecdac1aa27..f38d8b300d36e 100644 --- a/app/code/core/Mage/Core/Model/Resource/Layout.php +++ b/app/code/core/Mage/Core/Model/Resource/Layout/Update.php @@ -24,19 +24,13 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ - /** - * Core layout update resource model - * - * @category Mage - * @package Mage_Core - * @author Magento Core Team <core@magentocommerce.com> + * Layout update resource model */ -class Mage_Core_Model_Resource_Layout extends Mage_Core_Model_Resource_Db_Abstract +class Mage_Core_Model_Resource_Layout_Update extends Mage_Core_Model_Resource_Db_Abstract { /** * Define main table - * */ protected function _construct() { @@ -71,9 +65,8 @@ public function fetchUpdatesByHandle($handle, $params = array()) if ($readAdapter) { $select = $readAdapter->select() ->from(array('layout_update' => $this->getMainTable()), array('xml')) - ->join(array('link'=>$this->getTable('core_layout_link')), - 'link.layout_update_id=layout_update.layout_update_id', - '') + ->join(array('link'=>$this->getTable('core_layout_link')), + 'link.layout_update_id=layout_update.layout_update_id', '') ->where('link.store_id IN (0, :store_id)') ->where('link.area = :area') ->where('link.package = :package') @@ -104,6 +97,7 @@ protected function _afterSave(Mage_Core_Model_Abstract $object) 'layout_update_id' => $object->getId(), )); } + Mage::app()->cleanCache(array('layout', Mage_Core_Model_Layout_Merge::LAYOUT_GENERAL_CACHE_TAG)); return parent::_afterSave($object); } } diff --git a/app/code/core/Mage/Core/Model/Layout/Data.php b/app/code/core/Mage/Core/Model/Resource/Layout/Update/Collection.php similarity index 60% rename from app/code/core/Mage/Core/Model/Layout/Data.php rename to app/code/core/Mage/Core/Model/Resource/Layout/Update/Collection.php index 923a9f539581a..5ac835fbb45da 100644 --- a/app/code/core/Mage/Core/Model/Layout/Data.php +++ b/app/code/core/Mage/Core/Model/Resource/Layout/Update/Collection.php @@ -24,27 +24,31 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ - /** - * Enter description here ... - * - * @method Mage_Core_Model_Resource_Layout _getResource() - * @method Mage_Core_Model_Resource_Layout getResource() - * @method string getHandle() - * @method Mage_Core_Model_Layout_Data setHandle(string $value) - * @method string getXml() - * @method Mage_Core_Model_Layout_Data setXml(string $value) - * @method int getSortOrder() - * @method Mage_Core_Model_Layout_Data setSortOrder(int $value) - * - * @category Mage - * @package Mage_Core - * @author Magento Core Team <core@magentocommerce.com> + * Layout update collection model */ -class Mage_Core_Model_Layout_Data extends Mage_Core_Model_Abstract +class Mage_Core_Model_Resource_Layout_Update_Collection extends Mage_Core_Model_Resource_Db_Collection_Abstract { + /** + * Name prefix of events that are dispatched by model + * + * @var string + */ + protected $_eventPrefix = 'layout_update_collection'; + + /** + * Name of event parameter + * + * @var string + */ + protected $_eventObject = 'layout_update_collection'; + + /** + * Define resource model + */ protected function _construct() { - $this->_init('Mage_Core_Model_Resource_Layout'); + parent::_construct(); + $this->_init('Mage_Core_Model_Layout_Update', 'Mage_Core_Model_Resource_Layout_Update'); } } diff --git a/app/code/core/Mage/Core/Model/Translate/Inline.php b/app/code/core/Mage/Core/Model/Translate/Inline.php index 5e696c4d5173f..fa3818843ad45 100644 --- a/app/code/core/Mage/Core/Model/Translate/Inline.php +++ b/app/code/core/Mage/Core/Model/Translate/Inline.php @@ -251,8 +251,14 @@ protected function _insertInlineScriptsHtml() return; } - $url_prefix = Mage::app()->getStore()->isAdmin() ? 'adminhtml' : 'core'; - $ajaxUrl = Mage::getUrl($url_prefix . '/ajax/translate', + if (Mage::app()->getStore()->isAdmin()) { + $urlPrefix = 'adminhtml'; + $urlModel = Mage::getModel('Mage_Backend_Model_Url'); + } else { + $urlPrefix = 'core'; + $urlModel = Mage::getModel('Mage_Core_Model_Url'); + } + $ajaxUrl = $urlModel->getUrl($urlPrefix . '/ajax/translate', array('_secure'=>Mage::app()->getStore()->isCurrentlySecure())); $trigImg = Mage::getDesign()->getSkinUrl('Mage_Core::fam_book_open.png'); @@ -262,14 +268,20 @@ protected function _insertInlineScriptsHtml() <script type="text/javascript" src="<?php echo $design->getSkinUrl('prototype/window.js') ?>"></script> <link rel="stylesheet" type="text/css" href="<?php echo $design->getSkinUrl('prototype/windows/themes/default.css') ?>"/> <link rel="stylesheet" type="text/css" href="<?php echo $design->getSkinUrl('Mage_Core::prototype/magento.css') ?>"/> +<script type="text/javascript" src="<?php echo $design->getSkinUrl('mage/edit-trigger.js') ?>"></script> +<script type="text/javascript" src="<?php echo $design->getSkinUrl('mage/translate-inline.js') ?>"></script> +<link rel="stylesheet" type="text/css" href="<?php echo $design->getSkinUrl('mage/translate-inline.css') ?>"/> -<script type="text/javascript" src="<?php echo $design->getSkinUrl('mage/translate_inline.js') ?>"></script> -<link rel="stylesheet" type="text/css" href="<?php echo $design->getSkinUrl('mage/translate_inline.css') ?>"/> - -<div id="translate-inline-trig"><img src="<?php echo $trigImg ?>" alt="[TR]"/></div> <script type="text/javascript"> - new TranslateInline('translate-inline-trig', '<?php echo $ajaxUrl ?>', '<?php - echo Mage::getDesign()->getArea() ?>'); + (function($){ + $(document).ready(function() { + $(this).translateInline({ + ajaxUrl: '<?php echo $ajaxUrl ?>', + area: '<?php echo Mage::getDesign()->getArea() ?>', + editTrigger: {img: '<?php echo $trigImg ?>'} + }); + }); + })(jQuery); </script> <?php $html = ob_get_clean(); @@ -380,13 +392,13 @@ protected function _prepareTagAttributesForContent(&$content) $attrRegExp = '#' . $this->_tokenRegex . '#S'; $trArr = $this->_getTranslateData($attrRegExp, $tagHtml, array($this, '_getAttributeLocation')); if ($trArr) { - $transRegExp = '# translate=' . $quoteHtml . '\[([^'.preg_quote($quoteHtml).']*)]' . $quoteHtml . '#i'; + $transRegExp = '# data-translate=' . $quoteHtml . '\[([^'.preg_quote($quoteHtml).']*)]' . $quoteHtml . '#i'; if (preg_match($transRegExp, $tagHtml, $m)) { $tagHtml = str_replace($m[0], '', $tagHtml); //remove tra - $trAttr = ' translate=' . $quoteHtml + $trAttr = ' data-translate=' . $quoteHtml . htmlspecialchars('[' . $m[1] . ',' . join(',', $trArr) . ']') . $quoteHtml; } else { - $trAttr = ' translate=' . $quoteHtml + $trAttr = ' data-translate=' . $quoteHtml . htmlspecialchars('[' . join(',', $trArr) . ']') . $quoteHtml; } $tagHtml = substr_replace($tagHtml , $trAttr, strlen($tagMatch[1][0])+1, 1); @@ -429,7 +441,7 @@ protected function _specialTags() { protected function _applySpecialTagsFormat($tagHtml, $tagName, $trArr) { return $tagHtml . '<span class="translate-inline-' . $tagName - . '" translate=' + . '" data-translate=' . $this->_getHtmlQuote() . htmlspecialchars('[' . join(',', $trArr) . ']') . $this->_getHtmlQuote() . '>' @@ -447,7 +459,7 @@ protected function _applySpecialTagsFormat($tagHtml, $tagName, $trArr) protected function _applySimpleTagsFormat($tagHtml, $tagName, $trArr) { return substr($tagHtml, 0, strlen($tagName) + 1) - . ' translate=' + . ' data-translate=' . $this->_getHtmlQuote() . htmlspecialchars( '[' . join(',', $trArr) . ']') . $this->_getHtmlQuote() . substr($tagHtml, strlen($tagName) + 1); @@ -560,7 +572,7 @@ protected function _otherText() 'scope' => $m[4][0], )); - $spanHtml = '<span translate=' . $quoteHtml . htmlspecialchars('[' . $tr . ']') . $quoteHtml + $spanHtml = '<span data-translate=' . $quoteHtml . htmlspecialchars('[' . $tr . ']') . $quoteHtml . '>' . $m[1][0] . '</span>'; $this->_content = substr_replace($this->_content, $spanHtml, $m[0][1], strlen($m[0][0])); $next = $m[0][1] + strlen($spanHtml) - 1; diff --git a/app/code/core/Mage/Core/data/core_setup/data-upgrade-1.6.0.3-1.6.0.4.php b/app/code/core/Mage/Core/data/core_setup/data-upgrade-1.6.0.3-1.6.0.4.php index 6bd1a5cd1e477..36e88c5accd4a 100644 --- a/app/code/core/Mage/Core/data/core_setup/data-upgrade-1.6.0.3-1.6.0.4.php +++ b/app/code/core/Mage/Core/data/core_setup/data-upgrade-1.6.0.3-1.6.0.4.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Core/view/adminhtml/prototype/magento.css b/app/code/core/Mage/Core/view/adminhtml/prototype/magento.css index 9492d511e779c..0d907cce0cd71 100644 --- a/app/code/core/Mage/Core/view/adminhtml/prototype/magento.css +++ b/app/code/core/Mage/Core/view/adminhtml/prototype/magento.css @@ -59,3 +59,36 @@ /* FOR IE */ * html .magento_close { background-image:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/magento/window_close.png", sizingMethod="crop"); } + + +.dialog.ui-dialog, .ui-dialog .ui-dialog-titlebar, .ui-dialog .ui-dialog-buttonset button.button { -webkit-border-radius: 0px; border-radius: 0px; } +.dialog.ui-dialog { border:1px solid #555; display: none; padding: 0; } +.ui-widget-overlay { background:#000; filter:alpha(opacity=60); -moz-opacity:.6; opacity:.6; -webkit-opacity:.6; position: absolute; left:0px; top:0px; } +.ui-dialog .ui-dialog-titlebar { border-bottom:1px solid #e6e6e6; background:#6a838b url(magento/top_bg.gif) 0 100% repeat-x; height:28px; border: none; } +.ui-dialog .ui-dialog-titlebar span { margin: 0px; } +.ui-dialog .ui-dialog-title { float:left; width:100%; font:bold 12px/28px Arial, Helvetica, sans-serif; color:#fff; text-align:left; cursor: move; } +.ui-dialog .ui-dialog-content, .ui-dialog .ui-dialog-titlebar, .ui-dialog .ui-dialog-buttonset { padding: 0 6px; } +.ui-dialog .ui-icon { text-indent: -99999px; } +.ui-dialog .ui-dialog-titlebar-close { width:16px; height:16px; background:url(magento/window_close.png) no-repeat 0 0; position:absolute; top:5px; right:7px; cursor:pointer; z-index:1000; margin: 0px; padding: 0; } +.ui-dialog .ui-dialog-titlebar-close .ui-icon { display: none; } +.ui-dialog .ui-dialog-titlebar-close.ui-state-hover { border: none; } +.ui-dialog .ui-dialog-content form { display: block; overflow: hidden; } +.ui-dialog .ui-dialog-content { background: #fafafa url(magento/content_bg.gif) 0 0 repeat-x; overflow: auto; } +.ui-dialog .ui-dialog-buttonpane { background: #fafafa; margin: 0; padding: 0; border: none;} +.ui-dialog .ui-dialog-buttonset { padding:10px; text-align:right; } +.ui-dialog .ui-dialog-buttonset input.button { border-width:1px; border-style:solid; border-color:#ed6502 #a04300 #a04300 #ed6502; background:#ffac47 url(magento/btn_bg.gif) 0 100% repeat-x; padding:0 7px 1px 7px; font:bold 12px/18px Arial, Helvetica, sans-serif; color:#fff; cursor:pointer; text-align:center; white-space:nowrap; margin-left: 5px; } +.ui-dialog .ui-dialog-buttonset button.button { margin-left: 5px; background: #FFAC47; border-color: #ED6502 #A04300 #A04300 #ED6502; border-style: solid; border-width: 1px; color: #FFFFFF; cursor: pointer; font: bold 12px arial,helvetica,sans-serif; padding: 0; } +.ui-dialog .ui-dialog-buttonset button.button span { padding: 0 7px 1px; text-align: center !important; white-space: nowrap; display: block; background: transparent; height: auto; color:#ffffff; } +.ui-dialog .ui-dialog-buttonset button.button span span span { display:inline; background:none; padding:0; height:auto; } + +.ui-resizable { position: relative;} +.ui-resizable-handle { position: absolute;font-size: 0.1px; display: block; } +.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } +.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } +.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: 0px; left: 0; } +.ui-resizable-e { cursor: e-resize; width: 7px; right: 0px; top: 0; height: 100%; } +.ui-resizable-w { cursor: w-resize; width: 7px; left: -7px; top: 0; height: 100%; } +.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } +.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: 0px; } +.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } +.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: 0px; top: -5px;} diff --git a/app/code/core/Mage/Core/view/frontend/prototype/magento.css b/app/code/core/Mage/Core/view/frontend/prototype/magento.css index 9492d511e779c..5fd319663bba4 100644 --- a/app/code/core/Mage/Core/view/frontend/prototype/magento.css +++ b/app/code/core/Mage/Core/view/frontend/prototype/magento.css @@ -59,3 +59,36 @@ /* FOR IE */ * html .magento_close { background-image:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/magento/window_close.png", sizingMethod="crop"); } + + +.dialog.ui-dialog, .ui-dialog .ui-dialog-titlebar, .ui-dialog .ui-dialog-buttonset button.button { -webkit-border-radius: 0px; border-radius: 0px; } +.dialog.ui-dialog { border:1px solid #555; display: none; padding: 0; } +.ui-widget-overlay { background:#000; filter:alpha(opacity=60); -moz-opacity:.6; opacity:.6; -webkit-opacity:.6; position: absolute; left:0px; top:0px; } +.ui-dialog .ui-dialog-titlebar { border-bottom:1px solid #e6e6e6; background:#6a838b url(magento/top_bg.gif) 0 100% repeat-x; height:28px; border: none; } +.ui-dialog .ui-dialog-titlebar span { margin: 0px; } +.ui-dialog .ui-dialog-title { float:left; width:100%; font:bold 12px/28px Arial, Helvetica, sans-serif; color:#fff; text-align:left; cursor: move; } +.ui-dialog .ui-dialog-content, .ui-dialog .ui-dialog-titlebar, .ui-dialog .ui-dialog-buttonset { padding: 0 6px; } +.ui-dialog .ui-icon { text-indent: -99999px; } +.ui-dialog .ui-dialog-titlebar-close { width:16px; height:16px; background:url(magento/window_close.png) no-repeat 0 0; position:absolute; top:5px; right:7px; cursor:pointer; z-index:1000; margin: 0px; padding: 0; } +.ui-dialog .ui-dialog-titlebar-close .ui-icon { display: none; } +.ui-dialog .ui-dialog-titlebar-close.ui-state-hover { border: none; } +.ui-dialog .ui-dialog-content form { display: block; overflow: hidden; } +.ui-dialog .ui-dialog-content { background: #fafafa url(magento/content_bg.gif) 0 0 repeat-x; overflow: auto; } +.ui-dialog .ui-dialog-buttonpane { background: #fafafa; margin: 0; padding: 0; border: none;} +.ui-dialog .ui-dialog-buttonset { padding:10px; text-align:right; } +.ui-dialog .ui-dialog-buttonset input.button { border-width:1px; border-style:solid; border-color:#ed6502 #a04300 #a04300 #ed6502; background:#ffac47 url(magento/btn_bg.gif) 0 100% repeat-x; padding:0 7px 1px 7px; font:bold 12px/18px Arial, Helvetica, sans-serif; color:#fff; cursor:pointer; text-align:center; white-space:nowrap; margin-left: 5px; } +.ui-dialog .ui-dialog-buttonset button.button { margin-left: 5px; background: #FFAC47; border-color: #ED6502 #A04300 #A04300 #ED6502; border-style: solid; border-width: 1px; color: #FFFFFF; cursor: pointer; font: bold 12px arial,helvetica,sans-serif; padding: 0; } +.ui-dialog .ui-dialog-buttonset button.button span { padding: 0 7px 1px; text-align: center !important; white-space: nowrap; display: block; background: transparent; height: auto; color:#ffffff; } +.ui-dialog .ui-dialog-buttonset button.button span span span { display:inline; background:none; padding:0; height:auto; } + +.ui-resizable { position: relative;} +.ui-resizable-handle { position: absolute;font-size: 0.1px; display: block; } +.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } +.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } +.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: 0px; left: 0; } +.ui-resizable-e { cursor: e-resize; width: 7px; right: 0px; top: 0; height: 100%; } +.ui-resizable-w { cursor: w-resize; width: 7px; left: -7px; top: 0; height: 100%; } +.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } +.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: 0px; } +.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } +.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: 0px; top: -5px;} \ No newline at end of file diff --git a/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/System/CurrencysymbolController.php b/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/System/CurrencysymbolController.php index dd85a491ad1e9..b1d0f83912925 100644 --- a/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/System/CurrencysymbolController.php +++ b/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/System/CurrencysymbolController.php @@ -51,7 +51,7 @@ public function indexAction() ); $this->_title($this->__('System')) - ->_title($this->__('Manage Currency Rates')); + ->_title($this->__('Manage Currency Symbols')); $this->renderLayout(); } diff --git a/app/code/core/Mage/Customer/data/customer_setup/data-upgrade-1.6.2.0.1-1.6.2.0.2.php b/app/code/core/Mage/Customer/data/customer_setup/data-upgrade-1.6.2.0.1-1.6.2.0.2.php index 7e1eb9cf39976..1829ab6adc0fd 100644 --- a/app/code/core/Mage/Customer/data/customer_setup/data-upgrade-1.6.2.0.1-1.6.2.0.2.php +++ b/app/code/core/Mage/Customer/data/customer_setup/data-upgrade-1.6.2.0.1-1.6.2.0.2.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Dataflow/Model/Convert/Parser/Interface.php b/app/code/core/Mage/Dataflow/Model/Convert/Parser/Interface.php index 03614ec13f96d..da2ce41010078 100644 --- a/app/code/core/Mage/Dataflow/Model/Convert/Parser/Interface.php +++ b/app/code/core/Mage/Dataflow/Model/Convert/Parser/Interface.php @@ -35,8 +35,6 @@ interface Mage_Dataflow_Model_Convert_Parser_Interface { - public function parse(); - public function unparse(); } diff --git a/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form.php b/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form.php index 85cc22984bb0f..286889a126e96 100644 --- a/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form.php +++ b/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form.php @@ -42,7 +42,7 @@ protected function _prepareForm() 'target' => '_blank' )); - if (!Mage::app()->hasSingleStore()) { + if (!Mage::app()->isSingleStoreMode()) { $fieldset = $form->addFieldset( 'base_fieldset', array('legend' => Mage::helper('Mage_DesignEditor_Helper_Data')->__('Context Information')) diff --git a/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form/Container.php b/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form/Container.php index 970598eb316b8..395368d4ee17a 100644 --- a/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form/Container.php +++ b/app/code/core/Mage/DesignEditor/Block/Adminhtml/Launcher/Form/Container.php @@ -46,7 +46,7 @@ public function __construct() $this->_removeButton('reset'); $this->_removeButton('delete'); $this->_updateButton('save', 'label', Mage::helper('Mage_DesignEditor_Helper_Data')->__('Launch')); - $this->_updateButton('save', 'area', 'footer'); + $this->_updateButton('save', 'region', 'footer'); } /** diff --git a/app/code/core/Mage/DesignEditor/Block/Toolbar/HandlesHierarchy.php b/app/code/core/Mage/DesignEditor/Block/Toolbar/HandlesHierarchy.php index 682bc2bcbdccb..20361eba7d16b 100644 --- a/app/code/core/Mage/DesignEditor/Block/Toolbar/HandlesHierarchy.php +++ b/app/code/core/Mage/DesignEditor/Block/Toolbar/HandlesHierarchy.php @@ -49,7 +49,7 @@ protected function _renderHierarchy(array $hierarchy) } $result = '<ul>'; foreach ($hierarchy as $name => $info) { - $class = $info['type'] == Mage_Core_Model_Layout_Update::TYPE_FRAGMENT + $class = $info['type'] == Mage_Core_Model_Layout_Merge::TYPE_FRAGMENT ? ' class="vde_option_fragment"' : ''; $result .= '<li rel="' . $name . '"' . $class . '>'; diff --git a/app/code/core/Mage/DesignEditor/Model/Observer.php b/app/code/core/Mage/DesignEditor/Model/Observer.php index 602578bc1bd1f..079aac88add6e 100644 --- a/app/code/core/Mage/DesignEditor/Model/Observer.php +++ b/app/code/core/Mage/DesignEditor/Model/Observer.php @@ -69,11 +69,11 @@ public function addToolbar(Varien_Event_Observer $observer) return; } - /** @var $update Mage_Core_Model_Layout_Update */ + /** @var $update Mage_Core_Model_Layout_Merge */ $update = $observer->getEvent()->getLayout()->getUpdate(); $handles = $update->getHandles(); $handle = reset($handles); - if ($handle && $update->getPageHandleType($handle) == Mage_Core_Model_Layout_Update::TYPE_FRAGMENT) { + if ($handle && $update->getPageHandleType($handle) == Mage_Core_Model_Layout_Merge::TYPE_FRAGMENT) { $update->addHandle(self::HANDLE_PAGE); } $update->addHandle(self::HANDLE_TOOLBAR); diff --git a/app/code/core/Mage/DesignEditor/view/frontend/js/settimeout_override.js b/app/code/core/Mage/DesignEditor/view/frontend/js/settimeout_override.js index 721f635abfb4f..f84562243205b 100644 --- a/app/code/core/Mage/DesignEditor/view/frontend/js/settimeout_override.js +++ b/app/code/core/Mage/DesignEditor/view/frontend/js/settimeout_override.js @@ -1,4 +1,4 @@ -/** +/** * Magento * * NOTICE OF LICENSE @@ -15,63 +15,63 @@ * * Do not edit or add to this file if you wish to upgrade Magento to newer * versions in the future. If you wish to customize Magento for your - * needs please refer to http://www.magentocommerce.com for more information. - * - * @category Mage - * @package Mage_DesignEditor - * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) - * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) - */ - -(function() { - - var bindBeforeUnload = function() { - window.onbeforeunload = function(e) { - var e = e || window.event; - var messageText = 'Automatic redirect has been triggered.'; - // For IE and Firefox - if (e) { - e.returnValue = messageText; - } - // For Chrome and Safari - return messageText; - }; - } - - var unbindBeforeUnload = function () { - window.onbeforeunload = null; - } - - window.setTimeout = (function(oldSetTimeout) { - return function(func, delay) { - return oldSetTimeout(function() { - try { - bindBeforeUnload(); - func(); - unbindBeforeUnload(); - } - catch (exception) { - unbindBeforeUnload(); - throw exception; - } - }, delay); - }; - })(window.setTimeout); - - window.setInterval = (function(oldSetInterval) { - return function(func, delay) { - return oldSetInterval(function() { - try { - bindBeforeUnload(); - func(); - unbindBeforeUnload(); - } - catch (exception) { - unbindBeforeUnload(); - throw exception; - } - }, delay); - }; - })(window.setInterval); - -})(); + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Mage + * @package Mage_DesignEditor + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ + +(function() { + + var bindBeforeUnload = function() { + window.onbeforeunload = function(e) { + var e = e || window.event; + var messageText = 'Automatic redirect has been triggered.'; + // For IE and Firefox + if (e) { + e.returnValue = messageText; + } + // For Chrome and Safari + return messageText; + }; + } + + var unbindBeforeUnload = function () { + window.onbeforeunload = null; + } + + window.setTimeout = (function(oldSetTimeout) { + return function(func, delay) { + return oldSetTimeout(function() { + try { + bindBeforeUnload(); + func(); + unbindBeforeUnload(); + } + catch (exception) { + unbindBeforeUnload(); + throw exception; + } + }, delay); + }; + })(window.setTimeout); + + window.setInterval = (function(oldSetInterval) { + return function(func, delay) { + return oldSetInterval(function() { + try { + bindBeforeUnload(); + func(); + unbindBeforeUnload(); + } + catch (exception) { + unbindBeforeUnload(); + throw exception; + } + }, delay); + }; + })(window.setInterval); + +})(); diff --git a/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php b/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php index f3a81a8363dab..7b6e19c9d9c4a 100644 --- a/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php +++ b/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php @@ -253,15 +253,12 @@ public function getConfigMaxDownloads() */ protected function _prepareLayout() { - $this->setChild( - 'upload_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button')->addData(array( - 'id' => '', - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Upload Files'), - 'type' => 'button', - 'onclick' => 'Downloadable.massUploadByType(\'links\');Downloadable.massUploadByType(\'linkssample\')' - )) - ); + $this->addChild('upload_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'id' => '', + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Upload Files'), + 'type' => 'button', + 'onclick' => 'Downloadable.massUploadByType(\'links\');Downloadable.massUploadByType(\'linkssample\')' + )); } /** diff --git a/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php b/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php index 9f5bb5bc64056..8a907ccb779e2 100644 --- a/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php +++ b/app/code/core/Mage/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php @@ -156,16 +156,12 @@ public function getSamplesTitle() */ protected function _prepareLayout() { - $this->setChild( - 'upload_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->addData(array( - 'id' => '', - 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Upload Files'), - 'type' => 'button', - 'onclick' => 'Downloadable.massUploadByType(\'samples\')' - )) - ); + $this->addChild('upload_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'id' => '', + 'label' => Mage::helper('Mage_Adminhtml_Helper_Data')->__('Upload Files'), + 'type' => 'button', + 'onclick' => 'Downloadable.massUploadByType(\'samples\')' + )); } /** diff --git a/app/code/core/Mage/Downloadable/Model/Observer.php b/app/code/core/Mage/Downloadable/Model/Observer.php index 25cea949b6daa..daa6aed5ae7ba 100644 --- a/app/code/core/Mage/Downloadable/Model/Observer.php +++ b/app/code/core/Mage/Downloadable/Model/Observer.php @@ -293,4 +293,50 @@ public function initOptionRenderer(Varien_Event_Observer $observer) $block->addOptionsRenderCfg('downloadable', 'Mage_Downloadable_Helper_Catalog_Product_Configuration'); return $this; } + + /** + * Duplicating downloadable product data + * + * @param Varien_Event_Observer $observer + * @return Mage_Downloadable_Model_Observer + */ + public function duplicateProduct($observer) + { + $currentProduct = $observer->getCurrentProduct(); + $newProduct = $observer->getNewProduct(); + if ($currentProduct->getTypeId() !== Mage_Downloadable_Model_Product_Type::TYPE_DOWNLOADABLE) { + //do nothing if not downloadable + return $this; + } + $downloadableData = array(); + $type = $currentProduct->getTypeInstance(); + foreach ($type->getLinks($currentProduct) as $link) { + $linkData = $link->getData(); + $downloadableData['link'][] = array( + 'file' => $linkData['link_file'], + 'is_shareable' => $linkData['is_shareable'], + 'link_url' => $linkData['link_url'], + 'number_of_downloads' => $linkData['number_of_downloads'], + 'price' => $linkData['price'], + 'sample' => array( + 'file' => $linkData['sample_file'], + 'type' => $linkData['sample_type'], + 'url' => $linkData['sample_url']), + 'sort_order' => $linkData['sort_order'], + 'title' => $linkData['title'], + 'type' => $linkData['link_type'], + ); + } + foreach ($type->getSamples($currentProduct)->getData() as $sample) { + $downloadableData['sample'][] = array( + 'file' => $sample['sample_file'], + 'sample_url' => $sample['sample_url'], + 'sort_order' => $sample['sort_order'], + 'title' => $sample['title'], + 'type' => $sample['sample_type'], + ); + } + $newProduct->setDownloadableData($downloadableData); + return $this; + } } diff --git a/app/code/core/Mage/Downloadable/etc/config.xml b/app/code/core/Mage/Downloadable/etc/config.xml index 4a318dda6fd36..0cad050ead50f 100644 --- a/app/code/core/Mage/Downloadable/etc/config.xml +++ b/app/code/core/Mage/Downloadable/etc/config.xml @@ -125,6 +125,14 @@ </downloadable_observer> </observers> </catalog_product_prepare_save> + <catalog_model_product_duplicate> + <observers> + <downloadable_observer> + <class>Mage_Downloadable_Model_Observer</class> + <method>duplicateProduct</method> + </downloadable_observer> + </observers> + </catalog_model_product_duplicate> <sales_order_item_save_commit_after> <observers> <downloadable_observer> diff --git a/app/code/core/Mage/Eav/Block/Adminhtml/Attribute/Edit/Options/Abstract.php b/app/code/core/Mage/Eav/Block/Adminhtml/Attribute/Edit/Options/Abstract.php index 19777332b06f3..39f16ee457f03 100644 --- a/app/code/core/Mage/Eav/Block/Adminhtml/Attribute/Edit/Options/Abstract.php +++ b/app/code/core/Mage/Eav/Block/Adminhtml/Attribute/Edit/Options/Abstract.php @@ -47,20 +47,16 @@ public function __construct() */ protected function _prepareLayout() { - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Eav_Helper_Data')->__('Delete'), - 'class' => 'delete delete-option' - ))); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Eav_Helper_Data')->__('Delete'), + 'class' => 'delete delete-option' + )); - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Eav_Helper_Data')->__('Add Option'), - 'class' => 'add', - 'id' => 'add_new_option_button' - ))); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Eav_Helper_Data')->__('Add Option'), + 'class' => 'add', + 'id' => 'add_new_option_button' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Eav/Model/Attribute/Data/Abstract.php b/app/code/core/Mage/Eav/Model/Attribute/Data/Abstract.php index 6fca8fc639e6b..9a94465d85e00 100644 --- a/app/code/core/Mage/Eav/Model/Attribute/Data/Abstract.php +++ b/app/code/core/Mage/Eav/Model/Attribute/Data/Abstract.php @@ -48,6 +48,11 @@ abstract class Mage_Eav_Model_Attribute_Data_Abstract */ protected $_entity; + /** + * @var Mage_Core_Helper_Data + */ + protected $_translationHelper; + /** * Request Scope name * @@ -84,6 +89,17 @@ abstract class Mage_Eav_Model_Attribute_Data_Abstract */ protected $_dateFilterFormat; + /** + * Constructor + * + * @param array $arguments + */ + public function __construct(array $arguments = array()) + { + $this->_translationHelper = isset($arguments['translationHelper']) + ? $arguments['translationHelper'] : Mage::helper('Mage_Eav_Helper_Data'); + } + /** * Set attribute instance * @@ -105,7 +121,7 @@ public function setAttribute(Mage_Eav_Model_Entity_Attribute_Abstract $attribute public function getAttribute() { if (!$this->_attribite) { - Mage::throwException(Mage::helper('Mage_Eav_Helper_Data')->__('Attribute object is undefined')); + Mage::throwException($this->_translationHelper->__('Attribute object is undefined')); } return $this->_attribite; } @@ -155,7 +171,7 @@ public function setEntity(Mage_Core_Model_Abstract $entity) public function getEntity() { if (!$this->_entity) { - Mage::throwException(Mage::helper('Mage_Eav_Helper_Data')->__('Entity object is undefined')); + Mage::throwException($this->_translationHelper->__('Entity object is undefined')); } return $this->_entity; } @@ -290,15 +306,15 @@ protected function _validateInputRule($value) case 'alphanumeric': $validator = new Zend_Validate_Alnum(true); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" invalid type entered.', $label), + $this->_translationHelper->__('"%s" invalid type entered.', $label), Zend_Validate_Alnum::INVALID ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" has not only alphabetic and digit characters.', $label), + $this->_translationHelper->__('"%s" has not only alphabetic and digit characters.', $label), Zend_Validate_Alnum::NOT_ALNUM ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is an empty string.', $label), + $this->_translationHelper->__('"%s" is an empty string.', $label), Zend_Validate_Alnum::STRING_EMPTY ); if (!$validator->isValid($value)) { @@ -308,15 +324,15 @@ protected function _validateInputRule($value) case 'numeric': $validator = new Zend_Validate_Digits(); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" invalid type entered.', $label), + $this->_translationHelper->__('"%s" invalid type entered.', $label), Zend_Validate_Digits::INVALID ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" contains not only digit characters.', $label), + $this->_translationHelper->__('"%s" contains not only digit characters.', $label), Zend_Validate_Digits::NOT_DIGITS ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is an empty string.', $label), + $this->_translationHelper->__('"%s" is an empty string.', $label), Zend_Validate_Digits::STRING_EMPTY ); if (!$validator->isValid($value)) { @@ -326,15 +342,15 @@ protected function _validateInputRule($value) case 'alpha': $validator = new Zend_Validate_Alpha(true); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" invalid type entered.', $label), + $this->_translationHelper->__('"%s" invalid type entered.', $label), Zend_Validate_Alpha::INVALID ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" has not only alphabetic characters.', $label), + $this->_translationHelper->__('"%s" has not only alphabetic characters.', $label), Zend_Validate_Alpha::NOT_ALPHA ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is an empty string.', $label), + $this->_translationHelper->__('"%s" is an empty string.', $label), Zend_Validate_Alpha::STRING_EMPTY ); if (!$validator->isValid($value)) { @@ -357,71 +373,71 @@ protected function _validateInputRule($value) */ $validator = new Zend_Validate_EmailAddress(); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" invalid type entered.', $label), + $this->_translationHelper->__('"%s" invalid type entered.', $label), Zend_Validate_EmailAddress::INVALID ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid email address.', $label), + $this->_translationHelper->__('"%s" is not a valid email address.', $label), Zend_Validate_EmailAddress::INVALID_FORMAT ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid hostname.', $label), + $this->_translationHelper->__('"%s" is not a valid hostname.', $label), Zend_Validate_EmailAddress::INVALID_HOSTNAME ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid hostname.', $label), + $this->_translationHelper->__('"%s" is not a valid hostname.', $label), Zend_Validate_EmailAddress::INVALID_MX_RECORD ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid hostname.', $label), + $this->_translationHelper->__('"%s" is not a valid hostname.', $label), Zend_Validate_EmailAddress::INVALID_MX_RECORD ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid email address.', $label), + $this->_translationHelper->__('"%s" is not a valid email address.', $label), Zend_Validate_EmailAddress::DOT_ATOM ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid email address.', $label), + $this->_translationHelper->__('"%s" is not a valid email address.', $label), Zend_Validate_EmailAddress::QUOTED_STRING ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid email address.', $label), + $this->_translationHelper->__('"%s" is not a valid email address.', $label), Zend_Validate_EmailAddress::INVALID_LOCAL_PART ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" exceeds the allowed length.', $label), + $this->_translationHelper->__('"%s" exceeds the allowed length.', $label), Zend_Validate_EmailAddress::LENGTH_EXCEEDED ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be an IP address, but IP addresses are not allowed"), + $this->_translationHelper->__("'%value%' appears to be an IP address, but IP addresses are not allowed"), Zend_Validate_Hostname::IP_ADDRESS_NOT_ALLOWED ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a DNS hostname but cannot match TLD against known list"), + $this->_translationHelper->__("'%value%' appears to be a DNS hostname but cannot match TLD against known list"), Zend_Validate_Hostname::UNKNOWN_TLD ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a DNS hostname but contains a dash in an invalid position"), + $this->_translationHelper->__("'%value%' appears to be a DNS hostname but contains a dash in an invalid position"), Zend_Validate_Hostname::INVALID_DASH ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a DNS hostname but cannot match against hostname schema for TLD '%tld%'"), + $this->_translationHelper->__("'%value%' appears to be a DNS hostname but cannot match against hostname schema for TLD '%tld%'"), Zend_Validate_Hostname::INVALID_HOSTNAME_SCHEMA ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a DNS hostname but cannot extract TLD part"), + $this->_translationHelper->__("'%value%' appears to be a DNS hostname but cannot extract TLD part"), Zend_Validate_Hostname::UNDECIPHERABLE_TLD ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' does not appear to be a valid local network name"), + $this->_translationHelper->__("'%value%' does not appear to be a valid local network name"), Zend_Validate_Hostname::INVALID_LOCAL_NAME ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a local network name but local network names are not allowed"), + $this->_translationHelper->__("'%value%' appears to be a local network name but local network names are not allowed"), Zend_Validate_Hostname::LOCAL_NAME_NOT_ALLOWED ); $validator->setMessage( - Mage::helper('Mage_Customer_Helper_Data')->__("'%value%' appears to be a DNS hostname but the given punycode notation cannot be decoded"), + $this->_translationHelper->__("'%value%' appears to be a DNS hostname but the given punycode notation cannot be decoded"), Zend_Validate_Hostname::CANNOT_DECODE_PUNYCODE ); if (!$validator->isValid($value)) { @@ -431,25 +447,25 @@ protected function _validateInputRule($value) case 'url': $parsedUrl = parse_url($value); if ($parsedUrl === false || empty($parsedUrl['scheme']) || empty($parsedUrl['host'])) { - return array(Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid URL.', $label)); + return array($this->_translationHelper->__('"%s" is not a valid URL.', $label)); } $validator = new Zend_Validate_Hostname(); if (!$validator->isValid($parsedUrl['host'])) { - return array(Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid URL.', $label)); + return array($this->_translationHelper->__('"%s" is not a valid URL.', $label)); } break; case 'date': $validator = new Zend_Validate_Date(Varien_Date::DATE_INTERNAL_FORMAT); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" invalid type entered.', $label), + $this->_translationHelper->__('"%s" invalid type entered.', $label), Zend_Validate_Date::INVALID ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is not a valid date.', $label), + $this->_translationHelper->__('"%s" is not a valid date.', $label), Zend_Validate_Date::INVALID_DATE ); $validator->setMessage( - Mage::helper('Mage_Eav_Helper_Data')->__('"%s" does not fit the entered date format.', $label), + $this->_translationHelper->__('"%s" does not fit the entered date format.', $label), Zend_Validate_Date::FALSEFORMAT ); if (!$validator->isValid($value)) { diff --git a/app/code/core/Mage/Eav/Model/Attribute/Data/Text.php b/app/code/core/Mage/Eav/Model/Attribute/Data/Text.php index c48ed5932025f..c2ef15b0c33c8 100644 --- a/app/code/core/Mage/Eav/Model/Attribute/Data/Text.php +++ b/app/code/core/Mage/Eav/Model/Attribute/Data/Text.php @@ -34,6 +34,23 @@ */ class Mage_Eav_Model_Attribute_Data_Text extends Mage_Eav_Model_Attribute_Data_Abstract { + /** + * @var Mage_Core_Helper_String + */ + protected $_stringHelper; + + /** + * Constructor + * + * @param array $arguments + */ + public function __construct(array $arguments = array()) + { + parent::__construct($arguments); + $this->_stringHelper = isset($arguments['stringHelper']) + ? $arguments['stringHelper'] : Mage::helper('Mage_Core_Helper_String'); + } + /** * Extract data from request and return value * @@ -57,15 +74,15 @@ public function validateValue($value) { $errors = array(); $attribute = $this->getAttribute(); - $label = Mage::helper('Mage_Eav_Helper_Data')->__($attribute->getStoreLabel()); + $label = $this->_translationHelper->__($attribute->getStoreLabel()); if ($value === false) { // try to load original value and validate it $value = $this->getEntity()->getDataUsingMethod($attribute->getAttributeCode()); } - if ($attribute->getIsRequired() && empty($value)) { - $errors[] = Mage::helper('Mage_Eav_Helper_Data')->__('"%s" is a required value.', $label); + if ($attribute->getIsRequired() && empty($value) && $value !== '0') { + $errors[] = $this->_translationHelper->__('"%s" is a required value.', $label); } if (!$errors && !$attribute->getIsRequired() && empty($value)) { @@ -73,16 +90,16 @@ public function validateValue($value) } // validate length - $length = Mage::helper('Mage_Core_Helper_String')->strlen(trim($value)); + $length = $this->_stringHelper->strlen(trim($value)); $validateRules = $attribute->getValidateRules(); if (!empty($validateRules['min_text_length']) && $length < $validateRules['min_text_length']) { $v = $validateRules['min_text_length']; - $errors[] = Mage::helper('Mage_Eav_Helper_Data')->__('"%s" length must be equal or greater than %s characters.', $label, $v); + $errors[] = $this->_translationHelper->__('"%s" length must be equal or greater than %s characters.', $label, $v); } if (!empty($validateRules['max_text_length']) && $length > $validateRules['max_text_length']) { $v = $validateRules['max_text_length']; - $errors[] = Mage::helper('Mage_Eav_Helper_Data')->__('"%s" length must be equal or less than %s characters.', $label, $v); + $errors[] = $this->_translationHelper->__('"%s" length must be equal or less than %s characters.', $label, $v); } $result = $this->_validateInputRule($value); diff --git a/app/code/core/Mage/Eav/Model/Resource/Entity/Attribute.php b/app/code/core/Mage/Eav/Model/Resource/Entity/Attribute.php index ed508810be5c2..f44827c41fe72 100755 --- a/app/code/core/Mage/Eav/Model/Resource/Entity/Attribute.php +++ b/app/code/core/Mage/Eav/Model/Resource/Entity/Attribute.php @@ -361,16 +361,12 @@ protected function _saveOption(Mage_Core_Model_Abstract $object) return $this; } - /* System attribute options are permanent, which of them is default can be changed only */ - if (!$object->getIsUserDefined() && !$object->getCanManageOptionLabels() && !$object->isObjectNew()) { - $defaultValue = $object->getDefault() ?: array(); - } elseif (isset($option['value'])) { + $defaultValue = null; + if (isset($option['value'])) { if (!is_array($object->getDefault())) { $object->setDefault(array()); } - $defaultValue = $this->_processUserDefinedAttributeOptions($object, $option); - } else { - $defaultValue = null; + $defaultValue = $this->_processAttributeOptions($object, $option); } $this->_saveDefaultValue($object, $defaultValue); @@ -378,23 +374,23 @@ protected function _saveOption(Mage_Core_Model_Abstract $object) } /** - * Save changes of user defined attribute options, return obtained default value + * Save changes of attribute options, return obtained default value * * @param Mage_Eav_Model_Entity_Attribute|Mage_Core_Model_Abstract $object * @param array $option * @return array */ - protected function _processUserDefinedAttributeOptions($object, $option) + protected function _processAttributeOptions($object, $option) { $defaultValue = array(); foreach ($option['value'] as $optionId => $values) { - $intOptionId = $this->_updateUserDefinedAttributeOption($object, $optionId, $option); + $intOptionId = $this->_updateAttributeOption($object, $optionId, $option); if ($intOptionId === false) { continue; } - $this->_updateDefaultValue($object, $optionId, $defaultValue); + $this->_updateDefaultValue($object, $optionId, $intOptionId, $defaultValue); $this->_checkDefaultOptionValue($values); - $this->_updateUserDefinedAttributeOptionValues($intOptionId, $values); + $this->_updateAttributeOptionValues($intOptionId, $values); } return $defaultValue; } @@ -416,17 +412,18 @@ protected function _checkDefaultOptionValue($values) * Update attribute default value * * @param Mage_Eav_Model_Entity_Attribute|Mage_Core_Model_Abstract $object - * @param int $optionId + * @param int|string $optionId + * @param int $intOptionId * @param array $defaultValue */ - protected function _updateDefaultValue($object, $optionId, &$defaultValue) + protected function _updateDefaultValue($object, $optionId, $intOptionId, &$defaultValue) { if (in_array($optionId, $object->getDefault())) { $frontendInput = $object->getFrontendInput(); - if ($frontendInput == 'multiselect') { - $defaultValue[] = (int)$optionId; - } elseif ($frontendInput == 'select') { - $defaultValue = array((int)$optionId); + if ($frontendInput === 'multiselect') { + $defaultValue[] = $intOptionId; + } elseif ($frontendInput === 'select') { + $defaultValue = array($intOptionId); } } } @@ -454,7 +451,7 @@ protected function _saveDefaultValue($object, $defaultValue) * @param array $option * @return int|bool */ - protected function _updateUserDefinedAttributeOption($object, $optionId, $option) + protected function _updateAttributeOption($object, $optionId, $option) { $adapter = $this->_getWriteAdapter(); $table = $this->getTable('eav_attribute_option'); @@ -490,7 +487,7 @@ protected function _updateUserDefinedAttributeOption($object, $optionId, $option * @param int $optionId * @param array $values */ - protected function _updateUserDefinedAttributeOptionValues($optionId, $values) + protected function _updateAttributeOptionValues($optionId, $values) { $adapter = $this->_getWriteAdapter(); $table = $this->getTable('eav_attribute_option_value'); diff --git a/app/code/core/Mage/Eav/data/eav_setup/data-upgrade-1.6.0.0-1.6.0.1.php b/app/code/core/Mage/Eav/data/eav_setup/data-upgrade-1.6.0.0-1.6.0.1.php index 6414b8e21d59c..121778192c738 100644 --- a/app/code/core/Mage/Eav/data/eav_setup/data-upgrade-1.6.0.0-1.6.0.1.php +++ b/app/code/core/Mage/Eav/data/eav_setup/data-upgrade-1.6.0.0-1.6.0.1.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Items.php b/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Items.php index fa3b2174875ec..6eaca196aca47 100644 --- a/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Items.php +++ b/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Items.php @@ -47,18 +47,9 @@ public function __construct() */ protected function _prepareLayout() { - $this->setChild( - 'item', - $this->getLayout()->createBlock('Mage_GoogleShopping_Block_Adminhtml_Items_Item') - ); - $this->setChild( - 'product', - $this->getLayout()->createBlock('Mage_GoogleShopping_Block_Adminhtml_Items_Product') - ); - $this->setChild( - 'store_switcher', - $this->getLayout()->createBlock('Mage_GoogleShopping_Block_Adminhtml_Store_Switcher') - ); + $this->addChild('item', 'Mage_GoogleShopping_Block_Adminhtml_Items_Item'); + $this->addChild('product', 'Mage_GoogleShopping_Block_Adminhtml_Items_Product'); + $this->addChild('store_switcher', 'Mage_GoogleShopping_Block_Adminhtml_Store_Switcher'); return $this; } diff --git a/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Types/Edit/Attributes.php b/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Types/Edit/Attributes.php index b14c7e71336e2..5ad9f973a4ca8 100644 --- a/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Types/Edit/Attributes.php +++ b/app/code/core/Mage/GoogleShopping/Block/Adminhtml/Types/Edit/Attributes.php @@ -46,23 +46,17 @@ public function __construct() */ protected function _prepareLayout() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_GoogleShopping_Helper_Data')->__('Add New Attribute'), - 'class' => 'add', - 'id' => 'add_new_attribute', - 'on_click' => 'gContentAttribute.add()' - )) - ); - $this->setChild('delete_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_GoogleShopping_Helper_Data')->__('Remove'), - 'class' => 'delete delete-product-option', - 'on_click' => 'gContentAttribute.remove(event)' - )) - ); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_GoogleShopping_Helper_Data')->__('Add New Attribute'), + 'class' => 'add', + 'id' => 'add_new_attribute', + 'on_click' => 'gContentAttribute.add()' + )); + $this->addChild('delete_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_GoogleShopping_Helper_Data')->__('Remove'), + 'class' => 'delete delete-product-option', + 'on_click' => 'gContentAttribute.remove(event)' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/GoogleShopping/view/adminhtml/types/edit/attributes.phtml b/app/code/core/Mage/GoogleShopping/view/adminhtml/types/edit/attributes.phtml index f5bcddd268ccd..b17e0b38babbb 100644 --- a/app/code/core/Mage/GoogleShopping/view/adminhtml/types/edit/attributes.phtml +++ b/app/code/core/Mage/GoogleShopping/view/adminhtml/types/edit/attributes.phtml @@ -93,7 +93,7 @@ var attributesSelectTemplate = '<div id="<?php echo $this->getFieldId() ?>_{{ind '<input type="hidden" name="<?php echo $this->getFieldName() ?>[{{index}}][delete]" value="" class="delete">' + '</td>' + '<td><?php echo $this->getGcontentAttributesSelectHtml() ?></td>' + - '<td> <?php echo $this->getDeleteButtonHtml() ?></td>' + + '<td> ' + <?php echo Mage::helper('Mage_Core_Helper_Data')->jsonEncode($this->getDeleteButtonHtml()) ?> + '</td>' + '</tr>' + '</tbody>' + '</table>' + diff --git a/app/code/core/Mage/ImportExport/Block/Adminhtml/Export/Filter.php b/app/code/core/Mage/ImportExport/Block/Adminhtml/Export/Filter.php index 5bd41e09334df..226a1f386bd59 100644 --- a/app/code/core/Mage/ImportExport/Block/Adminhtml/Export/Filter.php +++ b/app/code/core/Mage/ImportExport/Block/Adminhtml/Export/Filter.php @@ -337,9 +337,6 @@ public function getRowUrl($row) public function prepareCollection(Varien_Data_Collection $collection) { $this->_collection = $collection; - - $this->_prepareGrid(); - return $this->_collection; } } diff --git a/app/code/core/Mage/Newsletter/data/newsletter_setup/data-upgrade-1.6.0.1-1.6.0.2.php b/app/code/core/Mage/Newsletter/data/newsletter_setup/data-upgrade-1.6.0.1-1.6.0.2.php index ac0a3a3b53224..ab53fbadfcf5d 100644 --- a/app/code/core/Mage/Newsletter/data/newsletter_setup/data-upgrade-1.6.0.1-1.6.0.2.php +++ b/app/code/core/Mage/Newsletter/data/newsletter_setup/data-upgrade-1.6.0.1-1.6.0.2.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Page/Block/Html/Head.php b/app/code/core/Mage/Page/Block/Html/Head.php index c49940c4e4794..ebf0a032da6f7 100644 --- a/app/code/core/Mage/Page/Block/Html/Head.php +++ b/app/code/core/Mage/Page/Block/Html/Head.php @@ -68,17 +68,6 @@ public function addCss($name, $params = '', $if = null, $cond = null) */ public function addJs($name, $params = '', $if = null, $cond = null) { - /* This only temporarily remove old js files from refactored pages - * needs to remove this code and remove files from layout.xml files - * when all refactor works have been complete. - */ - $excludePages = array('catalog-category-view', 'cms-index-index'); - $currentPage = Mage::app()->getRequest()->getModuleName() . '-' - . Mage::app()->getRequest()->getControllerName() . '-' . - Mage::app()->getRequest()->getActionName(); - if (in_array($currentPage, $excludePages)) { - return; - } return $this->_addItem('js', $name, $params, $if, $cond); } diff --git a/app/code/core/Mage/Page/etc/config.xml b/app/code/core/Mage/Page/etc/config.xml index 6c80568db16b7..12e47471d4362 100644 --- a/app/code/core/Mage/Page/etc/config.xml +++ b/app/code/core/Mage/Page/etc/config.xml @@ -83,6 +83,9 @@ <page module="Mage_Page"> <file>layout.xml</file> </page> + <page_addons module="Mage_Page"> + <file>layout_addons.xml</file> + </page_addons> </updates> </layout> </frontend> diff --git a/app/code/core/Mage/Page/view/frontend/layout_addons.xml b/app/code/core/Mage/Page/view/frontend/layout_addons.xml new file mode 100644 index 0000000000000..66dc06b5a2da5 --- /dev/null +++ b/app/code/core/Mage/Page/view/frontend/layout_addons.xml @@ -0,0 +1,36 @@ +<?xml version="1.0"?> +<!-- +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +--> +<layout version="0.1.0"> + <default> + <reference name="head"> + <action method="addJs"><file>jquery/jquery-1.7.1.min.js</file></action> + <action method="addJs"><file>mage/jquery-no-conflict.js</file></action> + <action method="addJs"><file>jquery/jquery-ui-1.8.18.custom.min.js</file></action> + <action method="addJs"><file>jquery/jquery.tmpl.min.js</file></action> + <action method="addJs"><file>mage/loader.js</file></action> + </reference> + </default> +</layout> diff --git a/app/code/core/Mage/Payment/Helper/Data.php b/app/code/core/Mage/Payment/Helper/Data.php index e163e49fb2011..72883e96d5097 100644 --- a/app/code/core/Mage/Payment/Helper/Data.php +++ b/app/code/core/Mage/Payment/Helper/Data.php @@ -103,7 +103,7 @@ public function getMethodFormBlock(Mage_Payment_Model_Method_Abstract $method) $block = false; $blockType = $method->getFormBlockType(); if ($this->getLayout()) { - $block = $this->getLayout()->createBlock($blockType); + $block = $this->getLayout()->createBlock($blockType, $method->getCode()); $block->setMethod($method); } return $block; @@ -112,8 +112,8 @@ public function getMethodFormBlock(Mage_Payment_Model_Method_Abstract $method) /** * Retrieve payment information block * - * @param Mage_Payment_Model_Info $info - * @return Mage_Core_Block_Template + * @param Mage_Payment_Model_Info $info + * @return Mage_Core_Block_Template */ public function getInfoBlock(Mage_Payment_Model_Info $info) { @@ -124,6 +124,37 @@ public function getInfoBlock(Mage_Payment_Model_Info $info) return $block; } + /** + * Render payment information block + * + * @param Mage_Payment_Model_Info $info + * @param int $storeId + * @return string + * @throws Exception + */ + public function getInfoBlockHtml(Mage_Payment_Model_Info $info, $storeId) + { + /** @var $appEmulation Mage_Core_Model_App_Emulation */ + $appEmulation = Mage::getSingleton('Mage_Core_Model_App_Emulation'); + $initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId); + + try { + // Retrieve specified view block from appropriate design package (depends on emulated store) + $paymentBlock = $info->getBlockMock() ?: $this->getInfoBlock($info); + $paymentBlock->setArea(Mage_Core_Model_App_Area::AREA_FRONTEND) + ->setIsSecureMode(true); + $paymentBlock->getMethod()->setStore($storeId); + $paymentBlockHtml = $paymentBlock->toHtml(); + } catch (Exception $exception) { + $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + throw $exception; + } + + $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + + return $paymentBlockHtml; + } + /** * Retrieve available billing agreement methods * diff --git a/app/code/core/Mage/Paypal/Block/Adminhtml/Settlement/Details.php b/app/code/core/Mage/Paypal/Block/Adminhtml/Settlement/Details.php index 91d104f14026a..ffed6e0a4dfd7 100644 --- a/app/code/core/Mage/Paypal/Block/Adminhtml/Settlement/Details.php +++ b/app/code/core/Mage/Paypal/Block/Adminhtml/Settlement/Details.php @@ -54,7 +54,7 @@ public function __construct() protected function _prepareLayout() { parent::_prepareLayout(); - $this->setChild('form', $this->getLayout()->createBlock('Mage_Paypal_Block_Adminhtml_Settlement_Details_Form')); + $this->addChild('form', 'Mage_Paypal_Block_Adminhtml_Settlement_Details_Form'); return $this; } } diff --git a/app/code/core/Mage/Paypal/etc/system.xml b/app/code/core/Mage/Paypal/etc/system.xml index 0e874682da787..56b3fbb58ede7 100644 --- a/app/code/core/Mage/Paypal/etc/system.xml +++ b/app/code/core/Mage/Paypal/etc/system.xml @@ -48,6 +48,7 @@ <show_in_default>1</show_in_default> <show_in_website>1</show_in_website> <show_in_store>1</show_in_store> + <resource>Mage_Paypal::paypal</resource> <groups> <account translate="label"> <label>Merchant Account</label> diff --git a/app/code/core/Mage/Sales/Model/Order.php b/app/code/core/Mage/Sales/Model/Order.php index 85dadb684c974..cf67f43ba4ff8 100644 --- a/app/code/core/Mage/Sales/Model/Order.php +++ b/app/code/core/Mage/Sales/Model/Order.php @@ -1247,25 +1247,7 @@ public function sendNewOrderEmail() $copyTo = $this->_getEmails(self::XML_PATH_EMAIL_COPY_TO); $copyMethod = Mage::getStoreConfig(self::XML_PATH_EMAIL_COPY_METHOD, $storeId); - // Start store emulation process - $appEmulation = Mage::getSingleton('Mage_Core_Model_App_Emulation'); - $initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId); - - try { - // Retrieve specified view block from appropriate design package (depends on emulated store) - $paymentBlock = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlock($this->getPayment()) - ->setArea('frontend') - ->setIsSecureMode(true); - $paymentBlock->getMethod()->setStore($storeId); - $paymentBlockHtml = $paymentBlock->toHtml(); - } catch (Exception $exception) { - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); - throw $exception; - } - - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + $paymentBlockHtml = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlockHtml($this->getPayment(), $storeId); // Retrieve corresponding email template id and customer name if ($this->getCustomerIsGuest()) { diff --git a/app/code/core/Mage/Sales/Model/Order/Creditmemo.php b/app/code/core/Mage/Sales/Model/Order/Creditmemo.php index 5f3eba4b2c3e1..e640047f06e01 100644 --- a/app/code/core/Mage/Sales/Model/Order/Creditmemo.php +++ b/app/code/core/Mage/Sales/Model/Order/Creditmemo.php @@ -714,24 +714,7 @@ public function sendEmail($notifyCustomer = true, $comment = '') return $this; } - // Start store emulation process - $appEmulation = Mage::getSingleton('Mage_Core_Model_App_Emulation'); - $initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId); - - try { - // Retrieve specified view block from appropriate design package (depends on emulated store) - $paymentBlock = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlock($order->getPayment()) - ->setIsSecureMode(true); - $paymentBlock->getMethod()->setStore($storeId); - $paymentBlockHtml = $paymentBlock->toHtml(); - } catch (Exception $exception) { - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); - throw $exception; - } - - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + $paymentBlockHtml = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlockHtml($order->getPayment(), $storeId); // Retrieve corresponding email template id and customer name if ($order->getCustomerIsGuest()) { @@ -777,6 +760,7 @@ public function sendEmail($notifyCustomer = true, $comment = '') ) ); $mailer->send(); + $this->setEmailSent(true); $this->_getResource()->saveAttribute($this, 'email_sent'); diff --git a/app/code/core/Mage/Sales/Model/Order/Invoice.php b/app/code/core/Mage/Sales/Model/Order/Invoice.php index 3f5c94247448e..9a40e6b440cfe 100644 --- a/app/code/core/Mage/Sales/Model/Order/Invoice.php +++ b/app/code/core/Mage/Sales/Model/Order/Invoice.php @@ -759,26 +759,7 @@ public function sendEmail($notifyCustomer = true, $comment = '') return $this; } - // Start store emulation process - $appEmulation = Mage::getSingleton('Mage_Core_Model_App_Emulation'); - $initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId); - - try { - // Retrieve specified view block from appropriate design package (depends on emulated store) - $paymentBlock = $this->getPaymentInfoBlock() - ?: Mage::helper('Mage_Payment_Helper_Data')->getInfoBlock($order->getPayment()); - $paymentBlock->getMethod()->setStore($storeId); - $paymentBlockHtml = $paymentBlock->setArea(Mage_Core_Model_App_Area::AREA_FRONTEND) - ->setIsSecureMode(true) - ->toHtml(); - } catch (Exception $exception) { - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); - throw $exception; - } - - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + $paymentBlockHtml = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlockHtml($order->getPayment(), $storeId); // Retrieve corresponding email template id and customer name if ($order->getCustomerIsGuest()) { @@ -823,6 +804,7 @@ public function sendEmail($notifyCustomer = true, $comment = '') 'payment_html' => $paymentBlockHtml )); $mailer->send(); + $this->setEmailSent(true); $this->_getResource()->saveAttribute($this, 'email_sent'); diff --git a/app/code/core/Mage/Sales/Model/Order/Invoice/Total/Shipping.php b/app/code/core/Mage/Sales/Model/Order/Invoice/Total/Shipping.php index 8ccba86065c7b..7421e0f7ad096 100644 --- a/app/code/core/Mage/Sales/Model/Order/Invoice/Total/Shipping.php +++ b/app/code/core/Mage/Sales/Model/Order/Invoice/Total/Shipping.php @@ -43,10 +43,10 @@ public function collect(Mage_Sales_Model_Order_Invoice $invoice) $baseShippingInclTax = $invoice->getOrder()->getBaseShippingInclTax(); if ($orderShippingAmount) { /** - * Check shipping amount in previus invoices + * Check shipping amount in previous invoices */ - foreach ($invoice->getOrder()->getInvoiceCollection() as $previusInvoice) { - if ($previusInvoice->getShippingAmount() && !$previusInvoice->isCanceled()) { + foreach ($invoice->getOrder()->getInvoiceCollection() as $previousInvoice) { + if ((float)$previousInvoice->getShippingAmount() && !$previousInvoice->isCanceled()) { return $this; } } diff --git a/app/code/core/Mage/Sales/Model/Order/Shipment.php b/app/code/core/Mage/Sales/Model/Order/Shipment.php index e60b0b111a5b0..85500a5c66cfc 100644 --- a/app/code/core/Mage/Sales/Model/Order/Shipment.php +++ b/app/code/core/Mage/Sales/Model/Order/Shipment.php @@ -386,24 +386,7 @@ public function sendEmail($notifyCustomer = true, $comment = '') return $this; } - // Start store emulation process - $appEmulation = Mage::getSingleton('Mage_Core_Model_App_Emulation'); - $initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId); - - try { - // Retrieve specified view block from appropriate design package (depends on emulated store) - $paymentBlock = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlock($order->getPayment()) - ->setIsSecureMode(true); - $paymentBlock->getMethod()->setStore($storeId); - $paymentBlockHtml = $paymentBlock->toHtml(); - } catch (Exception $exception) { - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); - throw $exception; - } - - // Stop store emulation process - $appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo); + $paymentBlockHtml = Mage::helper('Mage_Payment_Helper_Data')->getInfoBlockHtml($order->getPayment(), $storeId); // Retrieve corresponding email template id and customer name if ($order->getCustomerIsGuest()) { @@ -450,6 +433,9 @@ public function sendEmail($notifyCustomer = true, $comment = '') ); $mailer->send(); + $this->setEmailSent(true); + $this->_getResource()->saveAttribute($this, 'email_sent'); + return $this; } diff --git a/app/code/core/Mage/SalesRule/data/salesrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php b/app/code/core/Mage/SalesRule/data/salesrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php index 103d0129e987e..710278c4c36c7 100644 --- a/app/code/core/Mage/SalesRule/data/salesrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php +++ b/app/code/core/Mage/SalesRule/data/salesrule_setup/data-upgrade-1.6.0.3-1.6.0.4.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Tag/Block/Adminhtml/Pending.php b/app/code/core/Mage/Tag/Block/Adminhtml/Pending.php index e61b918492058..71a7f94538247 100644 --- a/app/code/core/Mage/Tag/Block/Adminhtml/Pending.php +++ b/app/code/core/Mage/Tag/Block/Adminhtml/Pending.php @@ -46,7 +46,7 @@ public function __construct() protected function _prepareLayout() { - $this->setChild('tagsGrid', $this->getLayout()->createBlock('Mage_Tag_Block_Adminhtml_Grid_Pending')); + $this->addChild('tagsGrid', 'Mage_Tag_Block_Adminhtml_Grid_Pending'); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Tag/view/frontend/cloud.phtml b/app/code/core/Mage/Tag/view/frontend/cloud.phtml index c178279fef98e..c97f551153a97 100644 --- a/app/code/core/Mage/Tag/view/frontend/cloud.phtml +++ b/app/code/core/Mage/Tag/view/frontend/cloud.phtml @@ -30,7 +30,7 @@ <?php if( sizeof($this->getTags()) > 0 ): ?> <ul class="tags-list"> <?php foreach ($this->getTags() as $_tag): ?> - <li><a href="<?php echo $_tag->getTaggedProductsUrl() ?>" style="font-size:<?php echo $_tag->getRatio()*70+75 ?>%;"><?php echo $this->escapeHtml($_tag->getName()) ?></a></li> + <li><a href="<?php echo $_tag->getTaggedProductsUrl() ?>" style="font-size:<?php echo $_tag->getRatio()*70+75 ?>%;"<?php echo $this->getUiId('item', $_tag->getName()) ?>><?php echo $this->escapeHtml($_tag->getName()) ?></a></li> <?php endforeach; ?> </ul> <?php else: ?> diff --git a/app/code/core/Mage/Tag/view/frontend/list.phtml b/app/code/core/Mage/Tag/view/frontend/list.phtml index 735ed04981655..67bbcc48a75a0 100644 --- a/app/code/core/Mage/Tag/view/frontend/list.phtml +++ b/app/code/core/Mage/Tag/view/frontend/list.phtml @@ -37,12 +37,12 @@ </script> <?php endif; ?> <form id="addTagForm" action="<?php echo $this->getFormAction(); ?>" method="get"> - <div class="form-add"> + <div class="form-add" <?php echo $this->getUiId() ?>> <label for="productTagName"><?php echo $this->__('Add Your Tags:') ?></label> <div class="input-box"> - <input type="text" class="input-text required-entry" name="productTagName" id="productTagName" /> + <input type="text" class="input-text required-entry" name="productTagName" id="productTagName" <?php echo $this->getUiId('add','input') ?>/> </div> - <button type="button" title="<?php echo $this->__('Add Tags') ?>" class="button" onclick="submitTagForm()"> + <button type="button" title="<?php echo $this->__('Add Tags') ?>" class="button" onclick="submitTagForm()"<?php echo $this->getUiId('add','button') ?>> <span> <span><?php echo $this->__('Add Tags') ?></span> </span> diff --git a/app/code/core/Mage/Tag/view/frontend/popular.phtml b/app/code/core/Mage/Tag/view/frontend/popular.phtml index 746d1b9360fc3..4ca311a6dfc7b 100644 --- a/app/code/core/Mage/Tag/view/frontend/popular.phtml +++ b/app/code/core/Mage/Tag/view/frontend/popular.phtml @@ -31,11 +31,11 @@ <div class="block-content"> <ul class="tags-list"> <?php foreach ($this->getTags() as $_tag): ?> - <li><a href="<?php echo $_tag->getTaggedProductsUrl() ?>" style="font-size:<?php echo $_tag->getRatio()*70+75 ?>%;"><?php echo $this->escapeHtml($_tag->getName()) ?></a></li> + <li><a href="<?php echo $_tag->getTaggedProductsUrl() ?>" style="font-size:<?php echo $_tag->getRatio()*70+75 ?>%;" <?php echo $this->getUiId('item', $_tag->getName()) ?>><?php echo $this->escapeHtml($_tag->getName()) ?></a></li> <?php endforeach; ?> </ul> <div class="actions"> - <a href="<?php echo $this->getUrl('tag/list') ?>"><?php echo $this->__('View All Tags') ?></a> + <a href="<?php echo $this->getUrl('tag/list') ?>"<?php echo $this->getUiId('view','all','link') ?>><?php echo $this->__('View All Tags') ?></a> </div> </div> </div> diff --git a/app/code/core/Mage/Tax/Model/Config.php b/app/code/core/Mage/Tax/Model/Config.php index 4f9bc3f0a9d30..07def26de44e8 100644 --- a/app/code/core/Mage/Tax/Model/Config.php +++ b/app/code/core/Mage/Tax/Model/Config.php @@ -85,11 +85,9 @@ class Mage_Tax_Model_Config const DISPLAY_TYPE_BOTH = 3; /** - * Flag which notify what we need use prices exclude tax for calculations - * - * @var bool + * @var bool|null */ - protected $_needUsePriceExcludeTax = false; + protected $_priceIncludesTax = null; /** * Flag which notify what we need use shipping prices exclude tax for calculations @@ -104,19 +102,35 @@ class Mage_Tax_Model_Config protected $_shippingPriceIncludeTax = null; /** - * Check if product prices inputed include tax + * Check if prices of product in catalog include tax * - * @param mix $store + * @param mixed $store * @return bool */ - public function priceIncludesTax($store=null) + public function priceIncludesTax($store = null) { - if ($this->_needUsePriceExcludeTax) { - return false; + if (null !== $this->_priceIncludesTax) { + return $this->_priceIncludesTax; } return (bool)Mage::getStoreConfig(self::CONFIG_XML_PATH_PRICE_INCLUDES_TAX, $store); } + /** + * Override "price includes tax" variable regardless of system configuration of any store + * + * @param bool|null $value + * @return Mage_Tax_Model_Config + */ + public function setPriceIncludesTax($value) + { + if (null === $value) { + $this->_priceIncludesTax = null; + } else { + $this->_priceIncludesTax = (bool)$value; + } + return $this; + } + /** * Check what taxes should be applied after discount * @@ -178,28 +192,6 @@ public function getCalculationSequence($store=null) return $seq; } - /** - * Specify flag what we need use price exclude tax - * - * @param bool $flag - * @return Mage_Tax_Model_Config - */ - public function setNeedUsePriceExcludeTax($flag) - { - $this->_needUsePriceExcludeTax = $flag; - return $this; - } - - /** - * Get flag what we need use price exclude tax - * - * @return bool $flag - */ - public function getNeedUsePriceExcludeTax() - { - return $this->_needUsePriceExcludeTax; - } - /** * Specify flag what we need use shipping price exclude tax * diff --git a/app/code/core/Mage/Tax/Model/Sales/Total/Quote/Tax.php b/app/code/core/Mage/Tax/Model/Sales/Total/Quote/Tax.php index 0874086ef893d..6df1bac6cce8a 100644 --- a/app/code/core/Mage/Tax/Model/Sales/Total/Quote/Tax.php +++ b/app/code/core/Mage/Tax/Model/Sales/Total/Quote/Tax.php @@ -199,22 +199,6 @@ protected function _processHiddenTaxes() } } - /** - * Check if price include tax should be used for calculations. - * We are using price include tax just in case when catalog prices are including tax - * and customer tax request is same as store tax request - * - * @param $store - * @return bool - */ - protected function _usePriceIncludeTax($store) - { - if ($this->_config->priceIncludesTax($store) || $this->_config->getNeedUsePriceExcludeTax()) { - return $this->_areTaxRequestsSimilar; - } - return false; - } - /** * Tax caclulation for shipping price * diff --git a/app/code/core/Mage/Tax/etc/config.xml b/app/code/core/Mage/Tax/etc/config.xml index 263a4ca511249..0808735689db4 100644 --- a/app/code/core/Mage/Tax/etc/config.xml +++ b/app/code/core/Mage/Tax/etc/config.xml @@ -150,6 +150,15 @@ </tax> </totals> </pdf> + <catalog> + <product> + <attributes> + <unassignable> + <tax_class_id/> + </unassignable> + </attributes> + </product> + </catalog> </global> <adminhtml> <translate> diff --git a/app/code/core/Mage/Usa/etc/wsdl/FedEx/TrackService_v5.wsdl b/app/code/core/Mage/Usa/etc/wsdl/FedEx/TrackService_v5.wsdl index 1f275b310475a..f3ceaf5056a20 100644 --- a/app/code/core/Mage/Usa/etc/wsdl/FedEx/TrackService_v5.wsdl +++ b/app/code/core/Mage/Usa/etc/wsdl/FedEx/TrackService_v5.wsdl @@ -1,1510 +1,1510 @@ -<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns="http://fedex.com/ws/track/v5" xmlns:s1="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://fedex.com/ws/track/v5" name="TrackServiceDefinitions"> - <types> - <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://fedex.com/ws/track/v5"> - <xs:element name="SignatureProofOfDeliveryFaxReply" type="ns:SignatureProofOfDeliveryFaxReply"/> - <xs:element name="SignatureProofOfDeliveryFaxRequest" type="ns:SignatureProofOfDeliveryFaxRequest"/> - <xs:element name="SignatureProofOfDeliveryLetterReply" type="ns:SignatureProofOfDeliveryLetterReply"/> - <xs:element name="SignatureProofOfDeliveryLetterRequest" type="ns:SignatureProofOfDeliveryLetterRequest"/> - <xs:element name="TrackNotificationReply" type="ns:TrackNotificationReply"/> - <xs:element name="TrackNotificationRequest" type="ns:TrackNotificationRequest"/> - <xs:element name="TrackReply" type="ns:TrackReply"/> - <xs:element name="TrackRequest" type="ns:TrackRequest"/> - <xs:complexType name="Address"> - <xs:annotation> - <xs:documentation>Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US).</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="StreetLines" type="xs:string" minOccurs="0" maxOccurs="2"> - <xs:annotation> - <xs:documentation>Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="City" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Name of city, town, etc.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StateOrProvinceCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PostalCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="UrbanizationCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Relevant only to addresses in Puerto Rico.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="CountryCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>The two-letter code used to identify a country.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Residential" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>Indicates whether this address residential (as opposed to commercial).</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="ArrivalLocationType"> - <xs:annotation> - <xs:documentation>Identifies where a tracking event occurs.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="AIRPORT"/> - <xs:enumeration value="CUSTOMER"/> - <xs:enumeration value="CUSTOMS_BROKER"/> - <xs:enumeration value="DELIVERY_LOCATION"/> - <xs:enumeration value="DESTINATION_AIRPORT"/> - <xs:enumeration value="DESTINATION_FEDEX_FACILITY"/> - <xs:enumeration value="DROP_BOX"/> - <xs:enumeration value="ENROUTE"/> - <xs:enumeration value="FEDEX_FACILITY"/> - <xs:enumeration value="FEDEX_OFFICE_LOCATION"/> - <xs:enumeration value="INTERLINE_CARRIER"/> - <xs:enumeration value="NON_FEDEX_FACILITY"/> - <xs:enumeration value="ORIGIN_AIRPORT"/> - <xs:enumeration value="ORIGIN_FEDEX_FACILITY"/> - <xs:enumeration value="PICKUP_LOCATION"/> - <xs:enumeration value="PLANE"/> - <xs:enumeration value="PORT_OF_ENTRY"/> - <xs:enumeration value="SORT_FACILITY"/> - <xs:enumeration value="TURNPOINT"/> - <xs:enumeration value="VEHICLE"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="CarrierCodeType"> - <xs:annotation> - <xs:documentation>Identification of a FedEx operating company (transportation).</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="FDXC"/> - <xs:enumeration value="FDXE"/> - <xs:enumeration value="FDXG"/> - <xs:enumeration value="FXCC"/> - <xs:enumeration value="FXFR"/> - <xs:enumeration value="FXSP"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="ClientDetail"> - <xs:annotation> - <xs:documentation>Descriptive data for the client submitting a transaction.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="AccountNumber" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>The FedEx account number associated with this transaction.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MeterNumber" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>This number is assigned by FedEx and identifies the unique device from which the request is originating</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="IntegratorId" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Only used in transactions which require identification of the Fed Ex Office integrator.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Localization" type="ns:Localization" minOccurs="0"> - <xs:annotation> - <xs:documentation>The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.)</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="Contact"> - <xs:annotation> - <xs:documentation>The descriptive data for a point-of-contact person.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="PersonName" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the contact person's name.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Title" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the contact person's title.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="CompanyName" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the company this contact is associated with.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PhoneNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the phone number associated with this contact.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PhoneExtension" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the phone extension associated with this contact.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PagerNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the pager number associated with this contact.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="FaxNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the fax number associated with this contact.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EMailAddress" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the email address associated with this contact.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="ContactAndAddress"> - <xs:sequence> - <xs:element name="Contact" type="ns:Contact" minOccurs="1"/> - <xs:element name="Address" type="ns:Address" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - <xs:complexType name="Dimensions"> - <xs:annotation> - <xs:documentation>The dimensions of this package and the unit type used for the measurements.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Length" type="xs:nonNegativeInteger" minOccurs="0"/> - <xs:element name="Width" type="xs:nonNegativeInteger" minOccurs="0"/> - <xs:element name="Height" type="xs:nonNegativeInteger" minOccurs="0"/> - <xs:element name="Units" type="ns:LinearUnits" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - <xs:complexType name="Distance"> - <xs:annotation> - <xs:documentation>Driving or other transportation distances, distinct from dimension measurements.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Value" type="xs:decimal" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the distance quantity.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Units" type="ns:DistanceUnits" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the unit of measure for the distance value.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="DistanceUnits"> - <xs:annotation> - <xs:documentation>Identifies the collection of units of measure that can be associated with a distance value.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="KM"/> - <xs:enumeration value="MI"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="EMailNotificationDetail"> - <xs:annotation> - <xs:documentation>Information describing email notifications that will be sent in relation to events that occur during package movement</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="PersonalMessage" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A message that will be included in the email notifications</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Recipients" type="ns:EMailNotificationRecipient" minOccurs="1" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information describing the destination of the email, format of the email and events to be notified on</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="EMailNotificationEventType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="ON_DELIVERY"/> - <xs:enumeration value="ON_EXCEPTION"/> - <xs:enumeration value="ON_SHIPMENT"/> - <xs:enumeration value="ON_TENDER"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="EMailNotificationFormatType"> - <xs:annotation> - <xs:documentation>The format of the email</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="HTML"/> - <xs:enumeration value="TEXT"/> - <xs:enumeration value="WIRELESS"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="EMailNotificationRecipient"> - <xs:sequence> - <xs:element name="EMailNotificationRecipientType" type="ns:EMailNotificationRecipientType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the relationship this email recipient has to the shipment.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EMailAddress" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>The email address to send the notification to</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="NotificationEventsRequested" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>The types of email notifications being requested for this recipient.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Format" type="ns:EMailNotificationFormatType" minOccurs="1"> - <xs:annotation> - <xs:documentation>The format of the email notification.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Localization" type="ns:Localization" minOccurs="0"> - <xs:annotation> - <xs:documentation>The language/locale to be used in this email notification.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="EMailNotificationRecipientType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="BROKER"/> - <xs:enumeration value="OTHER"/> - <xs:enumeration value="RECIPIENT"/> - <xs:enumeration value="SHIPPER"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="LinearUnits"> - <xs:annotation> - <xs:documentation>CM = centimeters, IN = inches</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="CM"/> - <xs:enumeration value="IN"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="Localization"> - <xs:annotation> - <xs:documentation>Identifies the representation of human-readable text.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="LanguageCode" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Two-letter code for language (e.g. EN, FR, etc.)</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="LocaleCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Two-letter code for the region (e.g. us, ca, etc..).</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="Notification"> - <xs:annotation> - <xs:documentation>The descriptive data regarding the result of the submitted transaction.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Severity" type="ns:NotificationSeverityType" minOccurs="1"> - <xs:annotation> - <xs:documentation>The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Source" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Indicates the source of this notification. Combined with the Code it uniquely identifies this notification</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Code" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A code that represents this notification. Combined with the Source it uniquely identifies this notification.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Message" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Human-readable text that explains this notification.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="LocalizedMessage" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MessageParameters" type="ns:NotificationParameter" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="NotificationParameter"> - <xs:sequence> - <xs:element name="Id" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Value" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..).</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="NotificationSeverityType"> - <xs:annotation> - <xs:documentation>Identifies the set of severity values for a Notification.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="ERROR"/> - <xs:enumeration value="FAILURE"/> - <xs:enumeration value="NOTE"/> - <xs:enumeration value="SUCCESS"/> - <xs:enumeration value="WARNING"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="OfficeOrderDeliveryMethodType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="COURIER"/> - <xs:enumeration value="OTHER"/> - <xs:enumeration value="PICKUP"/> - <xs:enumeration value="SHIPMENT"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="OperatingCompanyType"> - <xs:annotation> - <xs:documentation>Identification for a FedEx operating company (transportation and non-transportation).</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="FEDEX_OFFICE"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="PackagingType"> - <xs:annotation> - <xs:documentation>The enumerated packaging type used for this package.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="FEDEX_10KG_BOX"/> - <xs:enumeration value="FEDEX_25KG_BOX"/> - <xs:enumeration value="FEDEX_BOX"/> - <xs:enumeration value="FEDEX_ENVELOPE"/> - <xs:enumeration value="FEDEX_PAK"/> - <xs:enumeration value="FEDEX_TUBE"/> - <xs:enumeration value="YOUR_PACKAGING"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="QualifiedTrackingNumber"> - <xs:annotation> - <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>FedEx assigned identifier for a package/shipment.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDate" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>The date the package was shipped.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="AccountNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>If the account number used to ship the package is provided in the request the shipper and recipient information is included on the letter or fax.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Carrier" type="ns:CarrierCodeType" minOccurs="0"> - <xs:annotation> - <xs:documentation>FedEx operating company that delivered the package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Destination" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>Only country is used for elimination of duplicate tracking numbers.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="RedirectToHoldEligibilityType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="ELIGIBLE"/> - <xs:enumeration value="INELIGIBLE"/> - <xs:enumeration value="POSSIBLY_ELIGIBLE"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="ServiceType"> - <xs:annotation> - <xs:documentation>The service type of the package/shipment.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="EUROPE_FIRST_INTERNATIONAL_PRIORITY"/> - <xs:enumeration value="FEDEX_1_DAY_FREIGHT"/> - <xs:enumeration value="FEDEX_2_DAY"/> - <xs:enumeration value="FEDEX_2_DAY_AM"/> - <xs:enumeration value="FEDEX_2_DAY_FREIGHT"/> - <xs:enumeration value="FEDEX_3_DAY_FREIGHT"/> - <xs:enumeration value="FEDEX_EXPRESS_SAVER"/> - <xs:enumeration value="FEDEX_FIRST_FREIGHT"/> - <xs:enumeration value="FEDEX_FREIGHT_ECONOMY"/> - <xs:enumeration value="FEDEX_FREIGHT_PRIORITY"/> - <xs:enumeration value="FEDEX_GROUND"/> - <xs:enumeration value="FIRST_OVERNIGHT"/> - <xs:enumeration value="GROUND_HOME_DELIVERY"/> - <xs:enumeration value="INTERNATIONAL_DISTRIBUTION_FREIGHT"/> - <xs:enumeration value="INTERNATIONAL_ECONOMY"/> - <xs:enumeration value="INTERNATIONAL_ECONOMY_DISTRIBUTION"/> - <xs:enumeration value="INTERNATIONAL_ECONOMY_FREIGHT"/> - <xs:enumeration value="INTERNATIONAL_FIRST"/> - <xs:enumeration value="INTERNATIONAL_PRIORITY"/> - <xs:enumeration value="INTERNATIONAL_PRIORITY_DISTRIBUTION"/> - <xs:enumeration value="INTERNATIONAL_PRIORITY_FREIGHT"/> - <xs:enumeration value="PRIORITY_OVERNIGHT"/> - <xs:enumeration value="SMART_POST"/> - <xs:enumeration value="STANDARD_OVERNIGHT"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="SignatureProofOfDeliveryFaxReply"> - <xs:annotation> - <xs:documentation>FedEx Signature Proof Of Delivery Fax reply.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> - <xs:annotation> - <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>Contains the version of the reply being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="FaxConfirmationNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Confirmation of fax transmission.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="SignatureProofOfDeliveryFaxRequest"> - <xs:annotation> - <xs:documentation>FedEx Signature Proof Of Delivery Fax request.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>The version of the request being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="QualifiedTrackingNumber" type="ns:QualifiedTrackingNumber" minOccurs="0"> - <xs:annotation> - <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="AdditionalComments" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Additional customer-supplied text to be added to the body of the letter.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="FaxSender" type="ns:ContactAndAddress" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contact and address information about the person requesting the fax to be sent.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="FaxRecipient" type="ns:ContactAndAddress" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contact and address information, including the fax number, about the person to receive the fax.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="SignatureProofOfDeliveryImageType"> - <xs:annotation> - <xs:documentation>Identifies the set of SPOD image types.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="PDF"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="SignatureProofOfDeliveryLetterReply"> - <xs:annotation> - <xs:documentation>FedEx Signature Proof Of Delivery Letter reply.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> - <xs:annotation> - <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>Image of letter encoded in Base64 format.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Letter" type="xs:base64Binary" minOccurs="0"> - <xs:annotation> - <xs:documentation>Image of letter encoded in Base64 format.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="SignatureProofOfDeliveryLetterRequest"> - <xs:annotation> - <xs:documentation>FedEx Signature Proof Of Delivery Letter request.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>The version of the request being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="QualifiedTrackingNumber" type="ns:QualifiedTrackingNumber" minOccurs="0"> - <xs:annotation> - <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="AdditionalComments" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Additional customer-supplied text to be added to the body of the letter.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="LetterFormat" type="ns:SignatureProofOfDeliveryImageType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the set of SPOD image types.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Consignee" type="ns:ContactAndAddress" minOccurs="0"> - <xs:annotation> - <xs:documentation>If provided this information will be print on the letter.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="StringBarcode"> - <xs:annotation> - <xs:documentation>Each instance of this data type represents a barcode whose content must be represented as ASCII text (i.e. not binary data).</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Type" type="ns:StringBarcodeType" minOccurs="0"> - <xs:annotation> - <xs:documentation>The kind of barcode data in this instance.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Value" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>The data content of this instance.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="StringBarcodeType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="ADDRESS"/> - <xs:enumeration value="ASTRA"/> - <xs:enumeration value="FEDEX_1D"/> - <xs:enumeration value="GROUND"/> - <xs:enumeration value="POSTAL"/> - <xs:enumeration value="USPS"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="TrackDeliveryLocationType"> - <xs:annotation> - <xs:documentation>The delivery location at the delivered to address.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="FEDEX_LOCATION"/> - <xs:enumeration value="GUARD_OR_SECURITY_STATION"/> - <xs:enumeration value="IN_BOND_OR_CAGE"/> - <xs:enumeration value="MAILROOM"/> - <xs:enumeration value="OTHER"/> - <xs:enumeration value="PHARMACY"/> - <xs:enumeration value="RECEPTIONIST_OR_FRONT_DESK"/> - <xs:enumeration value="RESIDENCE"/> - <xs:enumeration value="SHIPPING_RECEIVING"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="TrackDetail"> - <xs:annotation> - <xs:documentation>Detailed tracking information about a particular package.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Notification" type="ns:Notification" minOccurs="0"> - <xs:annotation> - <xs:documentation>To report soft error on an individual track detail.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>The FedEx package identifier.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Barcode" type="ns:StringBarcode" minOccurs="0"/> - <xs:element name="TrackingNumberUniqueIdentifier" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A code that identifies this type of status. This is the most recent status.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusDescription" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A human-readable description of this status.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Reconciliation" type="ns:TrackReconciliation" minOccurs="0"> - <xs:annotation> - <xs:documentation>Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ServiceCommitMessage" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Used to convey information such as. 1. FedEx has received information about a package but has not yet taken possession of it. 2. FedEx has handed the package off to a third party for final delivery. 3. The package delivery has been cancelled</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies a FedEx operating company (transportation).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="OperatingCompany" type="ns:OperatingCompanyType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies operating transportation company that is the specific to the carrier code.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ProductionLocationContactAndAddress" type="ns:ContactAndAddress" minOccurs="0"> - <xs:annotation> - <xs:documentation>Specifies the FXO production centre contact and address.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="OtherIdentifiers" type="ns:TrackPackageIdentifier" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Other related identifiers for this package such as reference numbers.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ServiceInfo" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Retained for legacy compatibility only. User/screen friendly description of the Service type (e.g. Priority Overnight).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ServiceType" type="ns:ServiceType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageWeight" type="ns:Weight" minOccurs="0"> - <xs:annotation> - <xs:documentation>The weight of this package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageDimensions" type="ns:Dimensions" minOccurs="0"> - <xs:annotation> - <xs:documentation>Physical dimensions of the package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageDimensionalWeight" type="ns:Weight" minOccurs="0"> - <xs:annotation> - <xs:documentation>The dimensional weight of the package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipmentWeight" type="ns:Weight" minOccurs="0"> - <xs:annotation> - <xs:documentation>The weight of the entire shipment.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Packaging" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Retained for legacy compatibility only.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackagingType" type="ns:PackagingType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Strict representation of the Packaging type (e.g. FEDEX_BOX, YOUR_PACKAGING).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageSequenceNumber" type="xs:nonNegativeInteger" minOccurs="0"> - <xs:annotation> - <xs:documentation>The sequence number of this package in a shipment. This would be 2 if it was package number 2 of 4.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageCount" type="xs:nonNegativeInteger" minOccurs="0"> - <xs:annotation> - <xs:documentation>The number of packages in this shipment.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackReturnLabelType" type="ns:TrackReturnLabelType" minOccurs="0"/> - <xs:element name="TrackReturnDescription" type="xs:string" minOccurs="0"/> - <xs:element name="ShipperAddress" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>The address information for the shipper.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="OriginLocationAddress" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>The address of the FedEx pickup location/facility.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EstimatedPickupTimestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>Estimated package pickup time for shipments that haven't been picked up.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipTimestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>Time package was shipped/tendered over to FedEx. Time portion will be populated if available, otherwise will be set to midnight.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TotalTransitDistance" type="ns:Distance" minOccurs="0"> - <xs:annotation> - <xs:documentation>The distance from the origin to the destination. Returned for Custom Critical shipments.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DistanceToDestination" type="ns:Distance" minOccurs="0"> - <xs:annotation> - <xs:documentation>Total distance package still has to travel. Returned for Custom Critical shipments.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DestinationAddress" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>The address this package is to be (or has been) delivered.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DestinationLocationAddress" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>The address of the FedEx delivery location/facility.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EstimatedDeliveryTimestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>Projected package delivery time based on ship time stamp, service and destination. Not populated if delivery has already occurred.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ActualDeliveryTimestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>The time the package was actually delivered.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ActualDeliveryAddress" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>Actual address where package was delivered. Differs from destinationAddress, which indicates where the package was to be delivered; This field tells where delivery actually occurred (next door, at station, etc.)</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="OfficeOrderDeliveryMethod" type="ns:OfficeOrderDeliveryMethodType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the method of office order delivery.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DeliveryLocationType" type="ns:TrackDeliveryLocationType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Strict text indicating the delivery location at the delivered to address.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DeliveryLocationDescription" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>User/screen friendly representation of the DeliveryLocationType (delivery location at the delivered to address). Can be returned in localized text.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DeliverySignatureName" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>This is either the name of the person that signed for the package or "Signature not requested" or "Signature on file".</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="SignatureProofOfDeliveryAvailable" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>True if signed for by signature image is available.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="NotificationEventsAvailable" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>The types of email notifications that are available for the package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="SplitShipmentParts" type="ns:TrackSplitShipmentPart" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Returned for cargo shipments only when they are currently split across vehicles.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="RedirectToHoldEligibility" type="ns:RedirectToHoldEligibilityType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Indicates redirection eligibility as determined by tracking service, subject to refinement/override by redirect-to-hold service.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Events" type="ns:TrackEvent" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Event information for a tracking number.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackEvent"> - <xs:annotation> - <xs:documentation>FedEx scanning information about a package.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Timestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>The time this event occurred.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EventType" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Carrier's scan code. Pairs with EventDescription.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="EventDescription" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Literal description that pairs with the EventType.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusExceptionCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Further defines the Scan Type code's specific type (e.g., DEX08 business closed). Pairs with StatusExceptionDescription.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusExceptionDescription" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Literal description that pairs with the StatusExceptionCode.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Address" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>Address information of the station that is responsible for the scan.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ArrivalLocation" type="ns:ArrivalLocationType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Indicates where the arrival actually occurred.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="TrackIdentifierType"> - <xs:annotation> - <xs:documentation>The type of track to be performed.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="BILL_OF_LADING"/> - <xs:enumeration value="COD_RETURN_TRACKING_NUMBER"/> - <xs:enumeration value="CUSTOMER_AUTHORIZATION_NUMBER"/> - <xs:enumeration value="CUSTOMER_REFERENCE"/> - <xs:enumeration value="DEPARTMENT"/> - <xs:enumeration value="FREE_FORM_REFERENCE"/> - <xs:enumeration value="GROUND_INTERNATIONAL"/> - <xs:enumeration value="GROUND_SHIPMENT_ID"/> - <xs:enumeration value="GROUP_MPS"/> - <xs:enumeration value="INVOICE"/> - <xs:enumeration value="JOB_GLOBAL_TRACKING_NUMBER"/> - <xs:enumeration value="ORDER_GLOBAL_TRACKING_NUMBER"/> - <xs:enumeration value="ORDER_TO_PAY_NUMBER"/> - <xs:enumeration value="PARTNER_CARRIER_NUMBER"/> - <xs:enumeration value="PART_NUMBER"/> - <xs:enumeration value="PURCHASE_ORDER"/> - <xs:enumeration value="RETURNED_TO_SHIPPER_TRACKING_NUMBER"/> - <xs:enumeration value="RETURN_MATERIALS_AUTHORIZATION"/> - <xs:enumeration value="SHIPPER_REFERENCE"/> - <xs:enumeration value="STANDARD_MPS"/> - <xs:enumeration value="TRACKING_NUMBER_OR_DOORTAG"/> - <xs:enumeration value="TRANSPORTATION_CONTROL_NUMBER"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="TrackNotificationPackage"> - <xs:sequence> - <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>FedEx assigned identifier for a package/shipment.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackingNumberUniqueIdentifiers" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identification of a FedEx operating company (transportation).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDate" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>The date the package was shipped (tendered to FedEx).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Destination" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>The destination address of this package. Only city, state/province, and country are returned.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="RecipientDetails" type="ns:TrackNotificationRecipientDetail" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Options available for a tracking notification recipient.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackNotificationRecipientDetail"> - <xs:annotation> - <xs:documentation>Options available for a tracking notification recipient.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="NotificationEventsAvailable" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>The types of email notifications available for this recipient.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackNotificationReply"> - <xs:annotation> - <xs:documentation>FedEx Track Notification reply.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> - <xs:annotation> - <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>Contains the version of the reply being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DuplicateWaybill" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>True if duplicate packages (more than one package with the same tracking number) have been found, the packages array contains information about each duplicate. Use this information to determine which of the tracking numbers is the one you need and resend your request using the tracking number and TrackingNumberUniqueIdentifier for that package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MoreDataAvailable" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>True if additional packages remain to be retrieved.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PagingToken" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Packages" type="ns:TrackNotificationPackage" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information about the notifications that are available for this tracking number. If there are duplicates the ship date and destination address information is returned for determining which TrackingNumberUniqueIdentifier to use on a subsequent request.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackNotificationRequest"> - <xs:annotation> - <xs:documentation>FedEx Track Notification request.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackingNumber" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>The tracking number to which the notifications will be triggered from.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MultiPiece" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>Indicates whether to return tracking information for all associated packages.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PagingToken" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>When the MoreDataAvailable field is true in a TrackNotificationReply the PagingToken must be sent in the subsequent TrackNotificationRequest to retrieve the next page of data.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackingNumberUniqueId" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Use this field when your original request informs you that there are duplicates of this tracking number. If you get duplicates you will also receive some information about each of the duplicate tracking numbers to enable you to chose one and resend that number along with the TrackingNumberUniqueId to get notifications for that tracking number.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDateRangeBegin" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDateRangeEnd" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="SenderEMailAddress" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Included in the email notification identifying the requester of this notification.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="SenderContactName" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Included in the email notification identifying the requester of this notification.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="NotificationDetail" type="ns:EMailNotificationDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Who to send the email notifications to and for which events. The notificationRecipientType and NotifyOnShipment fields are not used in this request.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackPackageIdentifier"> - <xs:annotation> - <xs:documentation>The type and value of the package identifier that is to be used to retrieve the tracking information for a package.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Value" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>The value to be used to retrieve tracking information for a package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Type" type="ns:TrackIdentifierType" minOccurs="1"> - <xs:annotation> - <xs:documentation>The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) .</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackReconciliation"> - <xs:annotation> - <xs:documentation>Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Status" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>An identifier for this type of status.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Description" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>A human-readable description of this status.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackReply"> - <xs:annotation> - <xs:documentation>The descriptive data returned from a FedEx package tracking request.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> - <xs:annotation> - <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>Contains the version of the reply being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="DuplicateWaybill" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MoreData" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>True if additional packages remain to be retrieved.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PagingToken" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackDetails" type="ns:TrackDetail" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>Contains detailed tracking information for the requested packages(s).</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TrackRequest"> - <xs:annotation> - <xs:documentation>The descriptive data sent by a client to track a FedEx package.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> - <xs:annotation> - <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> - <xs:annotation> - <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Version" type="ns:VersionId" minOccurs="1"> - <xs:annotation> - <xs:documentation>The version of the request being used.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> - <xs:annotation> - <xs:documentation>The FedEx operating company (transportation) used for this package's delivery.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="OperatingCompany" type="ns:OperatingCompanyType" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies operating transportation company that is the specific to the carrier code.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PackageIdentifier" type="ns:TrackPackageIdentifier" minOccurs="1"> - <xs:annotation> - <xs:documentation>The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="TrackingNumberUniqueIdentifier" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Used to distinguish duplicate FedEx tracking numbers.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDateRangeBegin" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipDateRangeEnd" type="xs:date" minOccurs="0"> - <xs:annotation> - <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ShipmentAccountNumber" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>For tracking by references information either the account number or destination postal code and country must be provided.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Destination" type="ns:Address" minOccurs="0"> - <xs:annotation> - <xs:documentation>For tracking by references information either the account number or destination postal code and country must be provided.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="IncludeDetailedScans" type="xs:boolean" minOccurs="0"> - <xs:annotation> - <xs:documentation>If false the reply will contain summary/profile data including current status. If true the reply contains profile + detailed scan activity for each package.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="PagingToken" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="TrackReturnLabelType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="EMAIL"/> - <xs:enumeration value="PRINT"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="TrackSplitShipmentPart"> - <xs:annotation> - <xs:documentation>Used when a cargo shipment is split across vehicles. This is used to give the status of each part of the shipment.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="PieceCount" type="xs:positiveInteger" minOccurs="0"> - <xs:annotation> - <xs:documentation>The number of pieces in this part.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Timestamp" type="xs:dateTime" minOccurs="0"> - <xs:annotation> - <xs:documentation>The date and time this status began.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusCode" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A code that identifies this type of status.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="StatusDescription" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>A human-readable description of this status.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="TransactionDetail"> - <xs:annotation> - <xs:documentation>Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="CustomerTransactionId" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>Free form text to be echoed back in the reply. Used to match requests and replies.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Localization" type="ns:Localization" minOccurs="0"> - <xs:annotation> - <xs:documentation>Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection).</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="Weight"> - <xs:annotation> - <xs:documentation>The descriptive data for the heaviness of an object.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Units" type="ns:WeightUnits" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the unit of measure associated with a weight value.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Value" type="xs:decimal" minOccurs="0"> - <xs:annotation> - <xs:documentation>Identifies the weight value of a package/shipment.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:simpleType name="WeightUnits"> - <xs:annotation> - <xs:documentation>Identifies the collection of units of measure that can be associated with a weight value.</xs:documentation> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:enumeration value="KG"/> - <xs:enumeration value="LB"/> - </xs:restriction> - </xs:simpleType> - <xs:complexType name="WebAuthenticationDetail"> - <xs:annotation> - <xs:documentation>Used in authentication of the sender's identity.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="UserCredential" type="ns:WebAuthenticationCredential" minOccurs="1"> - <xs:annotation> - <xs:documentation>Credential used to authenticate a specific software application. This value is provided by FedEx after registration.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="WebAuthenticationCredential"> - <xs:annotation> - <xs:documentation>Two part authentication string used for the sender's identity</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="Key" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifying part of authentication credential. This value is provided by FedEx after registration</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Password" type="xs:string" minOccurs="1"> - <xs:annotation> - <xs:documentation>Secret part of authentication key. This value is provided by FedEx after registration.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:complexType name="VersionId"> - <xs:annotation> - <xs:documentation>Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply).</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="ServiceId" type="xs:string" fixed="trck" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifies a system or sub-system which performs an operation.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Major" type="xs:int" fixed="5" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifies the service business level.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Intermediate" type="xs:int" fixed="0" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifies the service interface level.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="Minor" type="xs:int" fixed="0" minOccurs="1"> - <xs:annotation> - <xs:documentation>Identifies the service code level.</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:schema> - </types> - <message name="SignatureProofOfDeliveryFaxReply"> - <part name="SignatureProofOfDeliveryFaxReply" element="ns:SignatureProofOfDeliveryFaxReply"/> - </message> - <message name="TrackRequest"> - <part name="TrackRequest" element="ns:TrackRequest"/> - </message> - <message name="SignatureProofOfDeliveryFaxRequest"> - <part name="SignatureProofOfDeliveryFaxRequest" element="ns:SignatureProofOfDeliveryFaxRequest"/> - </message> - <message name="SignatureProofOfDeliveryLetterRequest"> - <part name="SignatureProofOfDeliveryLetterRequest" element="ns:SignatureProofOfDeliveryLetterRequest"/> - </message> - <message name="TrackNotificationRequest"> - <part name="TrackNotificationRequest" element="ns:TrackNotificationRequest"/> - </message> - <message name="TrackNotificationReply"> - <part name="TrackNotificationReply" element="ns:TrackNotificationReply"/> - </message> - <message name="TrackReply"> - <part name="TrackReply" element="ns:TrackReply"/> - </message> - <message name="SignatureProofOfDeliveryLetterReply"> - <part name="SignatureProofOfDeliveryLetterReply" element="ns:SignatureProofOfDeliveryLetterReply"/> - </message> - <portType name="TrackPortType"> - <operation name="getTrackNotification" parameterOrder="TrackNotificationRequest"> - <input message="ns:TrackNotificationRequest"/> - <output message="ns:TrackNotificationReply"/> - </operation> - <operation name="retrieveSignatureProofOfDeliveryLetter" parameterOrder="SignatureProofOfDeliveryLetterRequest"> - <input message="ns:SignatureProofOfDeliveryLetterRequest"/> - <output message="ns:SignatureProofOfDeliveryLetterReply"/> - </operation> - <operation name="track" parameterOrder="TrackRequest"> - <input message="ns:TrackRequest"/> - <output message="ns:TrackReply"/> - </operation> - <operation name="sendSignatureProofOfDeliveryFax" parameterOrder="SignatureProofOfDeliveryFaxRequest"> - <input message="ns:SignatureProofOfDeliveryFaxRequest"/> - <output message="ns:SignatureProofOfDeliveryFaxReply"/> - </operation> - </portType> - <binding name="TrackServiceSoapBinding" type="ns:TrackPortType"> - <s1:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> - <operation name="getTrackNotification"> - <s1:operation soapAction="getTrackNotification" style="document"/> - <input> - <s1:body use="literal"/> - </input> - <output> - <s1:body use="literal"/> - </output> - </operation> - <operation name="retrieveSignatureProofOfDeliveryLetter"> - <s1:operation soapAction="retrieveSignatureProofOfDeliveryLetter" style="document"/> - <input> - <s1:body use="literal"/> - </input> - <output> - <s1:body use="literal"/> - </output> - </operation> - <operation name="track"> - <s1:operation soapAction="track" style="document"/> - <input> - <s1:body use="literal"/> - </input> - <output> - <s1:body use="literal"/> - </output> - </operation> - <operation name="sendSignatureProofOfDeliveryFax"> - <s1:operation soapAction="sendSignatureProofOfDeliveryFax" style="document"/> - <input> - <s1:body use="literal"/> - </input> - <output> - <s1:body use="literal"/> - </output> - </operation> - </binding> - <service name="TrackService"> - <port name="TrackServicePort" binding="ns:TrackServiceSoapBinding"> - <s1:address location=""/> - </port> - </service> -</definitions> +<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns="http://fedex.com/ws/track/v5" xmlns:s1="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://fedex.com/ws/track/v5" name="TrackServiceDefinitions"> + <types> + <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://fedex.com/ws/track/v5"> + <xs:element name="SignatureProofOfDeliveryFaxReply" type="ns:SignatureProofOfDeliveryFaxReply"/> + <xs:element name="SignatureProofOfDeliveryFaxRequest" type="ns:SignatureProofOfDeliveryFaxRequest"/> + <xs:element name="SignatureProofOfDeliveryLetterReply" type="ns:SignatureProofOfDeliveryLetterReply"/> + <xs:element name="SignatureProofOfDeliveryLetterRequest" type="ns:SignatureProofOfDeliveryLetterRequest"/> + <xs:element name="TrackNotificationReply" type="ns:TrackNotificationReply"/> + <xs:element name="TrackNotificationRequest" type="ns:TrackNotificationRequest"/> + <xs:element name="TrackReply" type="ns:TrackReply"/> + <xs:element name="TrackRequest" type="ns:TrackRequest"/> + <xs:complexType name="Address"> + <xs:annotation> + <xs:documentation>Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US).</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="StreetLines" type="xs:string" minOccurs="0" maxOccurs="2"> + <xs:annotation> + <xs:documentation>Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="City" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Name of city, town, etc.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StateOrProvinceCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PostalCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="UrbanizationCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Relevant only to addresses in Puerto Rico.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="CountryCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>The two-letter code used to identify a country.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Residential" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>Indicates whether this address residential (as opposed to commercial).</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="ArrivalLocationType"> + <xs:annotation> + <xs:documentation>Identifies where a tracking event occurs.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="AIRPORT"/> + <xs:enumeration value="CUSTOMER"/> + <xs:enumeration value="CUSTOMS_BROKER"/> + <xs:enumeration value="DELIVERY_LOCATION"/> + <xs:enumeration value="DESTINATION_AIRPORT"/> + <xs:enumeration value="DESTINATION_FEDEX_FACILITY"/> + <xs:enumeration value="DROP_BOX"/> + <xs:enumeration value="ENROUTE"/> + <xs:enumeration value="FEDEX_FACILITY"/> + <xs:enumeration value="FEDEX_OFFICE_LOCATION"/> + <xs:enumeration value="INTERLINE_CARRIER"/> + <xs:enumeration value="NON_FEDEX_FACILITY"/> + <xs:enumeration value="ORIGIN_AIRPORT"/> + <xs:enumeration value="ORIGIN_FEDEX_FACILITY"/> + <xs:enumeration value="PICKUP_LOCATION"/> + <xs:enumeration value="PLANE"/> + <xs:enumeration value="PORT_OF_ENTRY"/> + <xs:enumeration value="SORT_FACILITY"/> + <xs:enumeration value="TURNPOINT"/> + <xs:enumeration value="VEHICLE"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="CarrierCodeType"> + <xs:annotation> + <xs:documentation>Identification of a FedEx operating company (transportation).</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="FDXC"/> + <xs:enumeration value="FDXE"/> + <xs:enumeration value="FDXG"/> + <xs:enumeration value="FXCC"/> + <xs:enumeration value="FXFR"/> + <xs:enumeration value="FXSP"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="ClientDetail"> + <xs:annotation> + <xs:documentation>Descriptive data for the client submitting a transaction.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="AccountNumber" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>The FedEx account number associated with this transaction.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="MeterNumber" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>This number is assigned by FedEx and identifies the unique device from which the request is originating</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="IntegratorId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Only used in transactions which require identification of the Fed Ex Office integrator.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Localization" type="ns:Localization" minOccurs="0"> + <xs:annotation> + <xs:documentation>The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.)</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="Contact"> + <xs:annotation> + <xs:documentation>The descriptive data for a point-of-contact person.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="PersonName" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the contact person's name.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Title" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the contact person's title.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="CompanyName" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the company this contact is associated with.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PhoneNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the phone number associated with this contact.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PhoneExtension" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the phone extension associated with this contact.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PagerNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the pager number associated with this contact.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="FaxNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the fax number associated with this contact.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EMailAddress" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the email address associated with this contact.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="ContactAndAddress"> + <xs:sequence> + <xs:element name="Contact" type="ns:Contact" minOccurs="1"/> + <xs:element name="Address" type="ns:Address" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + <xs:complexType name="Dimensions"> + <xs:annotation> + <xs:documentation>The dimensions of this package and the unit type used for the measurements.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Length" type="xs:nonNegativeInteger" minOccurs="0"/> + <xs:element name="Width" type="xs:nonNegativeInteger" minOccurs="0"/> + <xs:element name="Height" type="xs:nonNegativeInteger" minOccurs="0"/> + <xs:element name="Units" type="ns:LinearUnits" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + <xs:complexType name="Distance"> + <xs:annotation> + <xs:documentation>Driving or other transportation distances, distinct from dimension measurements.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Value" type="xs:decimal" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the distance quantity.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Units" type="ns:DistanceUnits" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the unit of measure for the distance value.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="DistanceUnits"> + <xs:annotation> + <xs:documentation>Identifies the collection of units of measure that can be associated with a distance value.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="KM"/> + <xs:enumeration value="MI"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="EMailNotificationDetail"> + <xs:annotation> + <xs:documentation>Information describing email notifications that will be sent in relation to events that occur during package movement</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="PersonalMessage" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A message that will be included in the email notifications</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Recipients" type="ns:EMailNotificationRecipient" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information describing the destination of the email, format of the email and events to be notified on</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="EMailNotificationEventType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="ON_DELIVERY"/> + <xs:enumeration value="ON_EXCEPTION"/> + <xs:enumeration value="ON_SHIPMENT"/> + <xs:enumeration value="ON_TENDER"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="EMailNotificationFormatType"> + <xs:annotation> + <xs:documentation>The format of the email</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="HTML"/> + <xs:enumeration value="TEXT"/> + <xs:enumeration value="WIRELESS"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="EMailNotificationRecipient"> + <xs:sequence> + <xs:element name="EMailNotificationRecipientType" type="ns:EMailNotificationRecipientType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the relationship this email recipient has to the shipment.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EMailAddress" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>The email address to send the notification to</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="NotificationEventsRequested" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>The types of email notifications being requested for this recipient.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Format" type="ns:EMailNotificationFormatType" minOccurs="1"> + <xs:annotation> + <xs:documentation>The format of the email notification.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Localization" type="ns:Localization" minOccurs="0"> + <xs:annotation> + <xs:documentation>The language/locale to be used in this email notification.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="EMailNotificationRecipientType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="BROKER"/> + <xs:enumeration value="OTHER"/> + <xs:enumeration value="RECIPIENT"/> + <xs:enumeration value="SHIPPER"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="LinearUnits"> + <xs:annotation> + <xs:documentation>CM = centimeters, IN = inches</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="CM"/> + <xs:enumeration value="IN"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="Localization"> + <xs:annotation> + <xs:documentation>Identifies the representation of human-readable text.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="LanguageCode" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Two-letter code for language (e.g. EN, FR, etc.)</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="LocaleCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Two-letter code for the region (e.g. us, ca, etc..).</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="Notification"> + <xs:annotation> + <xs:documentation>The descriptive data regarding the result of the submitted transaction.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Severity" type="ns:NotificationSeverityType" minOccurs="1"> + <xs:annotation> + <xs:documentation>The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Source" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Indicates the source of this notification. Combined with the Code it uniquely identifies this notification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Code" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A code that represents this notification. Combined with the Source it uniquely identifies this notification.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Message" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Human-readable text that explains this notification.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="LocalizedMessage" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="MessageParameters" type="ns:NotificationParameter" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="NotificationParameter"> + <xs:sequence> + <xs:element name="Id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Value" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..).</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="NotificationSeverityType"> + <xs:annotation> + <xs:documentation>Identifies the set of severity values for a Notification.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="ERROR"/> + <xs:enumeration value="FAILURE"/> + <xs:enumeration value="NOTE"/> + <xs:enumeration value="SUCCESS"/> + <xs:enumeration value="WARNING"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="OfficeOrderDeliveryMethodType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="COURIER"/> + <xs:enumeration value="OTHER"/> + <xs:enumeration value="PICKUP"/> + <xs:enumeration value="SHIPMENT"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="OperatingCompanyType"> + <xs:annotation> + <xs:documentation>Identification for a FedEx operating company (transportation and non-transportation).</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="FEDEX_OFFICE"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="PackagingType"> + <xs:annotation> + <xs:documentation>The enumerated packaging type used for this package.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="FEDEX_10KG_BOX"/> + <xs:enumeration value="FEDEX_25KG_BOX"/> + <xs:enumeration value="FEDEX_BOX"/> + <xs:enumeration value="FEDEX_ENVELOPE"/> + <xs:enumeration value="FEDEX_PAK"/> + <xs:enumeration value="FEDEX_TUBE"/> + <xs:enumeration value="YOUR_PACKAGING"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="QualifiedTrackingNumber"> + <xs:annotation> + <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>FedEx assigned identifier for a package/shipment.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDate" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>The date the package was shipped.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="AccountNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>If the account number used to ship the package is provided in the request the shipper and recipient information is included on the letter or fax.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Carrier" type="ns:CarrierCodeType" minOccurs="0"> + <xs:annotation> + <xs:documentation>FedEx operating company that delivered the package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Destination" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>Only country is used for elimination of duplicate tracking numbers.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="RedirectToHoldEligibilityType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="ELIGIBLE"/> + <xs:enumeration value="INELIGIBLE"/> + <xs:enumeration value="POSSIBLY_ELIGIBLE"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="ServiceType"> + <xs:annotation> + <xs:documentation>The service type of the package/shipment.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="EUROPE_FIRST_INTERNATIONAL_PRIORITY"/> + <xs:enumeration value="FEDEX_1_DAY_FREIGHT"/> + <xs:enumeration value="FEDEX_2_DAY"/> + <xs:enumeration value="FEDEX_2_DAY_AM"/> + <xs:enumeration value="FEDEX_2_DAY_FREIGHT"/> + <xs:enumeration value="FEDEX_3_DAY_FREIGHT"/> + <xs:enumeration value="FEDEX_EXPRESS_SAVER"/> + <xs:enumeration value="FEDEX_FIRST_FREIGHT"/> + <xs:enumeration value="FEDEX_FREIGHT_ECONOMY"/> + <xs:enumeration value="FEDEX_FREIGHT_PRIORITY"/> + <xs:enumeration value="FEDEX_GROUND"/> + <xs:enumeration value="FIRST_OVERNIGHT"/> + <xs:enumeration value="GROUND_HOME_DELIVERY"/> + <xs:enumeration value="INTERNATIONAL_DISTRIBUTION_FREIGHT"/> + <xs:enumeration value="INTERNATIONAL_ECONOMY"/> + <xs:enumeration value="INTERNATIONAL_ECONOMY_DISTRIBUTION"/> + <xs:enumeration value="INTERNATIONAL_ECONOMY_FREIGHT"/> + <xs:enumeration value="INTERNATIONAL_FIRST"/> + <xs:enumeration value="INTERNATIONAL_PRIORITY"/> + <xs:enumeration value="INTERNATIONAL_PRIORITY_DISTRIBUTION"/> + <xs:enumeration value="INTERNATIONAL_PRIORITY_FREIGHT"/> + <xs:enumeration value="PRIORITY_OVERNIGHT"/> + <xs:enumeration value="SMART_POST"/> + <xs:enumeration value="STANDARD_OVERNIGHT"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="SignatureProofOfDeliveryFaxReply"> + <xs:annotation> + <xs:documentation>FedEx Signature Proof Of Delivery Fax reply.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> + <xs:annotation> + <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>Contains the version of the reply being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="FaxConfirmationNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Confirmation of fax transmission.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="SignatureProofOfDeliveryFaxRequest"> + <xs:annotation> + <xs:documentation>FedEx Signature Proof Of Delivery Fax request.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>The version of the request being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="QualifiedTrackingNumber" type="ns:QualifiedTrackingNumber" minOccurs="0"> + <xs:annotation> + <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="AdditionalComments" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Additional customer-supplied text to be added to the body of the letter.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="FaxSender" type="ns:ContactAndAddress" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contact and address information about the person requesting the fax to be sent.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="FaxRecipient" type="ns:ContactAndAddress" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contact and address information, including the fax number, about the person to receive the fax.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="SignatureProofOfDeliveryImageType"> + <xs:annotation> + <xs:documentation>Identifies the set of SPOD image types.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="PDF"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="SignatureProofOfDeliveryLetterReply"> + <xs:annotation> + <xs:documentation>FedEx Signature Proof Of Delivery Letter reply.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> + <xs:annotation> + <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>Image of letter encoded in Base64 format.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Letter" type="xs:base64Binary" minOccurs="0"> + <xs:annotation> + <xs:documentation>Image of letter encoded in Base64 format.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="SignatureProofOfDeliveryLetterRequest"> + <xs:annotation> + <xs:documentation>FedEx Signature Proof Of Delivery Letter request.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>The version of the request being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="QualifiedTrackingNumber" type="ns:QualifiedTrackingNumber" minOccurs="0"> + <xs:annotation> + <xs:documentation>Tracking number and additional shipment data used to identify a unique shipment for proof of delivery.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="AdditionalComments" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Additional customer-supplied text to be added to the body of the letter.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="LetterFormat" type="ns:SignatureProofOfDeliveryImageType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the set of SPOD image types.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Consignee" type="ns:ContactAndAddress" minOccurs="0"> + <xs:annotation> + <xs:documentation>If provided this information will be print on the letter.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="StringBarcode"> + <xs:annotation> + <xs:documentation>Each instance of this data type represents a barcode whose content must be represented as ASCII text (i.e. not binary data).</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Type" type="ns:StringBarcodeType" minOccurs="0"> + <xs:annotation> + <xs:documentation>The kind of barcode data in this instance.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Value" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>The data content of this instance.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="StringBarcodeType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="ADDRESS"/> + <xs:enumeration value="ASTRA"/> + <xs:enumeration value="FEDEX_1D"/> + <xs:enumeration value="GROUND"/> + <xs:enumeration value="POSTAL"/> + <xs:enumeration value="USPS"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="TrackDeliveryLocationType"> + <xs:annotation> + <xs:documentation>The delivery location at the delivered to address.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="FEDEX_LOCATION"/> + <xs:enumeration value="GUARD_OR_SECURITY_STATION"/> + <xs:enumeration value="IN_BOND_OR_CAGE"/> + <xs:enumeration value="MAILROOM"/> + <xs:enumeration value="OTHER"/> + <xs:enumeration value="PHARMACY"/> + <xs:enumeration value="RECEPTIONIST_OR_FRONT_DESK"/> + <xs:enumeration value="RESIDENCE"/> + <xs:enumeration value="SHIPPING_RECEIVING"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="TrackDetail"> + <xs:annotation> + <xs:documentation>Detailed tracking information about a particular package.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Notification" type="ns:Notification" minOccurs="0"> + <xs:annotation> + <xs:documentation>To report soft error on an individual track detail.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>The FedEx package identifier.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Barcode" type="ns:StringBarcode" minOccurs="0"/> + <xs:element name="TrackingNumberUniqueIdentifier" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A code that identifies this type of status. This is the most recent status.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusDescription" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A human-readable description of this status.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Reconciliation" type="ns:TrackReconciliation" minOccurs="0"> + <xs:annotation> + <xs:documentation>Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ServiceCommitMessage" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Used to convey information such as. 1. FedEx has received information about a package but has not yet taken possession of it. 2. FedEx has handed the package off to a third party for final delivery. 3. The package delivery has been cancelled</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies a FedEx operating company (transportation).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="OperatingCompany" type="ns:OperatingCompanyType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies operating transportation company that is the specific to the carrier code.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ProductionLocationContactAndAddress" type="ns:ContactAndAddress" minOccurs="0"> + <xs:annotation> + <xs:documentation>Specifies the FXO production centre contact and address.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="OtherIdentifiers" type="ns:TrackPackageIdentifier" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Other related identifiers for this package such as reference numbers.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ServiceInfo" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Retained for legacy compatibility only. User/screen friendly description of the Service type (e.g. Priority Overnight).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ServiceType" type="ns:ServiceType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageWeight" type="ns:Weight" minOccurs="0"> + <xs:annotation> + <xs:documentation>The weight of this package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageDimensions" type="ns:Dimensions" minOccurs="0"> + <xs:annotation> + <xs:documentation>Physical dimensions of the package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageDimensionalWeight" type="ns:Weight" minOccurs="0"> + <xs:annotation> + <xs:documentation>The dimensional weight of the package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipmentWeight" type="ns:Weight" minOccurs="0"> + <xs:annotation> + <xs:documentation>The weight of the entire shipment.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Packaging" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Retained for legacy compatibility only.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackagingType" type="ns:PackagingType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Strict representation of the Packaging type (e.g. FEDEX_BOX, YOUR_PACKAGING).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageSequenceNumber" type="xs:nonNegativeInteger" minOccurs="0"> + <xs:annotation> + <xs:documentation>The sequence number of this package in a shipment. This would be 2 if it was package number 2 of 4.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageCount" type="xs:nonNegativeInteger" minOccurs="0"> + <xs:annotation> + <xs:documentation>The number of packages in this shipment.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackReturnLabelType" type="ns:TrackReturnLabelType" minOccurs="0"/> + <xs:element name="TrackReturnDescription" type="xs:string" minOccurs="0"/> + <xs:element name="ShipperAddress" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>The address information for the shipper.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="OriginLocationAddress" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>The address of the FedEx pickup location/facility.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EstimatedPickupTimestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>Estimated package pickup time for shipments that haven't been picked up.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipTimestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>Time package was shipped/tendered over to FedEx. Time portion will be populated if available, otherwise will be set to midnight.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TotalTransitDistance" type="ns:Distance" minOccurs="0"> + <xs:annotation> + <xs:documentation>The distance from the origin to the destination. Returned for Custom Critical shipments.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DistanceToDestination" type="ns:Distance" minOccurs="0"> + <xs:annotation> + <xs:documentation>Total distance package still has to travel. Returned for Custom Critical shipments.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DestinationAddress" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>The address this package is to be (or has been) delivered.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DestinationLocationAddress" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>The address of the FedEx delivery location/facility.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EstimatedDeliveryTimestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>Projected package delivery time based on ship time stamp, service and destination. Not populated if delivery has already occurred.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ActualDeliveryTimestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>The time the package was actually delivered.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ActualDeliveryAddress" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>Actual address where package was delivered. Differs from destinationAddress, which indicates where the package was to be delivered; This field tells where delivery actually occurred (next door, at station, etc.)</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="OfficeOrderDeliveryMethod" type="ns:OfficeOrderDeliveryMethodType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the method of office order delivery.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DeliveryLocationType" type="ns:TrackDeliveryLocationType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Strict text indicating the delivery location at the delivered to address.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DeliveryLocationDescription" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>User/screen friendly representation of the DeliveryLocationType (delivery location at the delivered to address). Can be returned in localized text.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DeliverySignatureName" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>This is either the name of the person that signed for the package or "Signature not requested" or "Signature on file".</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="SignatureProofOfDeliveryAvailable" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>True if signed for by signature image is available.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="NotificationEventsAvailable" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>The types of email notifications that are available for the package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="SplitShipmentParts" type="ns:TrackSplitShipmentPart" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Returned for cargo shipments only when they are currently split across vehicles.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="RedirectToHoldEligibility" type="ns:RedirectToHoldEligibilityType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Indicates redirection eligibility as determined by tracking service, subject to refinement/override by redirect-to-hold service.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Events" type="ns:TrackEvent" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Event information for a tracking number.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackEvent"> + <xs:annotation> + <xs:documentation>FedEx scanning information about a package.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Timestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>The time this event occurred.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EventType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Carrier's scan code. Pairs with EventDescription.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="EventDescription" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Literal description that pairs with the EventType.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusExceptionCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Further defines the Scan Type code's specific type (e.g., DEX08 business closed). Pairs with StatusExceptionDescription.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusExceptionDescription" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Literal description that pairs with the StatusExceptionCode.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Address" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>Address information of the station that is responsible for the scan.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ArrivalLocation" type="ns:ArrivalLocationType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Indicates where the arrival actually occurred.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="TrackIdentifierType"> + <xs:annotation> + <xs:documentation>The type of track to be performed.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="BILL_OF_LADING"/> + <xs:enumeration value="COD_RETURN_TRACKING_NUMBER"/> + <xs:enumeration value="CUSTOMER_AUTHORIZATION_NUMBER"/> + <xs:enumeration value="CUSTOMER_REFERENCE"/> + <xs:enumeration value="DEPARTMENT"/> + <xs:enumeration value="FREE_FORM_REFERENCE"/> + <xs:enumeration value="GROUND_INTERNATIONAL"/> + <xs:enumeration value="GROUND_SHIPMENT_ID"/> + <xs:enumeration value="GROUP_MPS"/> + <xs:enumeration value="INVOICE"/> + <xs:enumeration value="JOB_GLOBAL_TRACKING_NUMBER"/> + <xs:enumeration value="ORDER_GLOBAL_TRACKING_NUMBER"/> + <xs:enumeration value="ORDER_TO_PAY_NUMBER"/> + <xs:enumeration value="PARTNER_CARRIER_NUMBER"/> + <xs:enumeration value="PART_NUMBER"/> + <xs:enumeration value="PURCHASE_ORDER"/> + <xs:enumeration value="RETURNED_TO_SHIPPER_TRACKING_NUMBER"/> + <xs:enumeration value="RETURN_MATERIALS_AUTHORIZATION"/> + <xs:enumeration value="SHIPPER_REFERENCE"/> + <xs:enumeration value="STANDARD_MPS"/> + <xs:enumeration value="TRACKING_NUMBER_OR_DOORTAG"/> + <xs:enumeration value="TRANSPORTATION_CONTROL_NUMBER"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="TrackNotificationPackage"> + <xs:sequence> + <xs:element name="TrackingNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>FedEx assigned identifier for a package/shipment.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackingNumberUniqueIdentifiers" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identification of a FedEx operating company (transportation).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDate" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>The date the package was shipped (tendered to FedEx).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Destination" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>The destination address of this package. Only city, state/province, and country are returned.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="RecipientDetails" type="ns:TrackNotificationRecipientDetail" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Options available for a tracking notification recipient.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackNotificationRecipientDetail"> + <xs:annotation> + <xs:documentation>Options available for a tracking notification recipient.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="NotificationEventsAvailable" type="ns:EMailNotificationEventType" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>The types of email notifications available for this recipient.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackNotificationReply"> + <xs:annotation> + <xs:documentation>FedEx Track Notification reply.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> + <xs:annotation> + <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>Contains the version of the reply being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DuplicateWaybill" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>True if duplicate packages (more than one package with the same tracking number) have been found, the packages array contains information about each duplicate. Use this information to determine which of the tracking numbers is the one you need and resend your request using the tracking number and TrackingNumberUniqueIdentifier for that package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="MoreDataAvailable" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>True if additional packages remain to be retrieved.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PagingToken" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Packages" type="ns:TrackNotificationPackage" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information about the notifications that are available for this tracking number. If there are duplicates the ship date and destination address information is returned for determining which TrackingNumberUniqueIdentifier to use on a subsequent request.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackNotificationRequest"> + <xs:annotation> + <xs:documentation>FedEx Track Notification request.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackingNumber" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>The tracking number to which the notifications will be triggered from.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="MultiPiece" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>Indicates whether to return tracking information for all associated packages.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PagingToken" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>When the MoreDataAvailable field is true in a TrackNotificationReply the PagingToken must be sent in the subsequent TrackNotificationRequest to retrieve the next page of data.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackingNumberUniqueId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Use this field when your original request informs you that there are duplicates of this tracking number. If you get duplicates you will also receive some information about each of the duplicate tracking numbers to enable you to chose one and resend that number along with the TrackingNumberUniqueId to get notifications for that tracking number.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDateRangeBegin" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDateRangeEnd" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="SenderEMailAddress" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Included in the email notification identifying the requester of this notification.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="SenderContactName" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Included in the email notification identifying the requester of this notification.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="NotificationDetail" type="ns:EMailNotificationDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Who to send the email notifications to and for which events. The notificationRecipientType and NotifyOnShipment fields are not used in this request.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackPackageIdentifier"> + <xs:annotation> + <xs:documentation>The type and value of the package identifier that is to be used to retrieve the tracking information for a package.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Value" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>The value to be used to retrieve tracking information for a package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Type" type="ns:TrackIdentifierType" minOccurs="1"> + <xs:annotation> + <xs:documentation>The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) .</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackReconciliation"> + <xs:annotation> + <xs:documentation>Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Status" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>An identifier for this type of status.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Description" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>A human-readable description of this status.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackReply"> + <xs:annotation> + <xs:documentation>The descriptive data returned from a FedEx package tracking request.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="HighestSeverity" type="ns:NotificationSeverityType" minOccurs="1"> + <xs:annotation> + <xs:documentation>This contains the severity type of the most severe Notification in the Notifications array.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Notifications" type="ns:Notification" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>Contains the version of the reply being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="DuplicateWaybill" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="MoreData" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>True if additional packages remain to be retrieved.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PagingToken" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackDetails" type="ns:TrackDetail" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>Contains detailed tracking information for the requested packages(s).</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TrackRequest"> + <xs:annotation> + <xs:documentation>The descriptive data sent by a client to track a FedEx package.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="WebAuthenticationDetail" type="ns:WebAuthenticationDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services).</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ClientDetail" type="ns:ClientDetail" minOccurs="1"> + <xs:annotation> + <xs:documentation>Descriptive data identifying the client submitting the transaction.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TransactionDetail" type="ns:TransactionDetail" minOccurs="0"> + <xs:annotation> + <xs:documentation>Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Version" type="ns:VersionId" minOccurs="1"> + <xs:annotation> + <xs:documentation>The version of the request being used.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="CarrierCode" type="ns:CarrierCodeType" minOccurs="0"> + <xs:annotation> + <xs:documentation>The FedEx operating company (transportation) used for this package's delivery.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="OperatingCompany" type="ns:OperatingCompanyType" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies operating transportation company that is the specific to the carrier code.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PackageIdentifier" type="ns:TrackPackageIdentifier" minOccurs="1"> + <xs:annotation> + <xs:documentation>The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="TrackingNumberUniqueIdentifier" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Used to distinguish duplicate FedEx tracking numbers.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDateRangeBegin" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipDateRangeEnd" type="xs:date" minOccurs="0"> + <xs:annotation> + <xs:documentation>To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="ShipmentAccountNumber" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>For tracking by references information either the account number or destination postal code and country must be provided.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Destination" type="ns:Address" minOccurs="0"> + <xs:annotation> + <xs:documentation>For tracking by references information either the account number or destination postal code and country must be provided.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="IncludeDetailedScans" type="xs:boolean" minOccurs="0"> + <xs:annotation> + <xs:documentation>If false the reply will contain summary/profile data including current status. If true the reply contains profile + detailed scan activity for each package.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PagingToken" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="TrackReturnLabelType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="EMAIL"/> + <xs:enumeration value="PRINT"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="TrackSplitShipmentPart"> + <xs:annotation> + <xs:documentation>Used when a cargo shipment is split across vehicles. This is used to give the status of each part of the shipment.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="PieceCount" type="xs:positiveInteger" minOccurs="0"> + <xs:annotation> + <xs:documentation>The number of pieces in this part.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Timestamp" type="xs:dateTime" minOccurs="0"> + <xs:annotation> + <xs:documentation>The date and time this status began.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusCode" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A code that identifies this type of status.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="StatusDescription" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>A human-readable description of this status.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="TransactionDetail"> + <xs:annotation> + <xs:documentation>Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="CustomerTransactionId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Free form text to be echoed back in the reply. Used to match requests and replies.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Localization" type="ns:Localization" minOccurs="0"> + <xs:annotation> + <xs:documentation>Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection).</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="Weight"> + <xs:annotation> + <xs:documentation>The descriptive data for the heaviness of an object.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Units" type="ns:WeightUnits" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the unit of measure associated with a weight value.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Value" type="xs:decimal" minOccurs="0"> + <xs:annotation> + <xs:documentation>Identifies the weight value of a package/shipment.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:simpleType name="WeightUnits"> + <xs:annotation> + <xs:documentation>Identifies the collection of units of measure that can be associated with a weight value.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:enumeration value="KG"/> + <xs:enumeration value="LB"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="WebAuthenticationDetail"> + <xs:annotation> + <xs:documentation>Used in authentication of the sender's identity.</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="UserCredential" type="ns:WebAuthenticationCredential" minOccurs="1"> + <xs:annotation> + <xs:documentation>Credential used to authenticate a specific software application. This value is provided by FedEx after registration.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="WebAuthenticationCredential"> + <xs:annotation> + <xs:documentation>Two part authentication string used for the sender's identity</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Key" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifying part of authentication credential. This value is provided by FedEx after registration</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Password" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation>Secret part of authentication key. This value is provided by FedEx after registration.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="VersionId"> + <xs:annotation> + <xs:documentation>Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply).</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="ServiceId" type="xs:string" fixed="trck" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifies a system or sub-system which performs an operation.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Major" type="xs:int" fixed="5" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifies the service business level.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Intermediate" type="xs:int" fixed="0" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifies the service interface level.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Minor" type="xs:int" fixed="0" minOccurs="1"> + <xs:annotation> + <xs:documentation>Identifies the service code level.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:schema> + </types> + <message name="SignatureProofOfDeliveryFaxReply"> + <part name="SignatureProofOfDeliveryFaxReply" element="ns:SignatureProofOfDeliveryFaxReply"/> + </message> + <message name="TrackRequest"> + <part name="TrackRequest" element="ns:TrackRequest"/> + </message> + <message name="SignatureProofOfDeliveryFaxRequest"> + <part name="SignatureProofOfDeliveryFaxRequest" element="ns:SignatureProofOfDeliveryFaxRequest"/> + </message> + <message name="SignatureProofOfDeliveryLetterRequest"> + <part name="SignatureProofOfDeliveryLetterRequest" element="ns:SignatureProofOfDeliveryLetterRequest"/> + </message> + <message name="TrackNotificationRequest"> + <part name="TrackNotificationRequest" element="ns:TrackNotificationRequest"/> + </message> + <message name="TrackNotificationReply"> + <part name="TrackNotificationReply" element="ns:TrackNotificationReply"/> + </message> + <message name="TrackReply"> + <part name="TrackReply" element="ns:TrackReply"/> + </message> + <message name="SignatureProofOfDeliveryLetterReply"> + <part name="SignatureProofOfDeliveryLetterReply" element="ns:SignatureProofOfDeliveryLetterReply"/> + </message> + <portType name="TrackPortType"> + <operation name="getTrackNotification" parameterOrder="TrackNotificationRequest"> + <input message="ns:TrackNotificationRequest"/> + <output message="ns:TrackNotificationReply"/> + </operation> + <operation name="retrieveSignatureProofOfDeliveryLetter" parameterOrder="SignatureProofOfDeliveryLetterRequest"> + <input message="ns:SignatureProofOfDeliveryLetterRequest"/> + <output message="ns:SignatureProofOfDeliveryLetterReply"/> + </operation> + <operation name="track" parameterOrder="TrackRequest"> + <input message="ns:TrackRequest"/> + <output message="ns:TrackReply"/> + </operation> + <operation name="sendSignatureProofOfDeliveryFax" parameterOrder="SignatureProofOfDeliveryFaxRequest"> + <input message="ns:SignatureProofOfDeliveryFaxRequest"/> + <output message="ns:SignatureProofOfDeliveryFaxReply"/> + </operation> + </portType> + <binding name="TrackServiceSoapBinding" type="ns:TrackPortType"> + <s1:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <operation name="getTrackNotification"> + <s1:operation soapAction="getTrackNotification" style="document"/> + <input> + <s1:body use="literal"/> + </input> + <output> + <s1:body use="literal"/> + </output> + </operation> + <operation name="retrieveSignatureProofOfDeliveryLetter"> + <s1:operation soapAction="retrieveSignatureProofOfDeliveryLetter" style="document"/> + <input> + <s1:body use="literal"/> + </input> + <output> + <s1:body use="literal"/> + </output> + </operation> + <operation name="track"> + <s1:operation soapAction="track" style="document"/> + <input> + <s1:body use="literal"/> + </input> + <output> + <s1:body use="literal"/> + </output> + </operation> + <operation name="sendSignatureProofOfDeliveryFax"> + <s1:operation soapAction="sendSignatureProofOfDeliveryFax" style="document"/> + <input> + <s1:body use="literal"/> + </input> + <output> + <s1:body use="literal"/> + </output> + </operation> + </binding> + <service name="TrackService"> + <port name="TrackServicePort" binding="ns:TrackServiceSoapBinding"> + <s1:address location=""/> + </port> + </service> +</definitions> diff --git a/app/code/core/Mage/User/Block/Buttons.php b/app/code/core/Mage/User/Block/Buttons.php index 7b3001b9dfda5..633430b053d19 100644 --- a/app/code/core/Mage/User/Block/Buttons.php +++ b/app/code/core/Mage/User/Block/Buttons.php @@ -29,44 +29,32 @@ class Mage_User_Block_Buttons extends Mage_Backend_Block_Template protected function _prepareLayout() { - $this->setChild('backButton', - $this->getLayout()->createBlock('Mage_Backend_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_User_Helper_Data')->__('Back'), - 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', - 'class' => 'back' - )) - ); + $this->addChild('backButton', 'Mage_Backend_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_User_Helper_Data')->__('Back'), + 'onclick' => 'window.location.href=\''.$this->getUrl('*/*/').'\'', + 'class' => 'back' + )); - $this->setChild('resetButton', - $this->getLayout()->createBlock('Mage_Backend_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_User_Helper_Data')->__('Reset'), - 'onclick' => 'window.location.reload()' - )) - ); + $this->addChild('resetButton', 'Mage_Backend_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_User_Helper_Data')->__('Reset'), + 'onclick' => 'window.location.reload()' + )); - $this->setChild('saveButton', - $this->getLayout()->createBlock('Mage_Backend_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_User_Helper_Data')->__('Save Role'), - 'onclick' => 'roleForm.submit();return false;', - 'class' => 'save' - )) - ); + $this->addChild('saveButton', 'Mage_Backend_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_User_Helper_Data')->__('Save Role'), + 'onclick' => 'roleForm.submit();return false;', + 'class' => 'save' + )); - $this->setChild('deleteButton', - $this->getLayout()->createBlock('Mage_Backend_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_User_Helper_Data')->__('Delete Role'), - 'onclick' => 'deleteConfirm(\'' - . Mage::helper('Mage_User_Helper_Data')->__('Are you sure you want to do this?') - . '\', \'' - . $this->getUrl('*/*/delete', array('rid' => $this->getRequest()->getParam('rid'))) - . '\')', - 'class' => 'delete' - )) - ); + $this->addChild('deleteButton', 'Mage_Backend_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_User_Helper_Data')->__('Delete Role'), + 'onclick' => 'deleteConfirm(\'' + . Mage::helper('Mage_User_Helper_Data')->__('Are you sure you want to do this?') + . '\', \'' + . $this->getUrl('*/*/delete', array('rid' => $this->getRequest()->getParam('rid'))) + . '\')', + 'class' => 'delete' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/Weee/Block/Renderer/Weee/Tax.php b/app/code/core/Mage/Weee/Block/Renderer/Weee/Tax.php index c4f48df0a5487..081b1250c3fd7 100644 --- a/app/code/core/Mage/Weee/Block/Renderer/Weee/Tax.php +++ b/app/code/core/Mage/Weee/Block/Renderer/Weee/Tax.php @@ -145,13 +145,11 @@ public function getWebsites() protected function _setAddButton() { - $this->setChild('add_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Tax'), - 'onclick' => "weeeTaxControl.addItem('".$this->getElement()->getHtmlId()."')", - 'class' => 'add' - ))); + $this->addChild('add_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Add Tax'), + 'onclick' => "weeeTaxControl.addItem('".$this->getElement()->getHtmlId()."')", + 'class' => 'add' + )); } public function getAddButtonHtml() diff --git a/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Container.php b/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Container.php index d533330764497..dcd3d3cdfd093 100644 --- a/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Container.php +++ b/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Container.php @@ -53,8 +53,8 @@ protected function _beforeToHtml() 'package' => $this->getPackage(), 'theme' => $this->getTheme(), ); - /** @var $layoutUpdate Mage_Core_Model_Layout_Update */ - $layoutUpdate = Mage::getModel('Mage_Core_Model_Layout_Update', $layoutUpdateParams); + /** @var $layoutUpdate Mage_Core_Model_Layout_Merge */ + $layoutUpdate = Mage::getModel('Mage_Core_Model_Layout_Merge', $layoutUpdateParams); $layoutUpdate->addPageHandles(array($this->getLayoutHandle())); $layoutUpdate->load(); diff --git a/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Layout.php b/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Layout.php index d66e021bd6935..6de89d74f75dd 100644 --- a/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Layout.php +++ b/app/code/core/Mage/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/Layout.php @@ -63,11 +63,11 @@ protected function _beforeToHtml() * Retrieve new layout update model instance * * @param array $arguments - * @return Mage_Core_Model_Layout_Update + * @return Mage_Core_Model_Layout_Merge */ protected function _getLayoutUpdate(array $arguments) { - return Mage::getModel('Mage_Core_Model_Layout_Update', $arguments); + return Mage::getModel('Mage_Core_Model_Layout_Merge', $arguments); } /** @@ -80,7 +80,7 @@ protected function _addPageTypeOptions(array $pageTypes, $level = 0) { foreach ($pageTypes as $pageTypeName => $pageTypeInfo) { $params = array(); - if ($pageTypeInfo['type'] == Mage_Core_Model_Layout_Update::TYPE_FRAGMENT) { + if ($pageTypeInfo['type'] == Mage_Core_Model_Layout_Merge::TYPE_FRAGMENT) { $params['class'] = 'fragment'; } $this->addOption($pageTypeName, str_repeat('. ', $level) . $pageTypeInfo['label'], $params); diff --git a/app/code/core/Mage/Widget/data/widget_setup/data-upgrade-1.6.0.0-1.6.0.1.php b/app/code/core/Mage/Widget/data/widget_setup/data-upgrade-1.6.0.0-1.6.0.1.php index 2ac0c6f6fdf1e..1fa45b2bdb12f 100644 --- a/app/code/core/Mage/Widget/data/widget_setup/data-upgrade-1.6.0.0-1.6.0.1.php +++ b/app/code/core/Mage/Widget/data/widget_setup/data-upgrade-1.6.0.0-1.6.0.1.php @@ -24,9 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** Bug MAGETWO-3318 Segmentation Fault */ -return; - /** @var $installer Mage_Core_Model_Resource_Setup_Migration */ $installer = Mage::getResourceModel('Mage_Core_Model_Resource_Setup_Migration', 'core_setup'); $installer->startSetup(); diff --git a/app/code/core/Mage/Widget/view/adminhtml/instance/edit/layout.phtml b/app/code/core/Mage/Widget/view/adminhtml/instance/edit/layout.phtml index 4b9a34d4db965..40417c2317190 100644 --- a/app/code/core/Mage/Widget/view/adminhtml/instance/edit/layout.phtml +++ b/app/code/core/Mage/Widget/view/adminhtml/instance/edit/layout.phtml @@ -39,7 +39,7 @@ var pageGroupTemplate = '<div class="options-box page_group_container" id="page_group_container_{{id}}">'+ '<div class="option-box">'+ '<div class="option-title">'+ - '<?php echo $this->getRemoveLayoutButtonHtml() ?>'+ + <?php echo Mage::helper('Mage_Core_Helper_Data')->jsonEncode($this->getRemoveLayoutButtonHtml()) ?> + '<label for="widget_instance[{{id}}][page_group]">Display On <span class="required">*</span></label>'+ '<?php echo $this->getDisplayOnSelectHtml(); ?>'+ '</div>'+ diff --git a/app/code/core/Mage/Wishlist/view/frontend/layout.xml b/app/code/core/Mage/Wishlist/view/frontend/layout.xml index 9462316ebd588..beb3e77bcc7b7 100644 --- a/app/code/core/Mage/Wishlist/view/frontend/layout.xml +++ b/app/code/core/Mage/Wishlist/view/frontend/layout.xml @@ -119,15 +119,14 @@ Wishlist pages </reference> </wishlist_index_share> - <wishlist_index_configure translate="label" type="page" parent="wishlist_index_index"> + <wishlist_index_configure translate="label" type="page" parent="catalog_product_view"> <label>Configure Wishlist Item</label> - <update handle="catalog_product_view"/> <reference name="product.info"> <block type="Mage_Wishlist_Block_Item_Configure" name="product.info.addto" as="addto" template="item/configure/addto.phtml"/> </reference> <reference name="product.info.options.wrapper.bottom"> - <action method="unsetChild"><name>product.info.addto</name></action> - <action method="append"><element>product.info.addto</element></action> + <action method="unsetChild"><name>product.info.addto.additional</name></action> + <action method="append"><element>product.info.addto.additional</element></action> </reference> </wishlist_index_configure> diff --git a/app/code/core/Mage/XmlConnect/Block/Adminhtml/Mobile/Edit/Tab/Settings.php b/app/code/core/Mage/XmlConnect/Block/Adminhtml/Mobile/Edit/Tab/Settings.php index 972733b98e31c..7985fb7a0ba59 100755 --- a/app/code/core/Mage/XmlConnect/Block/Adminhtml/Mobile/Edit/Tab/Settings.php +++ b/app/code/core/Mage/XmlConnect/Block/Adminhtml/Mobile/Edit/Tab/Settings.php @@ -37,15 +37,11 @@ class Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Settings { protected function _prepareLayout() { - $this->setChild('continue_button', - $this->getLayout()->createBlock('Mage_Adminhtml_Block_Widget_Button') - ->setData(array( - 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Continue'), - 'onclick' => "if (editForm.submit()) { return false }", - 'class' => 'save' - ) - ) - ); + $this->addChild('continue_button', 'Mage_Adminhtml_Block_Widget_Button', array( + 'label' => Mage::helper('Mage_Catalog_Helper_Data')->__('Continue'), + 'onclick' => "if (editForm.submit()) { return false }", + 'class' => 'save' + )); return parent::_prepareLayout(); } diff --git a/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-catalog.css b/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-catalog.css index e1ab1fc4b9952..5c07bcca56824 100644 --- a/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-catalog.css +++ b/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-catalog.css @@ -1,4 +1,4 @@ -/** +/** * Magento * * NOTICE OF LICENSE @@ -15,290 +15,290 @@ * * Do not edit or add to this file if you wish to upgrade Magento to newer * versions in the future. If you wish to customize Magento for your - * needs please refer to http://www.magentocommerce.com for more information. - * - * @category design - * @package base_default - * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) - * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) - */ -body { margin: 0; padding: 0 } - -.main-block -{ - width: 320px; - height: 450px; -} -.header-sign-1 -{ - font: bold 12px arial; - color: #e9e9e9; - float: left; - padding: 5px 0 3px 3px; - height: 10px; -} -.top-header -{ - height: 20px -} - -.battery -{ - height: 16px; - width: 25px; - float: right; - margin: 0px 5px 5px 13px; -} - -.volume -{ - height: 16px; - width: 25px; - float: left; -} - -.antenna -{ - height: 16px; - width: 18px; - float: left; - padding-left: 20px; -} -.time -{ - width: 50%; - position:relative; - top:3px; - text-align: center; - font: bold 12px arial; - color: #e9e9e9; - float: left; -} - -.main-header -{ - width: 100%; - height: 50px; - color: #f3f3f3; - text-align: center; -} -.main-header-text -{ - -} - -.clearB -{ - clear: both; - height: 1px; -} -.btn-l -{ - position:relative; - left: 0px; - top:7px; - width: 70px; - height: 32px; - text-align: center; - float: left; - margin: 0 0 0 15px; - background:url('btn-l.png') center center no-repeat; -} - -.btn-r -{ - position:relative; - right: 0px; - top:7px; - width: 72px; - height: 32px; - text-align: center; - float: right; - margin: 0 20px 0 0; - background:url('btn-r.png') center center no-repeat; -} -.main-header-text -{ - width: 110px; - height: 32px; - text-align: center; - float: left; -} - - - -.btn-txt -{ - position:relative; - top:8px; -} -.title -{ - position:relative; - top:0px; - font: bold 19px arial; - color: #e9e9e9; -} -.filter-header -{ - height: 25px; - text-align: center; - vertical-align: middle; -} -.filter-applied -{ - position:relative; - top:5px; -} -.filter-circle -{ - width: 18px; - height: 18px; - background:url('circle.png') center center no-repeat; -} -.filter-text -{ - padding: 0 0 0 5px; - font-size: 11px; -} -.filter-lines -{ - float: right; - width: 25px; - height: 25px; - padding: 0 25px 0 0; - background:url('lines-h.png') center center no-repeat; -} -.sort-block -{ - height: 40px; - text-align: center; -} -.sort-block-inner -{ - position:relative; - top:7px; -} -.sort-block-inner-txt -{ - float: left; - width: 75px; - height: 26px; - padding-top: 12px; -} - -.sort-buttons -{ - text-align: center; - font: bold 10px arial; - float: right; - padding: 0 5px 0 0; -} - -.active -{ - color: #e9e9e9; -} - -.inactive -{ - color: #333; -} - -.item -{ - height: 91px; -} - -.slider -{ - -} - -.slider-item -{ - background: url('actionsBg.png') left center repeat-x; - width: 20%; - height: 100%; - float: left; - text-align: center; -} -.slider-image -{ - position: relative; - top: 20px; -} - -.slider-item-text -{ - position: relative; - top: 30px; -} - -.lines-v -{ - height: 91px; - width: 20px; - background: url('lines-v.png') center center no-repeat; - float: left; -} -.arrow -{ - height: 91px; - width: 20px; - background: url('arrow.png') center center no-repeat; - float: right; -} -.item-image -{ - padding: 10px 0 0 10px; - float: left; -} -.item-info -{ - float: left; - text-align: left; - padding: 10px 0 0 20px; -} -.item-title -{ - padding: 0 0 10px 0; -} - -.item-rate span -{ - position: relative; - top: -2px; - left: 0px; - font: bold 12px arial; - color: #333; -} - -.item-rate -{ - float: left; - display: block; -} - -.bottom-buttons -{ - height: 50px; - width: 320px; - clear: left; - margin-top: -30px; -} -.bottom-button -{ - width: 64px; - height: 26px; - margin-top: 5px; - float: left; -} -.bottom-button p -{ - position:relative; - top:20px; - text-align: center; - font: bold 11px arial; - color: #e9e9e9; -} + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @package base_default + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +body { margin: 0; padding: 0 } + +.main-block +{ + width: 320px; + height: 450px; +} +.header-sign-1 +{ + font: bold 12px arial; + color: #e9e9e9; + float: left; + padding: 5px 0 3px 3px; + height: 10px; +} +.top-header +{ + height: 20px +} + +.battery +{ + height: 16px; + width: 25px; + float: right; + margin: 0px 5px 5px 13px; +} + +.volume +{ + height: 16px; + width: 25px; + float: left; +} + +.antenna +{ + height: 16px; + width: 18px; + float: left; + padding-left: 20px; +} +.time +{ + width: 50%; + position:relative; + top:3px; + text-align: center; + font: bold 12px arial; + color: #e9e9e9; + float: left; +} + +.main-header +{ + width: 100%; + height: 50px; + color: #f3f3f3; + text-align: center; +} +.main-header-text +{ + +} + +.clearB +{ + clear: both; + height: 1px; +} +.btn-l +{ + position:relative; + left: 0px; + top:7px; + width: 70px; + height: 32px; + text-align: center; + float: left; + margin: 0 0 0 15px; + background:url('btn-l.png') center center no-repeat; +} + +.btn-r +{ + position:relative; + right: 0px; + top:7px; + width: 72px; + height: 32px; + text-align: center; + float: right; + margin: 0 20px 0 0; + background:url('btn-r.png') center center no-repeat; +} +.main-header-text +{ + width: 110px; + height: 32px; + text-align: center; + float: left; +} + + + +.btn-txt +{ + position:relative; + top:8px; +} +.title +{ + position:relative; + top:0px; + font: bold 19px arial; + color: #e9e9e9; +} +.filter-header +{ + height: 25px; + text-align: center; + vertical-align: middle; +} +.filter-applied +{ + position:relative; + top:5px; +} +.filter-circle +{ + width: 18px; + height: 18px; + background:url('circle.png') center center no-repeat; +} +.filter-text +{ + padding: 0 0 0 5px; + font-size: 11px; +} +.filter-lines +{ + float: right; + width: 25px; + height: 25px; + padding: 0 25px 0 0; + background:url('lines-h.png') center center no-repeat; +} +.sort-block +{ + height: 40px; + text-align: center; +} +.sort-block-inner +{ + position:relative; + top:7px; +} +.sort-block-inner-txt +{ + float: left; + width: 75px; + height: 26px; + padding-top: 12px; +} + +.sort-buttons +{ + text-align: center; + font: bold 10px arial; + float: right; + padding: 0 5px 0 0; +} + +.active +{ + color: #e9e9e9; +} + +.inactive +{ + color: #333; +} + +.item +{ + height: 91px; +} + +.slider +{ + +} + +.slider-item +{ + background: url('actionsBg.png') left center repeat-x; + width: 20%; + height: 100%; + float: left; + text-align: center; +} +.slider-image +{ + position: relative; + top: 20px; +} + +.slider-item-text +{ + position: relative; + top: 30px; +} + +.lines-v +{ + height: 91px; + width: 20px; + background: url('lines-v.png') center center no-repeat; + float: left; +} +.arrow +{ + height: 91px; + width: 20px; + background: url('arrow.png') center center no-repeat; + float: right; +} +.item-image +{ + padding: 10px 0 0 10px; + float: left; +} +.item-info +{ + float: left; + text-align: left; + padding: 10px 0 0 20px; +} +.item-title +{ + padding: 0 0 10px 0; +} + +.item-rate span +{ + position: relative; + top: -2px; + left: 0px; + font: bold 12px arial; + color: #333; +} + +.item-rate +{ + float: left; + display: block; +} + +.bottom-buttons +{ + height: 50px; + width: 320px; + clear: left; + margin-top: -30px; +} +.bottom-button +{ + width: 64px; + height: 26px; + margin-top: 5px; + float: left; +} +.bottom-button p +{ + position:relative; + top:20px; + text-align: center; + font: bold 11px arial; + color: #e9e9e9; +} diff --git a/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-home.css b/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-home.css index 60c8ea9698a2c..876955acd7cd5 100644 --- a/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-home.css +++ b/app/code/core/Mage/XmlConnect/view/adminhtml/images/mobile_preview/mobile-home.css @@ -1,4 +1,4 @@ -/** +/** * Magento * * NOTICE OF LICENSE @@ -15,191 +15,191 @@ * * Do not edit or add to this file if you wish to upgrade Magento to newer * versions in the future. If you wish to customize Magento for your - * needs please refer to http://www.magentocommerce.com for more information. - * - * @category design - * @package base_default - * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) - * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) - */ -body { margin: 0; padding: 0 } - -.main-block -{ - width: 320px; - height: 490px; -} -.header-sign-1 -{ - position:relative; - left:6px; - top:3px; - font: bold 12px arial; - color: #e9e9e9; - float: left; - vertical-align: baseline; - height: 16px; -} -.top-header -{ - height: 20px -} - -.battery -{ - height: 16px; - width: 25px; - float: right; - margin-right: 5px; -} - -.volume -{ - height: 16px; - width: 23px; - float: left; -} - -.antenna -{ - height: 16px; - width: 18px; - float: left; - padding-left: 10px; -} -.time -{ - width: 50%; - position:relative; - top:3px; - text-align: center; - font: bold 12px arial; - color: #e9e9e9; - float: left; -} - -.main-header -{ - height: 44px; - text-align: center; -} -.clearB -{ - clear: both; - height: 1px; -} - -.info -{ - position: relative; - top: 10px; - left: 10px; - float: left; -} -.logo-small -{ - display: inline; - position: relative; - top: 10px; -} - -.login-btn -{ - float: right; - height: 28px; - font: bold 13px arial; - color: #e9e9e9; - padding: 7px 15px 0 0; - -} -.login-body -{ - float: left; - width: 50px; - height: 100%; - background:url('../img/login-btn.png') center center repeat-x; -} -.login-body span -{ - position: relative; - top: 5px; - left: 0px; -} -.login-left -{ - float: left; - height: 100%; - font: bold 3px arial; - background:url('../img/login-btn-left.png') center center no-repeat; -} -.login-right -{ - float: left; - height: 100%; - font: bold 3px arial; - background:url('../img/login-btn-right.png') center center no-repeat; -} -.title -{ - position:relative; - top:10px; - font: bold 19px arial; - color: #e9e9e9; -} -.main-header-text -{ - width: 10px; -} - -.big-logo -{ - text-align: center; - padding: 5px 0 0 0; -} -.catalog -{ - height: 210px; -} -.item -{ - float: left; - padding: 5px 0 0 5px; - text-align: center; - margin: 25px 7px 0 7px; - width: 82px; - height: 108; -} -.item-image -{ - padding: 10px 0 10px 0; - text-align: center; -} - -.item-text -{ - height: 18px; - width: 82px; - text-align: center; -} -.bottom-buttons -{ - height: 50px; - position: relative; - bottom: 50px; - left: 0px; -} -.bottom-button -{ - width: 64px; - height: 26px; - margin-top: 5px; - float: left; -} -.bottom-button p -{ - position:relative; - top:20px; - text-align: center; - font: bold 11px arial; - color: #e9e9e9; + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @package base_default + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +body { margin: 0; padding: 0 } + +.main-block +{ + width: 320px; + height: 490px; +} +.header-sign-1 +{ + position:relative; + left:6px; + top:3px; + font: bold 12px arial; + color: #e9e9e9; + float: left; + vertical-align: baseline; + height: 16px; +} +.top-header +{ + height: 20px +} + +.battery +{ + height: 16px; + width: 25px; + float: right; + margin-right: 5px; +} + +.volume +{ + height: 16px; + width: 23px; + float: left; +} + +.antenna +{ + height: 16px; + width: 18px; + float: left; + padding-left: 10px; +} +.time +{ + width: 50%; + position:relative; + top:3px; + text-align: center; + font: bold 12px arial; + color: #e9e9e9; + float: left; +} + +.main-header +{ + height: 44px; + text-align: center; +} +.clearB +{ + clear: both; + height: 1px; +} + +.info +{ + position: relative; + top: 10px; + left: 10px; + float: left; +} +.logo-small +{ + display: inline; + position: relative; + top: 10px; +} + +.login-btn +{ + float: right; + height: 28px; + font: bold 13px arial; + color: #e9e9e9; + padding: 7px 15px 0 0; + +} +.login-body +{ + float: left; + width: 50px; + height: 100%; + background:url('../img/login-btn.png') center center repeat-x; +} +.login-body span +{ + position: relative; + top: 5px; + left: 0px; +} +.login-left +{ + float: left; + height: 100%; + font: bold 3px arial; + background:url('../img/login-btn-left.png') center center no-repeat; +} +.login-right +{ + float: left; + height: 100%; + font: bold 3px arial; + background:url('../img/login-btn-right.png') center center no-repeat; +} +.title +{ + position:relative; + top:10px; + font: bold 19px arial; + color: #e9e9e9; +} +.main-header-text +{ + width: 10px; +} + +.big-logo +{ + text-align: center; + padding: 5px 0 0 0; +} +.catalog +{ + height: 210px; +} +.item +{ + float: left; + padding: 5px 0 0 5px; + text-align: center; + margin: 25px 7px 0 7px; + width: 82px; + height: 108; +} +.item-image +{ + padding: 10px 0 10px 0; + text-align: center; +} + +.item-text +{ + height: 18px; + width: 82px; + text-align: center; +} +.bottom-buttons +{ + height: 50px; + position: relative; + bottom: 50px; + left: 0px; +} +.bottom-button +{ + width: 64px; + height: 26px; + margin-top: 5px; + float: left; +} +.bottom-button p +{ + position:relative; + top:20px; + text-align: center; + font: bold 11px arial; + color: #e9e9e9; } \ No newline at end of file diff --git a/app/design/adminhtml/default/default/skin/default/boxes.css b/app/design/adminhtml/default/default/skin/default/boxes.css index 1b451683ce526..2506b34903b5d 100644 --- a/app/design/adminhtml/default/default/skin/default/boxes.css +++ b/app/design/adminhtml/default/default/skin/default/boxes.css @@ -75,7 +75,8 @@ text-align:center; z-index:501; } -#loading-mask { +#loading-mask, +.loading-mask { background:background:url(images/blank.gif) repeat; position:absolute; color:#d85909; @@ -86,7 +87,8 @@ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; /* IE8 */ z-index:500; } -#loading-mask .loader { +#loading-mask .loader, +.loading-mask .loader { position:fixed; top:45%; left:50%; @@ -100,7 +102,16 @@ text-align:center; z-index:1000; } - +.loading-mask .loader { + position:absolute; + } +.loading-mask { + *filter:alpha(opacity=60); + -moz-opacity:.6; + opacity:.6; + -webkit-opacity:.6; + background: #ffffff; + } #message-popup-window-mask { position:absolute; top:0; right:0; bottom:0; left:0; width:100%; height:100%; z-index:980; background-color:#efefef; opacity:.5; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";/*IE8*/ } .message-popup { position:absolute; z-index:990; width:407px; top:-9999em; left:50%; margin:0 0 0 -203px; background:#f3bf8f; padding:0 4px 4px; } .message-popup.show { top:280px; } @@ -419,7 +430,7 @@ span.delete-file { padding:0; } .content-header .form-buttons button { margin-bottom:3px; } .sub-btn-set { border:1px solid #ddd; border-width:0 1px; background:url(images/sub_button_bg.gif) repeat; padding:3px 10px; text-align:right; } button, -.form-button { border-width:1px; border-style:solid; border-color:#ed6502 #a04300 #a04300 #ed6502; padding:0 7px 1px 7px; background:#ffac47 url(Mage_Adminhtml::images/btn_bg.gif) repeat-x 0 100%; color:#fff; font:bold 12px arial, helvetica, sans-serif; cursor:pointer; text-align:center !important; white-space:nowrap; } +.form-button { vertical-align:middle; border-width:1px; border-style:solid; border-color:#ed6502 #a04300 #a04300 #ed6502; padding:0 7px 1px 7px; background:#ffac47 url(Mage_Adminhtml::images/btn_bg.gif) repeat-x 0 100%; color:#fff; font:bold 12px arial, helvetica, sans-serif; cursor:pointer; text-align:center !important; white-space:nowrap; } button:hover { background:#f77c16 url(Mage_Adminhtml::images/btn_over_bg.gif) repeat-x 0 0; } button:active { background:#f77c16 url(Mage_Adminhtml::images/btn_on_bg.gif) repeat-x 0 0; } button span { line-height:1.35em; background-repeat:no-repeat; background-position:0 50%; } @@ -476,6 +487,206 @@ button.icon-btn span { text-indent:-999em; display:block; width:16px; padding:0; .buttons-set button { margin-right:5px; } +/* Buttons group */ + +.btn-add { padding-left:6px; } +.btn-add span { + background-image:url(images/add_btn_icon.gif); + padding-left:20px; +} +div.button { + border-width:1px; + border-style:solid; + order-color:#ed6502 #a04300 #a04300 #ed6502; + padding:1px 7px 3px 7px; + background:#ffac47 url(Mage_Adminhtml::images/btn_bg.gif) repeat-x 0 100%; + color:#fff; + font:bold 12px arial, helvetica, sans-serif; + cursor:pointer; + text-align:center !important; + white-space:nowrap; +} +div.button:hover { + background:#f77c16 url(Mage_Adminhtml::images/btn_over_bg.gif) repeat-x 0 0; +} +div.button:active { + background:#f77c16 url(Mage_Adminhtml::images/btn_on_bg.gif) repeat-x 0 0; +} +div.button span { + line-height:1.25em; + background-repeat:no-repeat; + background-position:0 50%; +} +div.button { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.buttons-group { + position: relative; + display:inline-block; + vertical-align:middle; +} +.buttons-group:before, +.buttons-group:after { + display: table; + content: ""; +} +.buttons-group:after { + clear: both; +} +.buttons-group > .button { + position:relative; + float:left; + margin-left:-1px; + border-radius:0; +} +.buttons-group > .button:first-child { + margin-left:0; +} +.buttons-group > .button:last-child, +.buttons-group > [data-toggle="dropdown"] { +} + +/* Button toggle (with dropdown menu) */ +.dropdown-menu { + position:absolute; + display:none; + list-style:none; + margin:1px 0 0 0; + padding:0; + right:0; + top:100%; + min-width: 100%; + border-width:1px; border-style:solid; border-color:#ed6502 #a04300 #a04300 #ed6502; + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + white-space: nowrap; +} +.dropdown-menu li { + background:#ffac47; + background:rgba(255, 172, 71, .95); + text-align: left;color:#fff; font:bold 12px arial, helvetica, sans-serif; cursor:pointer; + padding:0; + position: relative; + z-index: 1; +} +.dropdown-menu li .item { + display: block; + padding:4px 25px 4px 8px; +} +.dropdown-menu li > .tooltip { + position: absolute; top:5px; right:3px; +} +.dropdown-menu li.selected { +} +.dropdown-menu li:hover { + background:#f77c16; + z-index: 2; +} +.dropdown-menu li:active { + background:#f77c16; +} +.dropdown-menu li:last-child { + +} +.dropdown-menu-top { + margin:0 0 3px 0; + top:auto; + bottom:100%; +} +.buttons-group.active { + z-index:20; +} +.buttons-group.active .dropdown-menu { + display:block; +} +.btn-toggle span { + width:6px; overflow: hidden; display: block; +} +.active .btn-toggle { + background:#f77c16 url(Mage_Adminhtml::images/btn_on_bg.gif) repeat-x 0 0; +} +.btn-toggle span:before { + display: inline-block; + content:''; + margin-left:100px; + /*position: absolute;*/ + text-indent: 0; + margin-left:0; + width: 0; + height: 0; + border-right:3px solid transparent; + border-left:3px solid transparent; + border-top: 6px solid #fff; +} + +/* ============================================================================= + Tooltip + ========================================================================== */ + +/* Styles for simple "css" tooltip */ +.tooltip { + display:inline-block; + vertical-align:middle; + line-height:1.1; +} +.tooltip > .help { + width:15px; + height: 15px; + line-height: 15px; + text-indent: -999em; + overflow: hidden; + display: block; + background: url(images/icon-tooltip.png) no-repeat 0 0; + position: relative; z-index: 111; + cursor:help; +} +.tooltip-content { + display:none; + position:absolute; + max-width:200px; + margin-top:5px; + margin-left:-18px; + padding:8px; + border-radius:3px; + background:#000; + background:rgba(0,0,0,.8); + color:#fff; + text-shadow:none; + z-index:20; + font-weight: normal; + font-size: 11px; +} +.tooltip-content:before { + content:''; + position:absolute; + width:0; + height:0; + top:-5px; + left:20px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000; + opacity:.8; +} +.tooltip:hover { + z-index:20; +} +.tooltip:hover > .help { + background-position: 0 -15px; +} +.tooltip > .help:hover + .tooltip-content { + display:block; +} + + /* SWITCHER *******************************************************************************/ .switcher { margin-bottom:10px; border:1px solid #cddddd; background:#e7efef; padding:10px; } diff --git a/app/design/adminhtml/default/default/skin/default/images/icon-tooltip.png b/app/design/adminhtml/default/default/skin/default/images/icon-tooltip.png new file mode 100644 index 0000000000000..c9b1ce706b28e Binary files /dev/null and b/app/design/adminhtml/default/default/skin/default/images/icon-tooltip.png differ diff --git a/dev/shell/cron.sh b/dev/shell/cron.sh old mode 100644 new mode 100755 diff --git a/dev/tests/integration/framework/Magento/Test/Annotation/AppIsolation.php b/dev/tests/integration/framework/Magento/Test/Annotation/AppIsolation.php index 4c1e1197feb73..ad15d33069fe7 100644 --- a/dev/tests/integration/framework/Magento/Test/Annotation/AppIsolation.php +++ b/dev/tests/integration/framework/Magento/Test/Annotation/AppIsolation.php @@ -101,14 +101,17 @@ public function endTest(PHPUnit_Framework_TestCase $test) 'Invalid "@magentoAppIsolation" annotation, can be "enabled" or "disabled" only.' ); } - $isIsolationEnabled = ($isolation === array('enabled')); + $isIsolationEnabled = $isolation === array('enabled'); } else { /* Controller tests should be isolated by default */ - $isIsolationEnabled = ($test instanceof Magento_Test_TestCase_ControllerAbstract); + $isIsolationEnabled = $test instanceof Magento_Test_TestCase_ControllerAbstract; } if ($isIsolationEnabled) { $this->_isolateApp(); } + + /* Forced garbage collection to avoid process non-zero exit code (exec returned: 139) caused by PHP bug */ + gc_collect_cycles(); } } diff --git a/dev/tests/integration/framework/tests/unit/phpunit.xml.dist b/dev/tests/integration/framework/tests/unit/phpunit.xml.dist index 0834fa53c4dc6..7008216796ebf 100644 --- a/dev/tests/integration/framework/tests/unit/phpunit.xml.dist +++ b/dev/tests/integration/framework/tests/unit/phpunit.xml.dist @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- -/** +<?xml version="1.0" encoding="UTF-8"?> +<!-- +/** * Magento * * NOTICE OF LICENSE @@ -17,23 +17,23 @@ * * Do not edit or add to this file if you wish to upgrade Magento to newer * versions in the future. If you wish to customize Magento for your - * needs please refer to http://www.magentocommerce.com for more information. - * - * @category Magento - * @package Magento - * @subpackage integration_tests - * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) - * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) - */ ---> -<phpunit bootstrap="./framework/bootstrap.php"> - <!-- Test suites definition --> - <testsuites> - <testsuite name="Unit Tests for Integration Tests Framework"> - <directory suffix="Test.php">testsuite</directory> - </testsuite> - </testsuites> - <php> - <ini name="date.timezone" value="America/Los_Angeles"/> - </php> -</phpunit> + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Magento + * @package Magento + * @subpackage integration_tests + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +--> +<phpunit bootstrap="./framework/bootstrap.php"> + <!-- Test suites definition --> + <testsuites> + <testsuite name="Unit Tests for Integration Tests Framework"> + <directory suffix="Test.php">testsuite</directory> + </testsuite> + </testsuites> + <php> + <ini name="date.timezone" value="America/Los_Angeles"/> + </php> +</phpunit> diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php index 43e061da66443..33c88e03b0eff 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php @@ -42,6 +42,6 @@ public function testPrepareLayout() $block = new Mage_Adminhtml_Block_Catalog_Product_Edit_Tabs; $layout->addBlock($block); $this->assertArrayHasKey(0, $block->getTabsIds()); - $this->assertNotEmpty($layout->getBlock('adminhtml.catalog.product.edit.tab.attributes')); + $this->assertNotEmpty($layout->getBlock('catalog_product_edit_tabs')); } } diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/Edit/Tab/View/AccordionTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/Edit/Tab/View/AccordionTest.php index 9a527e327edaf..683ee21193b5e 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/Edit/Tab/View/AccordionTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/Edit/Tab/View/AccordionTest.php @@ -37,7 +37,7 @@ protected function setUp() $customer = new Mage_Customer_Model_Customer; $customer->load(1); Mage::register('current_customer', $customer); - $layout = new Mage_Core_Model_Layout(array('area' => 'adminhtml')); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); $this->_block = $layout->createBlock('Mage_Adminhtml_Block_Customer_Edit_Tab_View_Accordion'); } diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/OnlineTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/OnlineTest.php index d74d32cf936cf..5ffa6b55968e6 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/OnlineTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Customer/OnlineTest.php @@ -32,7 +32,7 @@ class Mage_Adminhtml_Block_Customer_OnlineTest extends PHPUnit_Framework_TestCas */ public function testGetFilterFormHtml() { - $layout = new Mage_Core_Model_Layout(array('area' => 'adminhtml')); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); $block = $layout->createBlock('Mage_Adminhtml_Block_Customer_Online', 'block'); $this->assertNotEmpty($block->getFilterFormHtml()); } diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/EditTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/EditTest.php index be3dbe941d4c1..afc161e8f8ce8 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/EditTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Category/EditTest.php @@ -40,7 +40,7 @@ class Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_EditTest extends PHPUnit_ */ public function testPrepareLayout($blockAttributes, $expected) { - $layout = Mage::app()->getLayout(); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); /** @var $block Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Edit */ $block = $layout->createBlock('Mage_Adminhtml_Block_Urlrewrite_Catalog_Category_Edit', '', $blockAttributes); diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php index 7f4eaf0ed49b3..614cbe1af47ae 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php @@ -58,6 +58,7 @@ protected function _getFormInstance($args = array()) * @param string $idPath * @param string $requestPath * @param string $targetPath + * @magentoConfigFixture current_store general/single_store_mode/enabled 1 */ public function testFormPostInitNew($productData, $categoryData, $action, $idPath, $requestPath, $targetPath) { diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/EditTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/EditTest.php index e2b97148f5131..c053c3d8b71c4 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/EditTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Catalog/Product/EditTest.php @@ -40,7 +40,7 @@ class Mage_Adminhtml_Block_Urlrewrite_Catalog_Product_EditTest extends PHPUnit_F */ public function testPrepareLayout($blockAttributes, $expected) { - $layout = Mage::app()->getLayout(); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); /** @var $block Mage_Adminhtml_Block_Urlrewrite_Catalog_Product_Edit */ $block = $layout->createBlock('Mage_Adminhtml_Block_Urlrewrite_Catalog_Product_Edit', '', $blockAttributes); diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php index 44ca8901f0f8d..7acdcb4d33d72 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php @@ -57,6 +57,7 @@ protected function _getFormInstance($args = array()) * @param string $idPath * @param string $requestPath * @param string $targetPath + * @magentoConfigFixture current_store general/single_store_mode/enabled 1 */ public function testFormPostInit($cmsPageData, $action, $idPath, $requestPath, $targetPath) { diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/EditTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/EditTest.php index baa9665bf2ab3..fa32dcc63158e 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/EditTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Cms/Page/EditTest.php @@ -40,7 +40,7 @@ class Mage_Adminhtml_Block_Urlrewrite_Cms_Page_EditTest extends PHPUnit_Framewor */ public function testPrepareLayout($blockAttributes, $expected) { - $layout = Mage::app()->getLayout(); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); /** @var $block Mage_Adminhtml_Block_Urlrewrite_Cms_Page_Edit */ $block = $layout->createBlock('Mage_Adminhtml_Block_Urlrewrite_Cms_Page_Edit', '', $blockAttributes); diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Edit/FormTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Edit/FormTest.php index c93887a5a4ec8..cf8fecff4cd1e 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/Edit/FormTest.php @@ -100,6 +100,8 @@ public function testSessionRestore() /** * Test store element is hidden when only one store available + * + * @magentoConfigFixture current_store general/single_store_mode/enabled 1 */ public function testStoreElementSingleStore() { diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/EditTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/EditTest.php index e57a1cf90898f..919664c17dc90 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/EditTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Urlrewrite/EditTest.php @@ -40,7 +40,7 @@ class Mage_Adminhtml_Block_Urlrewrite_EditTest extends PHPUnit_Framework_TestCas */ public function testPrepareLayout($blockAttributes, $expected) { - $layout = Mage::app()->getLayout(); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); /** @var $block Mage_Adminhtml_Block_Urlrewrite_Edit */ $block = $layout->createBlock('Mage_Adminhtml_Block_Urlrewrite_Edit', '', $blockAttributes); diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Widget/ContainerTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Widget/ContainerTest.php index add643c39393b..cc6316c8a15d9 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Widget/ContainerTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/Block/Widget/ContainerTest.php @@ -68,7 +68,7 @@ public function testUpdateButton() */ protected function _buildBlock($titles) { - $layout = new Mage_Core_Model_Layout; + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); $block = new Mage_Adminhtml_Block_Widget_Container; foreach ($titles as $id => $title) { $block->addButton($id, array('title' => $title)); diff --git a/dev/tests/integration/testsuite/Mage/Adminhtml/controllers/Customer/GroupControllerTest.php b/dev/tests/integration/testsuite/Mage/Adminhtml/controllers/Customer/GroupControllerTest.php index 078feb1900ed2..352278d88e672 100644 --- a/dev/tests/integration/testsuite/Mage/Adminhtml/controllers/Customer/GroupControllerTest.php +++ b/dev/tests/integration/testsuite/Mage/Adminhtml/controllers/Customer/GroupControllerTest.php @@ -31,6 +31,9 @@ public function testNewAction() { $this->dispatch('backend/admin/customer_group/new'); $responseBody = $this->getResponse()->getBody(); - $this->assertStringMatchesFormat('%a<div class="content-header">%ANew Customer Group%a', $responseBody); + $this->assertStringMatchesFormat( + '%a<div class="content-header" data-ui-id="group-content-header" >%ANew Customer Group%a', + $responseBody + ); } } diff --git a/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php b/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php index fe8e6b24fc0c7..79ac3b551b7db 100644 --- a/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php +++ b/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php @@ -33,8 +33,8 @@ class Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Search_ */ public function testToHtmlHasOnClick() { - Mage::getDesign()->setArea('adminhtml'); - $layout = new Mage_Core_Model_Layout(array('area' => 'adminhtml')); + Mage::getDesign()->setArea(Mage_Core_Model_App_Area::AREA_ADMINHTML); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); $block = $layout->createBlock( 'Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Search_Grid', 'block'); diff --git a/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php b/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php index decd1220aaf45..22f379ad99889 100644 --- a/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php +++ b/dev/tests/integration/testsuite/Mage/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php @@ -33,8 +33,8 @@ class Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_SearchT */ public function testToHtmlHasIndex() { - Mage::getDesign()->setArea('adminhtml'); - $layout = new Mage_Core_Model_Layout(array('area' => 'adminhtml')); + Mage::getDesign()->setArea(Mage_Core_Model_App_Area::AREA_ADMINHTML); + $layout = new Mage_Core_Model_Layout(array('area' => Mage_Core_Model_App_Area::AREA_ADMINHTML)); $block = $layout->createBlock( 'Mage_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Search', 'block'); diff --git a/dev/tests/integration/testsuite/Mage/Catalog/Model/Category/CategoryImageTest.php b/dev/tests/integration/testsuite/Mage/Catalog/Model/Category/CategoryImageTest.php index 7626e1690d80b..7a52c7f88438b 100644 --- a/dev/tests/integration/testsuite/Mage/Catalog/Model/Category/CategoryImageTest.php +++ b/dev/tests/integration/testsuite/Mage/Catalog/Model/Category/CategoryImageTest.php @@ -63,7 +63,15 @@ public static function tearDownAfterClass() Mage::getConfig()->setNode('global/log/core/writer_model', self::$_oldWriterModel); self::$_oldWriterModel = null; - Stub_Mage_Catalog_Model_CategoryTest_Zend_Log_Writer_Stream::$exceptions = array(); + /** + * @TODO: refactor this test + * Changing store configuration in such a way totally breaks the idea of application isolation. + * Class declaration in data fixture file is dumb too. + * Added a quick fix to be able run separate tests with "phpunit --filter testMethod" + */ + if (class_exists('Stub_Mage_Catalog_Model_CategoryTest_Zend_Log_Writer_Stream', false)) { + Stub_Mage_Catalog_Model_CategoryTest_Zend_Log_Writer_Stream::$exceptions = array(); + } parent::tearDownAfterClass(); } diff --git a/dev/tests/integration/testsuite/Mage/Catalog/Model/Product/Attribute/Backend/SkuTest.php b/dev/tests/integration/testsuite/Mage/Catalog/Model/Product/Attribute/Backend/SkuTest.php new file mode 100644 index 0000000000000..536dacebc576d --- /dev/null +++ b/dev/tests/integration/testsuite/Mage/Catalog/Model/Product/Attribute/Backend/SkuTest.php @@ -0,0 +1,86 @@ +<?php +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Open Software License (OSL 3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/osl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Magento + * @package Magento_Catalog + * @subpackage integration_tests + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) + */ + +/** + * Test class for Mage_Catalog_Model_Product_Attribute_Backend_Sku. + */ +class Mage_Catalog_Model_Product_Attribute_Backend_SkuTest extends PHPUnit_Framework_TestCase +{ + /** + * @magentoDataFixture Mage/Catalog/_files/product_simple.php + */ + public function testGenerateUniqueSkuExistingProduct() + { + $product = new Mage_Catalog_Model_Product(); + $product->load(1); + $product->setId(null); + $this->assertEquals('simple', $product->getSku()); + $product->getResource()->getAttribute('sku')->getBackend()->beforeSave($product); + $this->assertEquals('simple-1', $product->getSku()); + } + + /** + * @param $product Mage_Catalog_Model_Product + * @dataProvider uniqueSkuDataProvider + */ + public function testGenerateUniqueSkuNotExistingProduct($product) + { + $this->assertEquals('simple', $product->getSku()); + $product->getResource()->getAttribute('sku')->getBackend()->beforeSave($product); + $this->assertEquals('simple', $product->getSku()); + } + + /** + * Returns simple product + * + * @return array + */ + public function uniqueSkuDataProvider() + { + $product = new Mage_Catalog_Model_Product(); + $product->setTypeId(Mage_Catalog_Model_Product_Type::TYPE_SIMPLE) + ->setId(1) + ->setAttributeSetId(4) + ->setWebsiteIds(array(1)) + ->setName('Simple Product') + ->setSku('simple') + ->setPrice(10) + ->setDescription('Description with <b>html tag</b>') + ->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH) + ->setStatus(Mage_Catalog_Model_Product_Status::STATUS_ENABLED) + ->setCategoryIds(array(2)) + ->setStockData( + array( + 'use_config_manage_stock' => 1, + 'qty' => 100, + 'is_qty_decimal' => 0, + 'is_in_stock' => 1, + ) + ); + return array(array($product)); + } +} diff --git a/dev/tests/integration/testsuite/Mage/Catalog/Model/ProductTest.php b/dev/tests/integration/testsuite/Mage/Catalog/Model/ProductTest.php index 6201baed29121..3c947f55d520c 100644 --- a/dev/tests/integration/testsuite/Mage/Catalog/Model/ProductTest.php +++ b/dev/tests/integration/testsuite/Mage/Catalog/Model/ProductTest.php @@ -119,6 +119,14 @@ public function testDuplicate() } } + public function testDuplicateSkuGeneration() + { + $this->_model->load(1); + $this->assertEquals('simple', $this->_model->getSku()); + $duplicated = $this->_model->duplicate(); + $this->assertEquals('simple-1', $duplicated->getSku()); + } + /** * Delete model * diff --git a/dev/tests/integration/testsuite/Mage/Catalog/_files/product_simple_duplicated.php b/dev/tests/integration/testsuite/Mage/Catalog/_files/product_simple_duplicated.php new file mode 100644 index 0000000000000..f3490632e6cd7 --- /dev/null +++ b/dev/tests/integration/testsuite/Mage/Catalog/_files/product_simple_duplicated.php @@ -0,0 +1,48 @@ +<?php +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Open Software License (OSL 3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/osl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Magento + * @package Mage_Catalog + * @subpackage integration_tests + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) + */ + +$product = new Mage_Catalog_Model_Product(); +$product->setTypeId(Mage_Catalog_Model_Product_Type::TYPE_SIMPLE) + ->setId(2) + ->setAttributeSetId(4) + ->setWebsiteIds(array(1)) + ->setName('Simple Product') + ->setSku('simple-1') + ->setPrice(10) + ->setDescription('Description with <b>html tag</b>') + ->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH) + ->setStatus(Mage_Catalog_Model_Product_Status::STATUS_ENABLED) + ->setCategoryIds(array(2)) + ->setStockData( + array( + 'use_config_manage_stock' => 1, + 'qty' => 100, + 'is_qty_decimal' => 0, + 'is_in_stock' => 1, + ) + ) + ->save(); diff --git a/dev/tests/integration/testsuite/Mage/Core/Block/AbstractTest.php b/dev/tests/integration/testsuite/Mage/Core/Block/AbstractTest.php index 169671ad5de7d..8a2e1705181a9 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Block/AbstractTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Block/AbstractTest.php @@ -303,7 +303,7 @@ public function testInsertBlockWithoutName() $parent = $this->_createBlockWithLayout('parent', 'parent'); $block = $this->_createBlockWithLayout(''); $parent->setChild('', $block); - $this->assertContains('ANONYMOUS_0', $parent->getChildNames()); + $this->assertContains('abstractmock', $parent->getChildNames()); } public function testInsertBlockWithAlias() diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Layout/MergeTest.php b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/MergeTest.php new file mode 100644 index 0000000000000..547e684bb2ec8 --- /dev/null +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/MergeTest.php @@ -0,0 +1,398 @@ +<?php +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Open Software License (OSL 3.0) + * that is bundled with this package in the file LICENSE.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/osl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Magento + * @package Mage_Core + * @subpackage integration_tests + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) + */ + +class Mage_Core_Model_Layout_MergeTest extends PHPUnit_Framework_TestCase +{ + /** + * @var Mage_Core_Model_Layout_Merge + */ + protected $_model; + + protected function setUp() + { + /* Point application to predefined layout fixtures */ + Mage::getConfig()->setOptions(array( + 'design_dir' => dirname(dirname(__FILE__)) . '/_files/design', + )); + Mage::getDesign()->setDesignTheme('test/default/default'); + /* Disable loading and saving layout cache */ + Mage::app()->getCacheInstance()->banUse('layout'); + + $this->_model = new Mage_Core_Model_Layout_Merge(array( + 'area' => 'frontend', + 'package' => 'test', + 'theme' => 'default', + )); + } + + protected function tearDown() + { + $this->_model = null; + } + + public function testAddUpdate() + { + $this->assertEmpty($this->_model->asArray()); + $this->assertEmpty($this->_model->asString()); + $this->_model->addUpdate('test'); + $this->assertEquals(array('test'), $this->_model->asArray()); + $this->assertEquals('test', $this->_model->asString()); + } + + public function testAddHandle() + { + $this->assertEmpty($this->_model->getHandles()); + $this->_model->addHandle('test'); + $this->assertEquals(array('test'), $this->_model->getHandles()); + } + + public function testRemoveHandle() + { + $this->_model->addHandle('test'); + $this->_model->removeHandle('test'); + $this->assertEmpty($this->_model->getHandles()); + } + + public function testAddPageHandles() + { + /* add a non-page handle to verify that it won't be affected during page handles manipulation */ + $nonPageHandles = array('non_page_handle'); + $this->_model->addHandle($nonPageHandles); + + $this->assertFalse($this->_model->addPageHandles(array('non_existing_handle'))); + $this->assertEmpty($this->_model->getPageHandles()); + $this->assertEquals($nonPageHandles, $this->_model->getHandles()); + + /* test that only the first existing handle is taken into account */ + $handlesToTry = array('catalog_product_view_type_simple', 'catalog_category_view'); + $expectedPageHandles = array('default', 'catalog_product_view', 'catalog_product_view_type_simple'); + $this->assertTrue($this->_model->addPageHandles($handlesToTry)); + $this->assertEquals($expectedPageHandles, $this->_model->getPageHandles()); + $this->assertEquals(array_merge($nonPageHandles, $expectedPageHandles), $this->_model->getHandles()); + + /* test that new handles override the previous ones */ + $expectedPageHandles = array('default', 'catalog_category_view', 'catalog_category_view_type_default'); + $this->assertTrue($this->_model->addPageHandles(array('catalog_category_view_type_default'))); + $this->assertEquals($expectedPageHandles, $this->_model->getPageHandles()); + $this->assertEquals(array_merge($nonPageHandles, $expectedPageHandles), $this->_model->getHandles()); + } + + /** + * @param string $inputPageHandle + * @param bool $isPageTypeOnly + * @param array $expectedResult + * @dataProvider getPageHandleParentsDataProvider + */ + public function testGetPageHandleParents($inputPageHandle, $isPageTypeOnly, $expectedResult) + { + $layoutUtility = new Mage_Core_Utility_Layout($this); + $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); + $this->assertSame($expectedResult, $model->getPageHandleParents($inputPageHandle, $isPageTypeOnly)); + } + + public function getPageHandleParentsDataProvider() + { + return array( + 'non-existing handle' => array('non_existing_handle', false, array()), + 'non page type handle' => array('not_a_page_type', false, array()), + 'page type with no parent' => array('default', false, array()), + 'page type with parent' => array( + 'catalog_category_default', false, array('default') + ), + 'deeply nested page type' => array( + 'catalog_category_layered', false, array('default', 'catalog_category_default') + ), + 'page fragment is not processed' => array( + 'checkout_onepage_progress', true, array() + ), + 'page fragment is processed' => array( + 'checkout_onepage_progress', false, array('default', 'checkout_onepage_index') + ) + ); + } + + public function testGetPageHandlesHierarchy() + { + $layoutUtility = new Mage_Core_Utility_Layout($this); + $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); + $expected = require(__DIR__ . '/_files/_handles_hierarchy.php'); + $actual = $model->getPageHandlesHierarchy(); + $this->assertEquals($expected, $actual); + } + + /** + * Test that, regarding of the current area, page types hierarchy getter retrieves the front-end page types + */ + public function testGetPageHandlesHierarchyFromBackend() + { + $area = Mage::getDesign()->getArea(); + $this->assertEquals('frontend', $area, 'Test assumes that front-end is the current area.'); + + /* use new instance to ensure that in-memory caching, if any, won't affect test results */ + $model = new Mage_Core_Model_Layout_Merge(); + $frontendPageTypes = $model->getPageHandlesHierarchy(); + $this->assertNotEmpty($frontendPageTypes); + + Mage::getDesign()->setArea('adminhtml'); + try { + $backendPageTypes = $this->_model->getPageHandlesHierarchy(); + $this->assertSame($frontendPageTypes, $backendPageTypes); + } catch (Exception $e) { + Mage::getDesign()->setArea($area); + throw $e; + } + Mage::getDesign()->setArea($area); + } + + /** + * @dataProvider pageHandleExistsDataProvider + */ + public function testPageHandleExists($inputPageHandle, $expectedResult) + { + $layoutUtility = new Mage_Core_Utility_Layout($this); + $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); + $this->assertSame($expectedResult, $model->pageHandleExists($inputPageHandle)); + } + + public function pageHandleExistsDataProvider() + { + return array( + 'non-existing handle' => array('non_existing_handle', false), + 'non page type handle' => array('not_a_page_type', false), + 'existing page type' => array('default', true), + ); + } + + /** + * @dataProvider getPageHandleLabelDataProvider + */ + public function testGetPageHandleLabel($inputPageType, $expectedResult) + { + $layoutUtility = new Mage_Core_Utility_Layout($this); + $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); + $this->assertSame($expectedResult, $model->getPageHandleLabel($inputPageType)); + } + + public function getPageHandleLabelDataProvider() + { + return array( + 'non-existing handle' => array('non_existing_handle', null), + 'non page type handle' => array('not_a_page_type', null), + 'existing page type' => array('default', 'All Pages'), + ); + } + + public function testLoad() + { + $layoutHandle = 'layout_test_handle'; + $expectedText = 'Text declared in the frontend/test/test_theme'; + $model = new Mage_Core_Model_Layout_Merge( + array('area' => 'frontend', 'package' => 'test', 'theme'=> 'test_theme') + ); + $this->assertNotContains($layoutHandle, $model->getHandles()); + $this->assertNotContains($expectedText, $model->asString()); + $model->load($layoutHandle); + $this->assertContains($layoutHandle, $model->getHandles()); + $this->assertContains($expectedText, $model->asString()); + } + + /** + * @magentoAppIsolation enabled + */ + public function testLoadCache() + { + Mage::app()->getCacheInstance()->allowUse('layout'); + + $layoutHandle = 'layout_test_handle'; + $expectedTextThemeOne = 'Text declared in the frontend/test/test_theme'; + $expectedTextThemeTwo = 'Text declared in the frontend/test/cache_test_theme'; + + $model = new Mage_Core_Model_Layout_Merge( + array('area' => 'frontend', 'package' => 'test', 'theme'=> 'test_theme') + ); + $model->load($layoutHandle); + $this->assertContains($expectedTextThemeOne, $model->asString()); + $this->assertNotContains($expectedTextThemeTwo, $model->asString()); + + $model = new Mage_Core_Model_Layout_Merge( + array('area' => 'frontend', 'package' => 'test', 'theme'=> 'cache_test_theme') + ); + $model->load($layoutHandle); + $this->assertContains($expectedTextThemeTwo, $model->asString()); + $this->assertNotContains($expectedTextThemeOne, $model->asString()); + } + + /** + * @magentoDataFixture Mage/Core/Model/Layout/_files/db_layout_update.php + */ + public function testFetchDbLayoutUpdates() + { + $this->_model->load('fixture_handle'); + $this->assertStringMatchesFormat( + '<reference name="root">%w<block type="Mage_Core_Block_Template" template="dummy.phtml"/>%w</reference>', + trim($this->_model->asString()) + ); + } + + public function testGetFileLayoutUpdatesXmlFromTheme() + { + $this->_replaceConfigLayoutUpdates(' + <core module="Mage_Core"> + <file>layout.xml</file> + </core> + '); + $expectedXmlStr = $this->_readLayoutFileContents( + __DIR__ . '/../_files/design/frontend/test/default/Mage_Core/layout.xml' + ); + $actualXml = $this->_model->getFileLayoutUpdatesXml(); + $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); + } + + public function testGetFileLayoutUpdatesXmlFromModule() + { + $this->_replaceConfigLayoutUpdates(' + <page module="Mage_Page"> + <file>layout.xml</file> + </page> + '); + $expectedXmlStr = $this->_readLayoutFileContents( + __DIR__ . '/../../../../../../../../app/code/core/Mage/Page/view/frontend/layout.xml' + ); + $actualXml = $this->_model->getFileLayoutUpdatesXml(); + $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); + } + + /** + * Replace configuration XML node <area>/layout/updates with the desired content + * + * @param string $replacementXmlStr + * @param string $area + */ + protected function _replaceConfigLayoutUpdates($replacementXmlStr, $area = 'frontend') + { + /* Erase existing layout updates */ + unset(Mage::app()->getConfig()->getNode("{$area}/layout")->updates); + /* Setup layout updates fixture */ + Mage::app()->getConfig()->extend(new Varien_Simplexml_Config(" + <config> + <{$area}> + <layout> + <updates> + {$replacementXmlStr} + </updates> + </layout> + </{$area}> + </config> + ")); + } + + /** + * Retrieve contents of the layout update file, preprocessed to be comparable with the merged layout data + * + * @param string $filename + * @return string + */ + protected function _readLayoutFileContents($filename) + { + /* Load & render XML to get rid of comments and replace root node name from <layout> to <layouts> */ + $xml = simplexml_load_file($filename, 'Varien_Simplexml_Element'); + $text = ''; + foreach ($xml->children() as $child) { + $text .= $child->asNiceXml(); + } + return '<layouts>' . $text . '</layouts>'; + } + + /** + * @expectedException Magento_Exception + * @dataProvider getFileLayoutUpdatesXmlExceptionDataProvider + */ + public function testGetFileLayoutUpdatesXmlException($configFixture) + { + $this->_replaceConfigLayoutUpdates($configFixture); + $this->_model->getFileLayoutUpdatesXml(); + } + + public function getFileLayoutUpdatesXmlExceptionDataProvider() + { + return array( + 'non-existing layout file' => array(' + <core module="Mage_Core"> + <file>non_existing_layout.xml</file> + </core> + '), + 'module attribute absence' => array(' + <core> + <file>layout.xml</file> + </core> + '), + 'non-existing module' => array(' + <core module="Non_ExistingModule"> + <file>layout.xml</file> + </core> + '), + ); + } + + /** + * @magentoConfigFixture current_store advanced/modules_disable_output/Mage_Catalog true + * @magentoConfigFixture current_store advanced/modules_disable_output/Mage_Page true + */ + public function testGetFileLayoutUpdatesXmlDisabledOutput() + { + $this->_replaceConfigLayoutUpdates(' + <catalog module="Mage_Catalog"> + <file>layout.xml</file> + </catalog> + <core module="Mage_Core"> + <file>layout.xml</file> + </core> + <page module="Mage_Page"> + <file>layout.xml</file> + </page> + '); + $expectedXmlStr = $this->_readLayoutFileContents( + __DIR__ . '/../_files/design/frontend/test/default/Mage_Core/layout.xml' + ); + $actualXml = $this->_model->getFileLayoutUpdatesXml(); + $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); + } + + public function testGetContainers() + { + $layoutUtility = new Mage_Core_Utility_Layout($this); + $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); + $model->addPageHandles(array('catalog_product_view_type_configurable')); + $model->load(); + $expected = array( + 'content' => 'Main Content Area', + 'product.info.extrahint' => 'Product View Extra Hint', + 'product.info.configurable.extra' => 'Configurable Product Extra Info', + ); + $this->assertSame($expected, $model->getContainers()); + } +} diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Layout/UpdateTest.php b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/UpdateTest.php index 87d52fb6d97c0..e3b136cbac1bd 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/Layout/UpdateTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/UpdateTest.php @@ -34,19 +34,7 @@ class Mage_Core_Model_Layout_UpdateTest extends PHPUnit_Framework_TestCase protected function setUp() { - /* Point application to predefined layout fixtures */ - Mage::getConfig()->setOptions(array( - 'design_dir' => dirname(dirname(__FILE__)) . '/_files/design', - )); - Mage::getDesign()->setDesignTheme('test/default/default'); - /* Disable loading and saving layout cache */ - Mage::app()->getCacheInstance()->banUse('layout'); - - $this->_model = new Mage_Core_Model_Layout_Update(array( - 'area' => 'frontend', - 'package' => 'test', - 'theme' => 'default', - )); + $this->_model = new Mage_Core_Model_Layout_Update(); } protected function tearDown() @@ -54,350 +42,27 @@ protected function tearDown() $this->_model = null; } - public function testGetElementClass() + public function testConstructor() { - $this->assertEquals('Mage_Core_Model_Layout_Element', $this->_model->getElementClass()); - } - - public function testAddUpdate() - { - $this->assertEmpty($this->_model->asArray()); - $this->assertEmpty($this->_model->asString()); - $this->_model->addUpdate('test'); - $this->assertEquals(array('test'), $this->_model->asArray()); - $this->assertEquals('test', $this->_model->asString()); - } - - public function testAddHandle() - { - $this->assertEmpty($this->_model->getHandles()); - $this->_model->addHandle('test'); - $this->assertEquals(array('test'), $this->_model->getHandles()); - } - - public function testRemoveHandle() - { - $this->_model->addHandle('test'); - $this->_model->removeHandle('test'); - $this->assertEmpty($this->_model->getHandles()); - } - - public function testAddPageHandles() - { - /* add a non-page handle to verify that it won't be affected during page handles manipulation */ - $nonPageHandles = array('non_page_handle'); - $this->_model->addHandle($nonPageHandles); - - $this->assertFalse($this->_model->addPageHandles(array('non_existing_handle'))); - $this->assertEmpty($this->_model->getPageHandles()); - $this->assertEquals($nonPageHandles, $this->_model->getHandles()); - - /* test that only the first existing handle is taken into account */ - $handlesToTry = array('catalog_product_view_type_simple', 'catalog_category_view'); - $expectedPageHandles = array('default', 'catalog_product_view', 'catalog_product_view_type_simple'); - $this->assertTrue($this->_model->addPageHandles($handlesToTry)); - $this->assertEquals($expectedPageHandles, $this->_model->getPageHandles()); - $this->assertEquals(array_merge($nonPageHandles, $expectedPageHandles), $this->_model->getHandles()); - - /* test that new handles override the previous ones */ - $expectedPageHandles = array('default', 'catalog_category_view', 'catalog_category_view_type_default'); - $this->assertTrue($this->_model->addPageHandles(array('catalog_category_view_type_default'))); - $this->assertEquals($expectedPageHandles, $this->_model->getPageHandles()); - $this->assertEquals(array_merge($nonPageHandles, $expectedPageHandles), $this->_model->getHandles()); + $this->_model = new Mage_Core_Model_Layout_Update(); + $this->assertInstanceOf('Mage_Core_Model_Resource_Layout_Update', $this->_model->getResource()); } /** - * @param string $inputPageHandle - * @param bool $isPageTypeOnly - * @param array $expectedResult - * @dataProvider getPageHandleParentsDataProvider + * @magentoDbIsolation enabled */ - public function testGetPageHandleParents($inputPageHandle, $isPageTypeOnly, $expectedResult) - { - $layoutUtility = new Mage_Core_Utility_Layout($this); - $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); - $this->assertSame($expectedResult, $model->getPageHandleParents($inputPageHandle, $isPageTypeOnly)); - } - - public function getPageHandleParentsDataProvider() - { - return array( - 'non-existing handle' => array('non_existing_handle', false, array()), - 'non page type handle' => array('not_a_page_type', false, array()), - 'page type with no parent' => array('default', false, array()), - 'page type with parent' => array( - 'catalog_category_default', false, array('default') - ), - 'deeply nested page type' => array( - 'catalog_category_layered', false, array('default', 'catalog_category_default') - ), - 'page fragment is not processed' => array( - 'checkout_onepage_progress', true, array() - ), - 'page fragment is processed' => array( - 'checkout_onepage_progress', false, array('default', 'checkout_onepage_index') - ) - ); - } - - public function testGetPageHandlesHierarchy() + public function testCrud() { - $layoutUtility = new Mage_Core_Utility_Layout($this); - $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); - $expected = require(__DIR__ . '/_files/_handles_hierarchy.php'); - $actual = $model->getPageHandlesHierarchy(); - $this->assertEquals($expected, $actual); - } - - /** - * Test that, regarding of the current area, page types hierarchy getter retrieves the front-end page types - */ - public function testGetPageHandlesHierarchyFromBackend() - { - $area = Mage::getDesign()->getArea(); - $this->assertEquals('frontend', $area, 'Test assumes that front-end is the current area.'); - - /* use new instance to ensure that in-memory caching, if any, won't affect test results */ - $model = new Mage_Core_Model_Layout_Update(); - $frontendPageTypes = $model->getPageHandlesHierarchy(); - $this->assertNotEmpty($frontendPageTypes); - - Mage::getDesign()->setArea('adminhtml'); - try { - $backendPageTypes = $this->_model->getPageHandlesHierarchy(); - $this->assertSame($frontendPageTypes, $backendPageTypes); - } catch (Exception $e) { - Mage::getDesign()->setArea($area); - throw $e; - } - Mage::getDesign()->setArea($area); - } - - /** - * @dataProvider pageHandleExistsDataProvider - */ - public function testPageHandleExists($inputPageHandle, $expectedResult) - { - $layoutUtility = new Mage_Core_Utility_Layout($this); - $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); - $this->assertSame($expectedResult, $model->pageHandleExists($inputPageHandle)); - } - - public function pageHandleExistsDataProvider() - { - return array( - 'non-existing handle' => array('non_existing_handle', false), - 'non page type handle' => array('not_a_page_type', false), - 'existing page type' => array('default', true), - ); - } - - /** - * @dataProvider getPageHandleLabelDataProvider - */ - public function testGetPageHandleLabel($inputPageType, $expectedResult) - { - $layoutUtility = new Mage_Core_Utility_Layout($this); - $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); - $this->assertSame($expectedResult, $model->getPageHandleLabel($inputPageType)); - } - - public function getPageHandleLabelDataProvider() - { - return array( - 'non-existing handle' => array('non_existing_handle', null), - 'non page type handle' => array('not_a_page_type', null), - 'existing page type' => array('default', 'All Pages'), - ); - } - - public function testLoad() - { - $layoutHandle = 'layout_test_handle'; - $expectedText = 'Text declared in the frontend/test/test_theme'; - $model = new Mage_Core_Model_Layout_Update( - array('area' => 'frontend', 'package' => 'test', 'theme'=> 'test_theme') - ); - $this->assertNotContains($layoutHandle, $model->getHandles()); - $this->assertNotContains($expectedText, $model->asString()); - $model->load($layoutHandle); - $this->assertContains($layoutHandle, $model->getHandles()); - $this->assertContains($expectedText, $model->asString()); - } - - /** - * @magentoAppIsolation enabled - */ - public function testLoadCache() - { - Mage::app()->getCacheInstance()->allowUse('layout'); - - $layoutHandle = 'layout_test_handle'; - $expectedTextThemeOne = 'Text declared in the frontend/test/test_theme'; - $expectedTextThemeTwo = 'Text declared in the frontend/test/cache_test_theme'; - - $model = new Mage_Core_Model_Layout_Update( - array('area' => 'frontend', 'package' => 'test', 'theme'=> 'test_theme') - ); - $model->load($layoutHandle); - $this->assertContains($expectedTextThemeOne, $model->asString()); - $this->assertNotContains($expectedTextThemeTwo, $model->asString()); - - $model = new Mage_Core_Model_Layout_Update( - array('area' => 'frontend', 'package' => 'test', 'theme'=> 'cache_test_theme') - ); - $model->load($layoutHandle); - $this->assertContains($expectedTextThemeTwo, $model->asString()); - $this->assertNotContains($expectedTextThemeOne, $model->asString()); - } - - /** - * @magentoDataFixture Mage/Core/Model/Layout/_files/db_layout_update.php - */ - public function testFetchDbLayoutUpdates() - { - $this->_model->load('fixture_handle'); - $this->assertStringMatchesFormat( - '<reference name="root">%w<block type="Mage_Core_Block_Template" template="dummy.phtml"/>%w</reference>', - trim($this->_model->asString()) - ); - } - - public function testGetFileLayoutUpdatesXmlFromTheme() - { - $this->_replaceConfigLayoutUpdates(' - <core module="Mage_Core"> - <file>layout.xml</file> - </core> - '); - $expectedXmlStr = $this->_readLayoutFileContents( - __DIR__ . '/../_files/design/frontend/test/default/Mage_Core/layout.xml' - ); - $actualXml = $this->_model->getFileLayoutUpdatesXml(); - $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); - } - - public function testGetFileLayoutUpdatesXmlFromModule() - { - $this->_replaceConfigLayoutUpdates(' - <page module="Mage_Page"> - <file>layout.xml</file> - </page> - '); - $expectedXmlStr = $this->_readLayoutFileContents( - __DIR__ . '/../../../../../../../../app/code/core/Mage/Page/view/frontend/layout.xml' - ); - $actualXml = $this->_model->getFileLayoutUpdatesXml(); - $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); - } - - /** - * Replace configuration XML node <area>/layout/updates with the desired content - * - * @param string $replacementXmlStr - * @param string $area - */ - protected function _replaceConfigLayoutUpdates($replacementXmlStr, $area = 'frontend') - { - /* Erase existing layout updates */ - unset(Mage::app()->getConfig()->getNode("{$area}/layout")->updates); - /* Setup layout updates fixture */ - Mage::app()->getConfig()->extend(new Varien_Simplexml_Config(" - <config> - <{$area}> - <layout> - <updates> - {$replacementXmlStr} - </updates> - </layout> - </{$area}> - </config> - ")); - } - - /** - * Retrieve contents of the layout update file, preprocessed to be comparable with the merged layout data - * - * @param string $filename - * @return string - */ - protected function _readLayoutFileContents($filename) - { - /* Load & render XML to get rid of comments and replace root node name from <layout> to <layouts> */ - $xml = simplexml_load_file($filename, 'Varien_Simplexml_Element'); - $text = ''; - foreach ($xml->children() as $child) { - $text .= $child->asNiceXml(); - } - return '<layouts>' . $text . '</layouts>'; - } - - /** - * @expectedException Magento_Exception - * @dataProvider getFileLayoutUpdatesXmlExceptionDataProvider - */ - public function testGetFileLayoutUpdatesXmlException($configFixture) - { - $this->_replaceConfigLayoutUpdates($configFixture); - $this->_model->getFileLayoutUpdatesXml(); - } - - public function getFileLayoutUpdatesXmlExceptionDataProvider() - { - return array( - 'non-existing layout file' => array(' - <core module="Mage_Core"> - <file>non_existing_layout.xml</file> - </core> - '), - 'module attribute absence' => array(' - <core> - <file>layout.xml</file> - </core> - '), - 'non-existing module' => array(' - <core module="Non_ExistingModule"> - <file>layout.xml</file> - </core> - '), - ); - } - - /** - * @magentoConfigFixture current_store advanced/modules_disable_output/Mage_Catalog true - * @magentoConfigFixture current_store advanced/modules_disable_output/Mage_Page true - */ - public function testGetFileLayoutUpdatesXmlDisabledOutput() - { - $this->_replaceConfigLayoutUpdates(' - <catalog module="Mage_Catalog"> - <file>layout.xml</file> - </catalog> - <core module="Mage_Core"> - <file>layout.xml</file> - </core> - <page module="Mage_Page"> - <file>layout.xml</file> - </page> - '); - $expectedXmlStr = $this->_readLayoutFileContents( - __DIR__ . '/../_files/design/frontend/test/default/Mage_Core/layout.xml' - ); - $actualXml = $this->_model->getFileLayoutUpdatesXml(); - $this->assertXmlStringEqualsXmlString($expectedXmlStr, $actualXml->asNiceXml()); - } - - public function testGetContainers() - { - $layoutUtility = new Mage_Core_Utility_Layout($this); - $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml'); - $model->addPageHandles(array('catalog_product_view_type_configurable')); - $model->load(); - $expected = array( - 'content' => 'Main Content Area', - 'product.info.extrahint' => 'Product View Extra Hint', - 'product.info.configurable.extra' => 'Configurable Product Extra Info', - ); - $this->assertSame($expected, $model->getContainers()); + $this->_model->setData(array( + 'handle' => 'default', + 'xml' => '<layout/>', + 'sort_order' => 123, + )); + $entityHelper = new Magento_Test_Entity($this->_model, array( + 'handle' => 'custom', + 'xml' => '<layout version="0.1.0"/>', + 'sort_order' => 456, + )); + $entityHelper->testCrud(); } } diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Layout/_files/db_layout_update.php b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/_files/db_layout_update.php index 6f695aa640e5a..43d2b761d8e83 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/Layout/_files/db_layout_update.php +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Layout/_files/db_layout_update.php @@ -27,7 +27,7 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -$layoutUpdate = new Mage_Core_Model_Layout_Data; +$layoutUpdate = new Mage_Core_Model_Layout_Update; $layoutUpdate->setData((array( 'handle' => 'fixture_handle', 'xml' => '<reference name="root"><block type="Mage_Core_Block_Template" template="dummy.phtml"/></reference>', diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/LayoutTest.php b/dev/tests/integration/testsuite/Mage/Core/Model/LayoutTest.php index 85c3a5bb35751..db838fa257f24 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/LayoutTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Model/LayoutTest.php @@ -27,12 +27,6 @@ /** * Layout integration tests - * - * 'ExcessivePublicCount' rule intersects with the 'TooManyFields' and 'TooManyMethods'. - * @SuppressWarnings(PHPMD.ExcessiveClassComplexity) - * @SuppressWarnings(PHPMD.ExcessivePublicCount) - * @SuppressWarnings(PHPMD.TooManyFields) - * @SuppressWarnings(PHPMD.TooManyMethods) */ class Mage_Core_Model_LayoutTest extends PHPUnit_Framework_TestCase { @@ -111,7 +105,7 @@ public function testDestructor() public function testGetUpdate() { - $this->assertInstanceOf('Mage_Core_Model_Layout_Update', $this->_layout->getUpdate()); + $this->assertInstanceOf('Mage_Core_Model_Layout_Merge', $this->_layout->getUpdate()); } public function testGetSetDirectOutput() @@ -146,7 +140,7 @@ public function testGenerateXmlAndElements() 'notification_survey', 'notification_security', 'messages', - 'ANONYMOUS_0', + 'root_schedule_block', 'index_notifications', 'index_notifications_copy' ); @@ -169,8 +163,11 @@ public function testGenerateXmlAndElements() $this->assertFalse($this->_layout->getBlock('test.nonexisting.block')); } - public function testLayoutMoveDirective() + public function testLayoutDirectives() { + /** + * Test correct move + */ $layout = new Mage_Core_Model_Layout(); $layout->getUpdate()->load(array('layout_test_handle_move')); $layout->generateXml()->generateElements(); @@ -191,61 +188,61 @@ public function testLayoutMoveDirective() $positionBefore = array_search('child_block2', $childrenOrderArray); $positionToVerify = array_search('no_name4', $childrenOrderArray); $this->assertEquals($positionBefore, ++$positionToVerify); - } - /** - * @expectedException Magento_Exception - */ - public function testLayoutMoveDirectiveBroken() - { + /** + * Test move with the same alias + */ $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_move_broken')); + $layout->getUpdate()->load(array('layout_test_handle_move_the_same_alias')); $layout->generateXml()->generateElements(); - } + $this->assertEquals('container1', $layout->getParentName('no_name3')); - /** - * @expectedException Magento_Exception - */ - public function testLayoutMoveAliasBroken() - { + /** + * Test move with a new alias + */ $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_move_alias_broken')); + $layout->getUpdate()->load(array('layout_test_handle_move_new_alias')); $layout->generateXml()->generateElements(); - } + $this->assertEquals('new_alias', $layout->getElementAlias('no_name3')); - public function testLayoutMoveSameAlias() - { + /** + * Test layout action with anonymous parent block + */ $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_move_the_same_alias')); + $layout->getUpdate()->load(array('layout_test_handle_action_for_anonymous_parent_block')); $layout->generateXml()->generateElements(); - $this->assertEquals('container1', $layout->getParentName('no_name3')); - } + $this->assertEquals('schedule_block', $layout->getParentName('test.block.insert')); + $this->assertEquals('schedule_block_1', $layout->getParentName('test.block.append')); - public function testLayoutMoveNewAlias() - { + /** + * Test layout remove directive + */ $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_move_new_alias')); + $layout->getUpdate()->load(array('layout_test_handle_remove')); $layout->generateXml()->generateElements(); - $this->assertEquals('new_alias', $layout->getElementAlias('no_name3')); + $this->assertFalse($layout->getBlock('no_name2')); + $this->assertFalse($layout->getBlock('child_block1')); + $this->assertTrue($layout->isBlock('child_block2')); } - public function testLayoutActionForAnonymousParent() + /** + * @expectedException Magento_Exception + */ + public function testLayoutMoveDirectiveBroken() { $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_action_for_anonymous_parent_block')); + $layout->getUpdate()->load(array('layout_test_handle_move_broken')); $layout->generateXml()->generateElements(); - $this->assertEquals('ANONYMOUS_0', $layout->getParentName('test.block.insert')); - $this->assertEquals('ANONYMOUS_1', $layout->getParentName('test.block.append')); } - public function testLayoutRemoveDirective() + /** + * @expectedException Magento_Exception + */ + public function testLayoutMoveAliasBroken() { $layout = new Mage_Core_Model_Layout(); - $layout->getUpdate()->load(array('layout_test_handle_remove')); + $layout->getUpdate()->load(array('layout_test_handle_move_alias_broken')); $layout->generateXml()->generateElements(); - $this->assertFalse($layout->getBlock('no_name2')); - $this->assertFalse($layout->getBlock('child_block1')); - $this->assertTrue($layout->isBlock('child_block2')); } /** @@ -329,7 +326,7 @@ public function createBlockDataProvider() 'named block' => array( 'Mage_Core_Block_Template', 'some_block_name_full_class', - array('type' => 'Mage_Core_Block_Template'), + array('type' => 'Mage_Core_Block_Template', 'is_anonymous' => false), '/^some_block_name_full_class$/' ), 'no name block' => array( @@ -337,9 +334,10 @@ public function createBlockDataProvider() '', array( 'type' => 'Mage_Core_Block_Text_List', - 'key1' => 'value1' + 'key1' => 'value1', + 'is_anonymous' => true ), - '/^ANONYMOUS_.+/' + '/text_list/' ), ); } @@ -561,20 +559,27 @@ public function testGetBlockUnscheduledException() $layout->generateElements(); } - public function testGetParentName() + /** + * @covers Mage_Core_Model_Layout::getParentName + * @covers Mage_Core_Model_Layout::getElementAlias + */ + public function testGetParentNameAndAlias() { + /** + * Test get name + */ $this->_layout->addContainer('one', 'One'); $this->_layout->addContainer('two', 'Two', array(), 'one'); $this->assertFalse($this->_layout->getParentName('one')); $this->assertEquals('one', $this->_layout->getParentName('two')); - } - public function testGetElementAlias() - { - $this->_layout->addContainer('one', 'One'); - $this->_layout->addContainer('two', 'One', array(), 'one', '1'); - $this->assertFalse($this->_layout->getElementAlias('one')); - $this->assertEquals('1', $this->_layout->getElementAlias('two')); + /** + * Test get alias + */ + $this->_layout->addContainer('one_2', 'One_2'); + $this->_layout->addContainer('two_2', 'One_2', array(), 'one_2', '1'); + $this->assertFalse($this->_layout->getElementAlias('one_2')); + $this->assertEquals('1', $this->_layout->getElementAlias('two_2')); } /** @@ -599,11 +604,6 @@ public function testGetOutput() $this->assertEmpty($this->_layout->getOutput()); } - public function testGetMessagesBlock() - { - $this->assertInstanceOf('Mage_Core_Block_Messages', $this->_layout->getMessagesBlock()); - } - /** * @param string $blockType * @param string $expectedClassName @@ -623,11 +623,19 @@ public function getBlockSingletonDataProvider() ); } - public function testHelper() + public function testHelperAndMessageBlock() { + /** + * Test helper + */ $helper = $this->_layout->helper('Mage_Core_Helper_Data'); $this->assertInstanceOf('Mage_Core_Helper_Data', $helper); $this->assertSame($this->_layout, $helper->getLayout()); + + /** + * Test message block + */ + $this->assertInstanceOf('Mage_Core_Block_Messages', $this->_layout->getMessagesBlock()); } /** diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Resource/LayoutTest.php b/dev/tests/integration/testsuite/Mage/Core/Model/Resource/LayoutTest.php index 298b8bc8cd2c8..c8f16ae03a58a 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/Resource/LayoutTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Resource/LayoutTest.php @@ -34,7 +34,7 @@ class Mage_Core_Model_Resource_LayoutTest extends PHPUnit_Framework_TestCase public function setUp() { - $this->_model = new Mage_Core_Model_Resource_Layout(); + $this->_model = new Mage_Core_Model_Resource_Layout_Update(); } protected function tearDown() diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Translate/InlineTest.php b/dev/tests/integration/testsuite/Mage/Core/Model/Translate/InlineTest.php index 33f999ac905ed..63b6ba9ef038a 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/Translate/InlineTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Translate/InlineTest.php @@ -118,7 +118,16 @@ public function testProcessResponseBody($originalText, $expectedText) $actualText = $originalText; $this->_model->processResponseBody($actualText); $this->markTestIncomplete('Bug MAGE-2494'); - $this->assertXmlStringEqualsXmlString($expectedText, $actualText); + + $expected = new DOMDocument; + $expected->preserveWhiteSpace = FALSE; + $expected->loadHTML($expectedText); + + $actual = new DOMDocument; + $actual->preserveWhiteSpace = FALSE; + $actual->loadHTML($actualText); + + $this->assertEquals($expected, $actual); } public function processResponseBodyDataProvider() diff --git a/dev/tests/integration/testsuite/Mage/Core/Model/Translate/_files/_inline_page_expected.html b/dev/tests/integration/testsuite/Mage/Core/Model/Translate/_files/_inline_page_expected.html index 0e1a82a8992a5..c479cb42556b9 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Model/Translate/_files/_inline_page_expected.html +++ b/dev/tests/integration/testsuite/Mage/Core/Model/Translate/_files/_inline_page_expected.html @@ -29,22 +29,29 @@ "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> - <title>shown_0TITLE + shown_0TITLE -
- some_text_shown_2_in_div +
+ some_text_shown_2_in_div
- - - + + + + + + - - - -
[TR]
diff --git a/dev/tests/integration/testsuite/Mage/Core/Utility/Layout.php b/dev/tests/integration/testsuite/Mage/Core/Utility/Layout.php index 4e4cca41acde8..7f9ae8388290a 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Utility/Layout.php +++ b/dev/tests/integration/testsuite/Mage/Core/Utility/Layout.php @@ -44,14 +44,17 @@ public function __construct(PHPUnit_Framework_TestCase $testCase) * Retrieve new layout update model instance with XML data from a fixture file * * @param string $layoutUpdatesFile - * @return Mage_Core_Model_Layout_Update|PHPUnit_Framework_MockObject_MockObject + * @return Mage_Core_Model_Layout_Merge|PHPUnit_Framework_MockObject_MockObject */ public function getLayoutUpdateFromFixture($layoutUpdatesFile) { $layoutUpdate = $this->_testCase->getMock( - 'Mage_Core_Model_Layout_Update', array('getFileLayoutUpdatesXml') + 'Mage_Core_Model_Layout_Merge', array('getFileLayoutUpdatesXml') ); - $layoutUpdatesXml = simplexml_load_file($layoutUpdatesFile, $layoutUpdate->getElementClass()); + + $reflector = new ReflectionProperty(get_class($layoutUpdate), '_elementClass'); + $reflector->setAccessible(true); + $layoutUpdatesXml = simplexml_load_file($layoutUpdatesFile, $reflector->getValue($layoutUpdate)); $layoutUpdate->expects(PHPUnit_Framework_TestCase::any()) ->method('getFileLayoutUpdatesXml') ->will(PHPUnit_Framework_TestCase::returnValue($layoutUpdatesXml)); diff --git a/dev/tests/integration/testsuite/Mage/Core/Utility/LayoutTest.php b/dev/tests/integration/testsuite/Mage/Core/Utility/LayoutTest.php index fcc7d92f67db8..7619a2e296f4f 100644 --- a/dev/tests/integration/testsuite/Mage/Core/Utility/LayoutTest.php +++ b/dev/tests/integration/testsuite/Mage/Core/Utility/LayoutTest.php @@ -50,12 +50,12 @@ protected function tearDown() /** * Assert that the actual layout update instance represents the expected layout update file * - * @param Mage_Core_Model_Layout_Update $actualUpdate + * @param Mage_Core_Model_Layout_Merge $actualUpdate * @param string $expectedUpdateFile */ protected function _assertLayoutUpdate($actualUpdate, $expectedUpdateFile) { - $this->assertInstanceOf('Mage_Core_Model_Layout_Update', $actualUpdate); + $this->assertInstanceOf('Mage_Core_Model_Layout_Merge', $actualUpdate); $layoutUpdateXml = $actualUpdate->getFileLayoutUpdatesXml(); $this->assertInstanceOf('Mage_Core_Model_Layout_Element', $layoutUpdateXml); diff --git a/dev/tests/integration/testsuite/Mage/DesignEditor/controllers/Adminhtml/System/Design/EditorControllerTest.php b/dev/tests/integration/testsuite/Mage/DesignEditor/controllers/Adminhtml/System/Design/EditorControllerTest.php index ff30066175e1a..673441b8ba0a7 100644 --- a/dev/tests/integration/testsuite/Mage/DesignEditor/controllers/Adminhtml/System/Design/EditorControllerTest.php +++ b/dev/tests/integration/testsuite/Mage/DesignEditor/controllers/Adminhtml/System/Design/EditorControllerTest.php @@ -65,8 +65,9 @@ public function testIndexActionMultipleStores() $this->dispatch('backend/admin/system_design_editor/index'); $responseBody = $this->getResponse()->getBody(); $this->_assertContainsDesignEditor($responseBody); - $this->assertContains('', + data:{ + id: 'translate-form-id' + } + }, + dialog: { + id: 'dialog-id', + buttons : [{ + 'class': 'submit-button' + }] + } + }, + translateInline = jQuery(document).translateInline(options), + submit = jQuery('.ui-dialog-buttonset .submit-button'), + ajaxParametersCorrect = false; + + translateInline.trigger('edit.editTrigger'); + var parameters = jQuery.param({area: options.area}) + + '&' + jQuery('#' + options.translateForm.data.id).serialize(), + dialog = jQuery('#' + options.dialog.id), + dialogVisibleOnAjaxSend = false, + dialogHiddenAfterAjaxComplete = false; + jQuery(document) + .on('ajaxSend', function(e, jqXHR, settings){ + jqXHR.abort(); + dialogVisibleOnAjaxSend = dialog.is(':visible'); + ajaxParametersCorrect = settings.data.indexOf(parameters) >= 0; + jQuery(this).trigger('ajaxComplete'); + }); + submit.trigger('click'); + assertEquals(true, dialogVisibleOnAjaxSend); + assertEquals(true, ajaxParametersCorrect); + assertEquals(true, dialog.is(':hidden')); + translateInline.translateInline('destroy'); +}; +TranslateInlineTest.prototype.testDestroy = function() { + var options = { + translateForm: { + data:{ + id: 'translate-form-id' + } + }, + dialog:{ + id: 'dialog-id' + }, + editTrigger: { + template: '${alt}' + } + }, + translateInline = jQuery(document).translateInline(options), + dialog = jQuery('#' + options.dialog.id), + editTrigger = jQuery('#edit-trigger-id'), + dialogCreated = dialog.size() && dialog.is(':ui-dialog'), + editTriggerCreated = editTrigger.size() && jQuery(document).is(':mage-editTrigger'), + editTriggerEventIsBound = false; + + assertEquals(true, dialogCreated); + assertEquals(true, editTriggerCreated); + translateInline.on('edit.editTrigger', function(){editTriggerEventIsBound = true;}); + translateInline.translateInline('destroy'); + translateInline.trigger('edit.editTrigger'); + assertEquals(false, dialog.size() && dialog.is(':ui-dialog')); + assertEquals(false, editTrigger.size() && jQuery(document).is(':mage-editTrigger')); + assertEquals(false, editTriggerEventIsBound); +}; \ No newline at end of file diff --git a/dev/tests/performance/config.php.dist b/dev/tests/performance/config.php.dist index e5e54ef04aa6f..c70a7dcb93a02 100644 --- a/dev/tests/performance/config.php.dist +++ b/dev/tests/performance/config.php.dist @@ -56,39 +56,59 @@ return array( 'admin_email' => 'admin@example.com', 'admin_no_form_key' => 'yes', ), - 'fixture_files' => array( - 'testsuite/fixtures/catalog_category.php', - 'testsuite/fixtures/catalog_product.php', - ), ), ), 'scenario' => array( - 'files' => array( - 'testsuite/add_to_cart.jmx', - 'testsuite/advanced_search.jmx', - 'testsuite/category_view.jmx', - 'testsuite/checkout.jmx', - 'testsuite/home_page.jmx', - 'testsuite/product_edit.jmx', - 'testsuite/product_view.jmx', - 'testsuite/quick_search.jmx', - ), - /** - * Path to JMeter executable. If empty, then env value 'jmeter_jar_file' is taken. If this value is empty as - * well, then default value is used. - */ - 'jmeter_jar_file' => '', - /* Common parameters for all scenarios */ - 'common_params' => array( - 'users' => 1, - 'loops' => 1, + 'common_config' => array( + /* Common arguments passed to all scenarios */ + 'arguments' => array( + 'users' => 1, + 'loops' => 1, + ), + /* Common settings for all scenarios */ + 'settings' => array(), ), - /* Optional scenario-specific parameters */ - 'scenario_params' => array( + 'scenarios' => array( + 'testsuite/add_to_cart.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), + 'testsuite/advanced_search.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), + 'testsuite/category_view.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_category.php', + ), + ), + 'testsuite/checkout.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), + 'testsuite/home_page.jmx', + 'testsuite/product_edit.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), 'testsuite/product_view.jmx' => array( - 'product_url_key' => 'product-1.html', - 'product_name' => 'Product 1', - ) + 'arguments' => array( + 'product_url_key' => 'product-1.html', + 'product_name' => 'Product 1', + ), + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), + 'testsuite/quick_search.jmx' => array( + 'fixtures' => array( + 'testsuite/fixtures/catalog_product.php', + ), + ), ), ), 'report_dir' => 'report', diff --git a/dev/tests/performance/framework/Magento/Application.php b/dev/tests/performance/framework/Magento/Application.php new file mode 100644 index 0000000000000..69bc2197da8a7 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Application.php @@ -0,0 +1,242 @@ +getApplicationBaseDir() . '/dev/shell/install.php'; + if (!is_file($installerScript)) { + throw new Magento_Exception("File '$installerScript' is not found."); + } + $this->_installerScript = realpath($installerScript); + $this->_config = $config; + $this->_shell = $shell; + } + + /** + * Installs application + * + * @return Magento_Application + */ + public function install() + { + if ($this->_config->getInstallOptions()) { + $this->_uninstall() + ->_install() + ->_reindex() + ->_updateFilesystemPermissions(); + } else { + $this->_isInstalled = true; + } + return $this; + } + + /** + * Uninstall application + * + * @return Magento_Application + */ + protected function _uninstall() + { + $this->_shell->execute('php -f %s -- --uninstall', array($this->_installerScript)); + + $this->_cleanupMage(); + $this->_isInstalled = false; + $this->_fixtures = array(); + + return $this; + } + + /** + * Clean the application, so next time it will load itself again (i.e. after uninstall) + * + * @return Magento_Application + */ + protected function _cleanupMage() + { + Mage::reset(); + return $this; + } + + /** + * Install application according to installation options + * + * @return Magento_Application + * @throws Magento_Exception + */ + protected function _install() + { + $installOptions = $this->_config->getInstallOptions(); + if (!$installOptions) { + throw new Magento_Exception('Trying to install Magento, but installation options are not set'); + } + + // Populate install options with global options + $baseUrl = 'http://' . $this->_config->getApplicationUrlHost() . $this->_config->getApplicationUrlPath(); + $installOptions = array_merge($installOptions, array('url' => $baseUrl, 'secure_base_url' => $baseUrl)); + $adminOptions = $this->_config->getAdminOptions(); + foreach ($adminOptions as $key => $val) { + $installOptions['admin_' . $key] = $val; + } + + $installCmd = 'php -f %s --'; + $installCmdArgs = array($this->_installerScript); + foreach ($installOptions as $optionName => $optionValue) { + $installCmd .= " --$optionName %s"; + $installCmdArgs[] = $optionValue; + } + $this->_shell->execute($installCmd, $installCmdArgs); + + $this->_isInstalled = true; + $this->_fixtures = array(); + return $this; + } + + /** + * Run all indexer processes + * + * @return Magento_Application + */ + protected function _reindex() + { + $this->_bootstrap(); + + /** @var $indexer Mage_Index_Model_Indexer */ + $indexer = Mage::getModel('Mage_Index_Model_Indexer'); + /** @var $process Mage_Index_Model_Process */ + foreach ($indexer->getProcessesCollection() as $process) { + if ($process->getIndexer()->isVisible()) { + $process->reindexEverything(); + } + } + + return $this; + } + + /** + * Update permissions for `var` directory + */ + protected function _updateFilesystemPermissions() + { + Varien_Io_File::chmodRecursive(Mage::getBaseDir('var'), 0777); + } + + /** + * Bootstrap application, so it is possible to use its resources + * + * @return Magento_Application + */ + protected function _bootstrap() + { + Mage::app(); + return $this; + } + + /** + * Work on application, so that it has all and only $fixtures applied. May require reinstall, if + * excessive fixtures has been applied before. + * + * @param array $fixtures + */ + public function applyFixtures(array $fixtures) + { + if (!$this->_isInstalled || $this->_doFixturesNeedReinstall($fixtures)) { + $this->install(); + } + + // Apply fixtures + $fixturesToApply = array_diff($fixtures, $this->_fixtures); + if (!$fixturesToApply) { + return; + } + + $this->_bootstrap(); + foreach ($fixturesToApply as $fixtureFile) { + require $fixtureFile; + } + $this->_fixtures = $fixtures; + + $this->_reindex() + ->_updateFilesystemPermissions(); + } + + /** + * Compare list of fixtures needed to be set to the application, with the list of fixtures already in it. + * Return, whether application reinstall (cleanup) is needed to properly apply the fixtures. + * + * @param array $fixtures + * @return bool + */ + protected function _doFixturesNeedReinstall($fixtures) + { + $excessiveFixtures = array_diff($this->_fixtures, $fixtures); + return (bool)$excessiveFixtures; + } +} diff --git a/dev/tests/performance/framework/Magento/Config.php b/dev/tests/performance/framework/Magento/Config.php deleted file mode 100644 index f9feb530026e3..0000000000000 --- a/dev/tests/performance/framework/Magento/Config.php +++ /dev/null @@ -1,266 +0,0 @@ -_validateData($configData); - if (!is_dir($baseDir)) { - throw new Magento_Exception("Base directory '$baseDir' does not exist."); - } - $this->_reportDir = $baseDir . DIRECTORY_SEPARATOR . $configData['report_dir']; - - $applicationOptions = $configData['application']; - $this->_applicationUrlHost = $applicationOptions['url_host']; - $this->_applicationUrlPath = $applicationOptions['url_path']; - $this->_adminOptions = $applicationOptions['admin']; - - if (isset($applicationOptions['installation'])) { - $installConfig = $applicationOptions['installation']; - $this->_installOptions = $installConfig['options']; - if (isset($installConfig['fixture_files'])) { - if (!is_array($installConfig['fixture_files'])) { - throw new InvalidArgumentException( - "'application' => 'installation' => 'fixture_files' option must be array" - ); - } - $this->_fixtureFiles = array(); - foreach ($installConfig['fixture_files'] as $fixtureName) { - $fixtureFile = $baseDir . DIRECTORY_SEPARATOR . $fixtureName; - if (!file_exists($fixtureFile)) { - throw new Magento_Exception("Fixture '$fixtureName' doesn't exist in $baseDir"); - } - $this->_fixtureFiles[] = $fixtureFile; - } - } - } - - if (!empty($configData['scenario']['jmeter_jar_file'])) { - $this->_jMeterPath = $configData['scenario']['jmeter_jar_file']; - } else { - $this->_jMeterPath = getenv('jmeter_jar_file') ?: self::DEFAULT_JMETER_JAR_FILE; - } - - $this->_expandScenarios($configData['scenario'], $baseDir); - } - - /** - * Expands scenario options and file paths glob to a list of scenarios - * @param array $scenarios - * @param string $baseDir - * @throws InvalidArgumentException - * @throws Magento_Exception - */ - protected function _expandScenarios($scenarios, $baseDir) - { - if (isset($scenarios['common_params'])) { - $scenarioParamsCommon = $scenarios['common_params']; - } else { - $scenarioParamsCommon = array(); - } - - if (isset($scenarios['files'])) { - if (!is_array($scenarios['files'])) { - throw new InvalidArgumentException("'scenarios' => 'files' option must be array"); - } - foreach ($scenarios['files'] as $scenarioName) { - $scenarioFile = $baseDir . DIRECTORY_SEPARATOR . $scenarioName; - if (!file_exists($scenarioFile)) { - throw new Magento_Exception("Scenario '$scenarioName' doesn't exist in $baseDir"); - } - - if (isset($scenarios['scenario_params'][$scenarioName])) { - $oneScenarioParams = $scenarios['scenario_params'][$scenarioName]; - } else { - $oneScenarioParams = array(); - } - $this->_scenarios[$scenarioFile] = array_merge($scenarioParamsCommon, $oneScenarioParams); - } - } - } - - /** - * Validate high-level configuration structure - * - * @param array $configData - * @throws Magento_Exception - */ - protected function _validateData(array $configData) - { - // Validate 1st-level options data - $requiredKeys = array('application', 'scenario', 'report_dir'); - foreach ($requiredKeys as $requiredKeyName) { - if (empty($configData[$requiredKeyName])) { - throw new Magento_Exception("Configuration array must define '$requiredKeyName' key."); - } - } - - // Validate admin options data - $requiredAdminKeys = array('frontname', 'username', 'password'); - foreach ($requiredAdminKeys as $requiredKeyName) { - if (empty($configData['application']['admin'][$requiredKeyName])) { - throw new Magento_Exception("Admin options array must define '$requiredKeyName' key."); - } - } - } - - /** - * Retrieve application URL host component - * - * @return string - */ - public function getApplicationUrlHost() - { - return $this->_applicationUrlHost; - } - - /** - * Retrieve application URL path component - * - * @return string - */ - public function getApplicationUrlPath() - { - return $this->_applicationUrlPath; - } - - /** - * Retrieve admin options - backend path and admin user credentials - * - * @return array - */ - public function getAdminOptions() - { - return $this->_adminOptions; - } - - /** - * Retrieve application installation options - * - * @return array - */ - public function getInstallOptions() - { - return $this->_installOptions; - } - - /** - * Retrieve scenario files and their parameters as array('' => '', ...) - * - * @return array - */ - public function getScenarios() - { - return $this->_scenarios; - } - - /** - * Retrieve fixture script files - * - * @return array - */ - public function getFixtureFiles() - { - return $this->_fixtureFiles; - } - - /** - * Retrieve reports directory - * - * @return string - */ - public function getReportDir() - { - return $this->_reportDir; - } - - /** - * Retrieves path to JMeter java file - * - * @return string - */ - public function getJMeterPath() - { - return $this->_jMeterPath; - } -} diff --git a/dev/tests/performance/framework/Magento/ImportExport/Fixture/Generator.php b/dev/tests/performance/framework/Magento/ImportExport/Fixture/Generator.php index ac0c938b249a4..852ffc5cd2ca3 100644 --- a/dev/tests/performance/framework/Magento/ImportExport/Fixture/Generator.php +++ b/dev/tests/performance/framework/Magento/ImportExport/Fixture/Generator.php @@ -58,7 +58,7 @@ public function __construct(array $rowPattern, $limit) $this->_colNames = array_keys($rowPattern); $this->_colQuantity = count($rowPattern); foreach ($rowPattern as $key => $value) { - if (false !== strpos($value, '%s')) { + if (is_callable($value) || is_string($value) && (false !== strpos($value, '%s'))) { $this->_dynamicColumns[$key] = $value; } } @@ -82,8 +82,12 @@ public function next() { $this->_currentKey++; $this->_currentRow = $this->_pattern; - foreach ($this->_dynamicColumns as $key => $pattern) { - $this->_currentRow[$key] = str_replace('%s', $this->_currentKey, $pattern); + foreach ($this->_dynamicColumns as $key => $dynamicValue) { + if (is_callable($dynamicValue)) { + $this->_currentRow[$key] = call_user_func($dynamicValue, $this->_currentKey); + } else { + $this->_currentRow[$key] = str_replace('%s', $this->_currentKey, $dynamicValue); + } } } diff --git a/dev/tests/performance/framework/Magento/Installer.php b/dev/tests/performance/framework/Magento/Installer.php deleted file mode 100644 index b47eabbb01f75..0000000000000 --- a/dev/tests/performance/framework/Magento/Installer.php +++ /dev/null @@ -1,140 +0,0 @@ -_installerScript = realpath($installerScript); - $this->_shell = $shell; - } - - /** - * Uninstall application - */ - public function uninstall() - { - $this->_shell->execute('php -f %s -- --uninstall', array($this->_installerScript)); - } - - /** - * Install application according to installation options and apply fixtures - * - * @param array $options - * @param array $fixtureFiles - */ - public function install(array $options, array $fixtureFiles = array()) - { - $this->_install($options); - $this->_bootstrap(); - $this->_applyFixtures($fixtureFiles); - $this->_reindex(); - $this->_updateFilesystemPermissions(); - } - - /** - * Perform installation of Magento app - * - * @param array $options - */ - protected function _install($options) - { - $installCmd = 'php -f %s --'; - $installCmdArgs = array($this->_installerScript); - foreach ($options as $optionName => $optionValue) { - $installCmd .= " --$optionName %s"; - $installCmdArgs[] = $optionValue; - } - $this->_shell->execute($installCmd, $installCmdArgs); - } - - /** - * Bootstrap installed application - */ - protected function _bootstrap() - { - Mage::app(); - } - - /** - * Apply fixture scripts - * - * @param array $fixtureFiles - */ - protected function _applyFixtures(array $fixtureFiles) - { - foreach ($fixtureFiles as $oneFixtureFile) { - require $oneFixtureFile; - } - } - - /** - * Run all indexer processes - */ - protected function _reindex() - { - /** @var $indexer Mage_Index_Model_Indexer */ - $indexer = Mage::getModel('Mage_Index_Model_Indexer'); - /** @var $process Mage_Index_Model_Process */ - foreach ($indexer->getProcessesCollection() as $process) { - if ($process->getIndexer()->isVisible()) { - $process->reindexEverything(); - } - } - } - - /** - * Update permissions for `var` directory - */ - protected function _updateFilesystemPermissions() - { - Varien_Io_File::chmodRecursive(Mage::getBaseDir('var'), 0777); - } -} diff --git a/dev/tests/performance/framework/Magento/Performance/Bootstrap.php b/dev/tests/performance/framework/Magento/Performance/Bootstrap.php new file mode 100644 index 0000000000000..229c84f566458 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Bootstrap.php @@ -0,0 +1,76 @@ +_config = new Magento_Performance_Config($configData, $testsBaseDir, $appBaseDir); + } + + /** + * Ensure reports directory exists, empty, and has write permissions + * + * @throws Magento_Exception + */ + public function cleanupReports() + { + $reportDir = $this->_config->getReportDir(); + if (file_exists($reportDir) && !Varien_Io_File::rmdirRecursive($reportDir)) { + throw new Magento_Exception("Cannot cleanup reports directory '$reportDir'."); + } + mkdir($reportDir, 0777); + } + + /** + * Return configuration for the tests + * + * @return Magento_Performance_Config + */ + public function getConfig() + { + return $this->_config; + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Config.php b/dev/tests/performance/framework/Magento/Performance/Config.php new file mode 100644 index 0000000000000..4abf0f5485beb --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Config.php @@ -0,0 +1,346 @@ +_validateData($configData); + if (!is_dir($testsBaseDir)) { + throw new Magento_Exception("Base directory '$testsBaseDir' does not exist."); + } + $this->_reportDir = $testsBaseDir . DIRECTORY_SEPARATOR . $configData['report_dir']; + + $applicationOptions = $configData['application']; + $this->_applicationBaseDir = $appBaseDir; + $this->_applicationUrlHost = $applicationOptions['url_host']; + $this->_applicationUrlPath = $applicationOptions['url_path']; + $this->_adminOptions = $applicationOptions['admin']; + + if (isset($applicationOptions['installation'])) { + $installConfig = $applicationOptions['installation']; + $this->_installOptions = $installConfig['options']; + } + + $this->_expandScenarios($configData['scenario'], $testsBaseDir); + } + + /** + * Expands scenario options and file paths glob to a list of scenarios + * @param array $scenarios + * @param string $baseDir + * @throws InvalidArgumentException + * @throws Magento_Exception + */ + protected function _expandScenarios($scenarios, $baseDir) + { + if (!isset($scenarios['scenarios'])) { + return; + } + if (!is_array($scenarios['scenarios'])) { + throw new InvalidArgumentException("'scenario' => 'scenarios' option must be an array"); + } + + $commonScenarioConfig = $this->_composeCommonScenarioConfig(); + foreach ($scenarios['scenarios'] as $scenarioName => $scenarioConfig) { + // Scenarios without additional settings can be presented as direct values of 'scenario' array + if (!is_array($scenarioConfig)) { + $scenarioName = $scenarioConfig; + $scenarioConfig = array(); + } + + // Scenario file + $scenarioFile = realpath($baseDir . DIRECTORY_SEPARATOR . $scenarioName); + if (!file_exists($scenarioFile)) { + throw new Magento_Exception("Scenario '$scenarioName' doesn't exist in $baseDir"); + } + + // Compose config, using global config + $scenarioConfig = $this->_getCompleteArray($commonScenarioConfig, $scenarioConfig); + if (isset($scenarios['common_config'])) { + $scenarioConfig = $this->_getCompleteArray($scenarioConfig, $scenarios['common_config']); + } + + // Fixtures + $scenarioConfig['fixtures'] = $this->_expandScenarioFixtures($scenarioConfig, $baseDir); + + // Store scenario + $this->_scenarios[$scenarioFile] = $scenarioConfig; + } + } + + /** + * Validate high-level configuration structure + * + * @param array $configData + * @throws Magento_Exception + */ + protected function _validateData(array $configData) + { + // Validate 1st-level options data + $requiredKeys = array('application', 'scenario', 'report_dir'); + foreach ($requiredKeys as $requiredKeyName) { + if (empty($configData[$requiredKeyName])) { + throw new Magento_Exception("Configuration array must define '$requiredKeyName' key."); + } + } + + // Validate admin options data + $requiredAdminKeys = array('frontname', 'username', 'password'); + foreach ($requiredAdminKeys as $requiredKeyName) { + if (empty($configData['application']['admin'][$requiredKeyName])) { + throw new Magento_Exception("Admin options array must define '$requiredKeyName' key."); + } + } + } + + /** + * Compose list of all parameters, that must be provided for all scenarios + * + * @return array + */ + protected function _composeCommonScenarioConfig() + { + $adminOptions = $this->getAdminOptions(); + return array( + 'arguments' => array( + Magento_Performance_Scenario_Arguments::ARG_HOST => $this->getApplicationUrlHost(), + Magento_Performance_Scenario_Arguments::ARG_PATH => $this->getApplicationUrlPath(), + Magento_Performance_Scenario_Arguments::ARG_ADMIN_FRONTNAME => $adminOptions['frontname'], + Magento_Performance_Scenario_Arguments::ARG_ADMIN_USERNAME => $adminOptions['username'], + Magento_Performance_Scenario_Arguments::ARG_ADMIN_PASSWORD => $adminOptions['password'], + ), + 'settings' => array(), + 'fixtures' => array() + ); + } + + /** + * Retrieve new array composed for an input array by supplementing missing values + * + * @param array $input + * @param array $supplement + * @return array + */ + protected function _getCompleteArray(array $input, array $supplement) + { + foreach ($supplement as $key => $sourceVal) { + if (!empty($input[$key])) { + $input[$key] += $sourceVal; + } else { + $input[$key] = $sourceVal; + } + } + return $input; + } + + /** + * Process fixture file names from scenario config and compose array of full file paths to them + * + * @param array $scenarioConfig + * @param string $baseDir + * @return array + * @throws InvalidArgumentException|Magento_Exception + */ + protected function _expandScenarioFixtures(array $scenarioConfig, $baseDir) + { + if (!is_array($scenarioConfig['fixtures'])) { + throw new InvalidArgumentException( + "Scenario 'fixtures' option must be an array, not a value: '{$scenarioConfig['fixtures']}'" + ); + } + + $result = array(); + foreach ($scenarioConfig['fixtures'] as $fixtureName) { + $fixtureFile = $baseDir . DIRECTORY_SEPARATOR . $fixtureName; + if (!file_exists($fixtureFile)) { + throw new Magento_Exception("Fixture '$fixtureName' doesn't exist in $baseDir"); + } + $result[] = $fixtureFile; + } + + return $result; + } + + /** + * Retrieve application base directory + * + * @return string + */ + public function getApplicationBaseDir() + { + return $this->_applicationBaseDir; + } + + /** + * Retrieve application URL host component + * + * @return string + */ + public function getApplicationUrlHost() + { + return $this->_applicationUrlHost; + } + + /** + * Retrieve application URL path component + * + * @return string + */ + public function getApplicationUrlPath() + { + return $this->_applicationUrlPath; + } + + /** + * Retrieve admin options - backend path and admin user credentials + * + * @return array + */ + public function getAdminOptions() + { + return $this->_adminOptions; + } + + /** + * Retrieve application installation options + * + * @return array + */ + public function getInstallOptions() + { + return $this->_installOptions; + } + + /** + * Retrieve scenario files + * + * @return array + */ + public function getScenarios() + { + return array_keys($this->_scenarios); + } + + /** + * Retrieve arguments for a scenario + * + * @param string $scenarioFile + * @return Magento_Performance_Scenario_Arguments|null + */ + public function getScenarioArguments($scenarioFile) + { + if (isset($this->_scenarios[$scenarioFile]['arguments'])) { + return new Magento_Performance_Scenario_Arguments($this->_scenarios[$scenarioFile]['arguments']); + } + return null; + } + + /** + * Retrieve settings for a scenario + * + * @param string $scenarioFile + * @return array + */ + public function getScenarioSettings($scenarioFile) + { + if (isset($this->_scenarios[$scenarioFile]['settings'])) { + return $this->_scenarios[$scenarioFile]['settings']; + } + return array(); + } + + /** + * Retrieve fixtures for a scenario + * + * @param string $scenarioFile + * @return array + */ + public function getScenarioFixtures($scenarioFile) + { + if (isset($this->_scenarios[$scenarioFile]['fixtures'])) { + return $this->_scenarios[$scenarioFile]['fixtures']; + } + return array(); + } + + /** + * Retrieve reports directory + * + * @return string + */ + public function getReportDir() + { + return $this->_reportDir; + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/Arguments.php b/dev/tests/performance/framework/Magento/Performance/Scenario/Arguments.php new file mode 100644 index 0000000000000..b9c3275cc0d85 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/Arguments.php @@ -0,0 +1,115 @@ + 1, self::ARG_LOOPS => 1); + foreach (array(self::ARG_USERS, self::ARG_LOOPS) as $argName) { + if (!is_int($arguments[$argName]) || $arguments[$argName] < 1) { + throw new UnexpectedValueException("Scenario argument '$argName' must be a positive integer."); + } + } + parent::__construct($arguments); + } + + /** + * Retrieve number of concurrent threads + * + * @return integer + */ + public function getUsers() + { + return $this[self::ARG_USERS]; + } + + /** + * Retrieve number of scenario execution loops + * + * @return integer + */ + public function getLoops() + { + return $this[self::ARG_LOOPS]; + } + + /** + * Deny assignment operator + * + * @param mixed $offset + * @param mixed $value + * + * @SuppressWarnings(PHPMD.UnusedFormalParameter) + */ + public function offsetSet($offset, $value) + { + $this->_denyModification(); + } + + /** + * Deny invocation of unset() function + * + * @param mixed $offset + * + * @SuppressWarnings(PHPMD.UnusedFormalParameter) + */ + public function offsetUnset($offset) + { + $this->_denyModification(); + } + + /** + * Deny modification operation by throwing an exception + * + * @throws LogicException + */ + protected function _denyModification() + { + throw new LogicException('Scenario arguments are read-only.'); + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/FailureException.php b/dev/tests/performance/framework/Magento/Performance/Scenario/FailureException.php new file mode 100644 index 0000000000000..2fbd2bd788b02 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/FailureException.php @@ -0,0 +1,33 @@ +_handlers = $handlers; + } + + /** + * Run scenario and optionally write results to report file + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_Arguments $scenarioArguments + * @param string|null $reportFile Report file to write results to, NULL disables report creation + * @return bool Whether handler was able to process scenario + */ + public function run($scenarioFile, Magento_Performance_Scenario_Arguments $scenarioArguments, $reportFile = null) + { + foreach ($this->_handlers as $oneScenarioHandler) { + /** @var $oneScenarioHandler Magento_Performance_Scenario_HandlerInterface */ + if ($oneScenarioHandler->run($scenarioFile, $scenarioArguments, $reportFile)) { + /* Stop execution upon first handling */ + return true; + } + } + return false; + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Jmeter.php b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Jmeter.php new file mode 100644 index 0000000000000..f12e74f855539 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Jmeter.php @@ -0,0 +1,130 @@ +_shell = $shell; + $this->_validateScenarioExecutable(); + } + + /** + * Validate whether scenario executable is available in the environment + */ + protected function _validateScenarioExecutable() + { + $this->_shell->execute('jmeter --version'); + } + + /** + * Run scenario and optionally write results to report file + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_Arguments $scenarioArguments + * @param string|null $reportFile Report file to write results to, NULL disables report creation + * @return bool Whether handler was able to process scenario + */ + public function run($scenarioFile, Magento_Performance_Scenario_Arguments $scenarioArguments, $reportFile = null) + { + if (pathinfo($scenarioFile, PATHINFO_EXTENSION) != 'jmx') { + return false; + } + list($scenarioCmd, $scenarioCmdArgs) = $this->_buildScenarioCmd($scenarioFile, $scenarioArguments, $reportFile); + $this->_shell->execute($scenarioCmd, $scenarioCmdArgs); + if ($reportFile) { + $this->_verifyReport($reportFile); + } + return true; + } + + /** + * Build and return scenario execution command and arguments for it + * + * @param string $scenarioFile + * @param Traversable $scenarioArgs + * @param string|null $reportFile + * @return array + */ + protected function _buildScenarioCmd($scenarioFile, Traversable $scenarioArgs, $reportFile = null) + { + $command = 'jmeter -n -t %s'; + $arguments = array($scenarioFile); + if ($reportFile) { + $command .= ' -l %s'; + $arguments[] = $reportFile; + } + foreach ($scenarioArgs as $key => $value) { + $command .= ' %s'; + $arguments[] = "-J$key=$value"; + } + return array($command, $arguments); + } + + /** + * Verify that report XML structure contains no failures and no errors + * @link http://wiki.apache.org/jmeter/JtlTestLog + * + * @param string $reportFile + * @throws Magento_Exception + * @throws Magento_Performance_Scenario_FailureException + */ + protected function _verifyReport($reportFile) + { + if (!file_exists($reportFile)) { + throw new Magento_Exception("Report file '$reportFile' has not been created."); + } + $reportXml = simplexml_load_file($reportFile); + $failedAssertions = $reportXml->xpath( + '/testResults/*/assertionResult[failure[text()="true"] or error[text()="true"]]' + ); + if ($failedAssertions) { + $failureMessages = array(); + foreach ($failedAssertions as $assertionResult) { + if (isset($assertionResult->failureMessage)) { + $failureMessages[] = (string)$assertionResult->failureMessage; + } + if (isset($assertionResult->errorMessage)) { + $failureMessages[] = (string)$assertionResult->errorMessage; + } + } + throw new Magento_Performance_Scenario_FailureException(implode(PHP_EOL, $failureMessages)); + } + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Php.php b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Php.php new file mode 100644 index 0000000000000..e1faa965afef7 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Php.php @@ -0,0 +1,180 @@ +_shell = $shell; + $this->_validateScenarioExecutable(); + } + + /** + * Validate whether scenario executable is available in the environment + */ + protected function _validateScenarioExecutable() + { + $this->_shell->execute('php --version'); + } + + /** + * Run scenario and optionally write results to report file + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_Arguments $scenarioArguments + * @param string|null $reportFile Report file to write results to, NULL disables report creation + * @return bool Whether handler was able to process scenario + * + * @todo Implement execution in concurrent threads defined by the "users" scenario argument + */ + public function run($scenarioFile, Magento_Performance_Scenario_Arguments $scenarioArguments, $reportFile = null) + { + if (pathinfo($scenarioFile, PATHINFO_EXTENSION) != 'php') { + return false; + } + $reportRows = array(); + for ($i = 0; $i < $scenarioArguments->getLoops(); $i++) { + $oneReportRow = $this->_executeScenario($scenarioFile, $scenarioArguments); + $reportRows[] = $oneReportRow; + } + if ($reportFile) { + $this->_writeReport($reportRows, $reportFile); + } + $this->_verifyReport($reportRows); + return true; + } + + /** + * Execute scenario file and return measurement results + * + * @param string $scenarioFile + * @param Traversable $scenarioArgs + * @return array + */ + protected function _executeScenario($scenarioFile, Traversable $scenarioArgs) + { + list($scenarioCmd, $scenarioCmdArgs) = $this->_buildScenarioCmd($scenarioFile, $scenarioArgs); + $result = array( + 'scenario' => $scenarioFile, + 'timestamp' => time(), + 'success' => true, + 'time' => null, + 'exit_code' => 0, + 'output' => '', + ); + $executionTime = microtime(true); + try { + $result['output'] = $this->_shell->execute($scenarioCmd, $scenarioCmdArgs); + } catch (Magento_Exception $e) { + $result['success'] = false; + $result['exit_code'] = $e->getPrevious()->getCode(); + $result['output'] = $e->getPrevious()->getMessage(); + } + $executionTime = (microtime(true) - $executionTime); + $executionTime *= 1000; // second -> millisecond + $result['time'] = (int)round($executionTime); + return $result; + } + + /** + * Build and return scenario execution command and arguments for it + * + * @param string $scenarioFile + * @param Traversable $scenarioArgs + * @return array + */ + protected function _buildScenarioCmd($scenarioFile, Traversable $scenarioArgs) + { + $command = 'php -f %s --'; + $arguments = array($scenarioFile); + foreach ($scenarioArgs as $paramName => $paramValue) { + $command .= " --$paramName=%s"; + $arguments[] = $paramValue; + } + return array($command, $arguments); + } + + /** + * Write report into file in Apache JMeter's JTL format + * @link http://wiki.apache.org/jmeter/JtlTestLog + * + * @param array $reportRows + * @param string $reportFile + */ + protected function _writeReport(array $reportRows, $reportFile) + { + $xml = array(); + $xml[] = ''; + $xml[] = ''; + foreach ($reportRows as $index => $oneReportRow) { + $xml[] = ''; + } + $xml[] = ''; + file_put_contents($reportFile, implode(PHP_EOL, $xml)); + } + + /** + * Verify that report does not contain failures + * + * @param array $reportRows + * @throws Magento_Performance_Scenario_FailureException + */ + protected function _verifyReport(array $reportRows) + { + $failureMessages = array(); + foreach ($reportRows as $oneReportRow) { + if (!$oneReportRow['success']) { + $failureMessages[] = $oneReportRow['output']; + } + } + if ($failureMessages) { + throw new Magento_Performance_Scenario_FailureException(implode(PHP_EOL, $failureMessages)); + } + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Statistics.php b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Statistics.php new file mode 100644 index 0000000000000..9236b6890a35c --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/Handler/Statistics.php @@ -0,0 +1,167 @@ +_handler = $handlerInstance; + } + + /** + * Run scenario and optionally write results to report file + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_Arguments $scenarioArguments + * @param string|null $reportFile Report file to write results to, NULL disables report creation + * @return bool Whether handler was able to process scenario + */ + public function run($scenarioFile, Magento_Performance_Scenario_Arguments $scenarioArguments, $reportFile = null) + { + if (!array_key_exists($scenarioFile, $this->_executedScenarios)) { + $this->_notifyScenarioFirstRun($scenarioFile); + } + try { + $result = $this->_handler->run($scenarioFile, $scenarioArguments, $reportFile); + if ($result) { + $this->_recordScenarioResult($scenarioFile, self::RESULT_SUCCESS); + } + return $result; + } catch (Magento_Performance_Scenario_FailureException $scenarioFailure) { + $this->_recordScenarioResult($scenarioFile, $scenarioFailure); + $this->_notifyScenarioFailure($scenarioFile, $scenarioFailure); + return true; + } + } + + /** + * Retrieve scenario failures + * + * @return array + */ + public function getFailures() + { + $failures = array(); + foreach ($this->_executedScenarios as $scenarioFile => $scenarioResult) { + if ($scenarioResult !== self::RESULT_SUCCESS) { + $failures[$scenarioFile] = $scenarioResult; + } + } + return $failures; + } + + /** + * Set callback for scenario first run event + * + * @param callable $callback + */ + public function onScenarioFirstRun($callback) + { + $this->_onScenarioFirstRun = $callback; + } + + /** + * Set callback for scenario failure event + * + * @param callable $callback + */ + public function onScenarioFailure($callback) + { + $this->_onScenarioFailure = $callback; + } + + /** + * Notify about scenario first run event + * + * @param string $scenarioFile + */ + protected function _notifyScenarioFirstRun($scenarioFile) + { + if ($this->_onScenarioFirstRun) { + call_user_func($this->_onScenarioFirstRun, $scenarioFile); + } + } + + /** + * Notify about scenario failure event + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_FailureException $failure + */ + protected function _notifyScenarioFailure($scenarioFile, Magento_Performance_Scenario_FailureException $failure) + { + if ($this->_onScenarioFailure) { + call_user_func($this->_onScenarioFailure, $scenarioFile, $failure); + } + } + + /** + * Store result of scenario execution + * + * @param string $scenarioFile + * @param Magento_Performance_Scenario_FailureException|null $result + */ + protected function _recordScenarioResult($scenarioFile, + Magento_Performance_Scenario_FailureException $result = null + ) { + if (!array_key_exists($scenarioFile, $this->_executedScenarios)) { + $this->_executedScenarios[$scenarioFile] = $result; + } + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Scenario/HandlerInterface.php b/dev/tests/performance/framework/Magento/Performance/Scenario/HandlerInterface.php new file mode 100644 index 0000000000000..48703ce487033 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Scenario/HandlerInterface.php @@ -0,0 +1,41 @@ + 1, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 2, + ); + + /** + * Constructor + * + * @param Magento_Performance_Config $config + * @param Magento_Application $application + * @param Magento_Performance_Scenario_HandlerInterface $scenarioHandler + */ + public function __construct(Magento_Performance_Config $config, + Magento_Application $application, Magento_Performance_Scenario_HandlerInterface $scenarioHandler + ) { + $this->_config = $config; + $this->_application = $application; + $this->_scenarioHandler = $scenarioHandler; + } + + /** + * Run entire test suite of scenarios + * + * @throws Magento_Exception + */ + public function run() + { + $scenarios = $this->_getOptimizedScenarioList(); + + foreach ($scenarios as $scenarioFile) { + $scenarioArguments = $this->_config->getScenarioArguments($scenarioFile); + $scenarioSettings = $this->_config->getScenarioSettings($scenarioFile); + $scenarioFixtures = $this->_config->getScenarioFixtures($scenarioFile); + + $this->_application->applyFixtures($scenarioFixtures); + + /* warm up cache, if any */ + if (empty($scenarioSettings[self::SETTING_SKIP_WARM_UP])) { + $warmUpArgs = new Magento_Performance_Scenario_Arguments( + $this->_warmUpArguments + (array)$scenarioArguments + ); + $this->_scenarioHandler->run($scenarioFile, $warmUpArgs); + } + + /* full run with reports recording */ + $scenarioName = preg_replace('/\..+?$/', '', basename($scenarioFile)); + $reportFile = $this->_config->getReportDir() . DIRECTORY_SEPARATOR . $scenarioName . '.jtl'; + if (!$this->_scenarioHandler->run($scenarioFile, $scenarioArguments, $reportFile)) { + throw new Magento_Exception("Unable to run scenario '$scenarioFile', format is not supported."); + } + } + } + + /** + * Compose optimal list of scenarios, so that Magento reinstalls will be reduced among scenario executions + * + * @return array + */ + protected function _getOptimizedScenarioList() + { + $optimizer = new Magento_Performance_Testsuite_Optimizer(); + $scenarios = array(); + foreach ($this->_config->getScenarios() as $scenarioFile) { + $scenarios[$scenarioFile] = $this->_config->getScenarioFixtures($scenarioFile); + } + return $optimizer->run($scenarios); + } +} diff --git a/dev/tests/performance/framework/Magento/Performance/Testsuite/Optimizer.php b/dev/tests/performance/framework/Magento/Performance/Testsuite/Optimizer.php new file mode 100644 index 0000000000000..7ccdbdef84ca8 --- /dev/null +++ b/dev/tests/performance/framework/Magento/Performance/Testsuite/Optimizer.php @@ -0,0 +1,122 @@ +_selectNextScenario($currentScenario, $scenarios); + $result[] = $scenarioFile; + + $currentScenario = $scenarios[$scenarioFile]; + unset($scenarios[$scenarioFile]); + } + + return $result; + } + + /** + * Choose scenario, most suitable to be added next to queue. + * + * If $exemplarScenario is not null, then a try is made to choose compatible scenario (considering the set + * of fixtures $exemplarScenario has). If a scenario is not chosen, or $exemplarScenario is not provided - then + * just any scenario with minimal number of fixtures is chosen. + * + * @param array|null $exemplarScenario + * @param array $scenarios + * @return string + */ + protected function _selectNextScenario($exemplarScenario, array $scenarios) + { + $result = null; + if ($exemplarScenario) { + $result = $this->_selectCompatibleScenario($exemplarScenario, $scenarios); + } + if (!$result) { + $result = $this->_selectScenarioWithMinFixtures($scenarios); + } + return $result; + } + + /** + * Choose scenario, which contains same fixtures as $exemplarScenario + some additional fixtures. + * Prefer the one with minimal number of additional fixtures. + * + * @param array $exemplarScenario + * @param array $scenarios + * @return string|null + */ + protected function _selectCompatibleScenario($exemplarScenario, array $scenarios) + { + $chosenKey = null; + $chosenNumFixtures = null; + foreach ($scenarios as $key => $scenarioFixtures) { + if (array_diff($exemplarScenario, $scenarioFixtures)) { + continue; // Fixture lists are incompatible + } + + $numFixtures = count($scenarioFixtures); + if (($chosenKey === null) || ($chosenNumFixtures > $numFixtures)) { + $chosenKey = $key; + $chosenNumFixtures = $numFixtures; + } + } + + return $chosenKey; + } + + /** + * Choose a scenario with the minimal number of fixtures. Remove it from list of all scenarios. + * + * @param array $scenarios + * @return string + */ + protected function _selectScenarioWithMinFixtures(array $scenarios) + { + $chosenKey = key($scenarios); + foreach ($scenarios as $key => $scenarioFixtures) { + if (count($scenarios[$chosenKey]) > count($scenarioFixtures)) { + $chosenKey = $key; + } + } + + return $chosenKey; + } +} diff --git a/dev/tests/performance/framework/Magento/Scenario.php b/dev/tests/performance/framework/Magento/Scenario.php deleted file mode 100644 index 1358203b6f928..0000000000000 --- a/dev/tests/performance/framework/Magento/Scenario.php +++ /dev/null @@ -1,187 +0,0 @@ -_shell = $shell; - $this->_jMeterJarFile = $jMeterJarFile; - $this->_reportDir = $reportDir; - - $this->_validateScenarioExecutable(); - $this->_ensureReportDirExists(); - } - - /** - * Validate whether scenario executable is available in the environment - */ - protected function _validateScenarioExecutable() - { - $this->_shell->execute('java -jar %s --version', array($this->_jMeterJarFile)); - } - - /** - * Create writable reports directory, if it does not exist - */ - protected function _ensureReportDirExists() - { - if (!is_dir($this->_reportDir)) { - mkdir($this->_reportDir, 0777, true); - } - } - - /** - * Run performance testing scenario and write results to the report file - * - * @param string $scenarioFile - * @param array $scenarioParams - * @throws Magento_Exception - */ - public function run($scenarioFile, array $scenarioParams) - { - if (!file_exists($scenarioFile)) { - throw new Magento_Exception("Scenario file '$scenarioFile' does not exist."); - } - if (empty($scenarioParams[self::PARAM_HOST]) || empty($scenarioParams[self::PARAM_PATH])) { - throw new Magento_Exception(sprintf( - "Scenario parameters '%s' and '%s' must be specified.", self::PARAM_HOST, self::PARAM_PATH - )); - } - - // Dry run - just to warm-up the system - $dryScenarioParams = array_merge($scenarioParams, array(self::PARAM_USERS => 1, self::PARAM_LOOPS => 2)); - $this->_runScenario($scenarioFile, $dryScenarioParams); - - // Full run - $fullScenarioParams = $scenarioParams + array(self::PARAM_USERS => 1, self::PARAM_LOOPS => 1); - $reportFile = $this->_reportDir . DIRECTORY_SEPARATOR . basename($scenarioFile, '.jmx') . '.jtl'; - $this->_runScenario($scenarioFile, $fullScenarioParams, $reportFile); - } - - /** - * Run performance testing scenario. - * - * @param string $scenarioFile - * @param array $scenarioParams - * @param string|null $reportFile - */ - protected function _runScenario($scenarioFile, array $scenarioParams, $reportFile = null) - { - list($scenarioCmd, $scenarioCmdArgs) = $this->_buildScenarioCmd($scenarioFile, $scenarioParams, $reportFile); - $this->_shell->execute($scenarioCmd, $scenarioCmdArgs); - if ($reportFile) { - $this->_verifyReport($reportFile); - } - } - - /** - * Build and return scenario execution command and arguments for it - * - * @param string $scenarioFile - * @param array $scenarioParams - * @param string|null $reportFile - * @return array - */ - protected function _buildScenarioCmd($scenarioFile, array $scenarioParams, $reportFile = null) - { - $command = 'java -jar %s -n -t %s'; - $arguments = array($this->_jMeterJarFile, $scenarioFile); - if ($reportFile) { - $command .= ' -l %s'; - $arguments[] = $reportFile; - } - foreach ($scenarioParams as $key => $value) { - $command .= ' %s'; - $arguments[] = "-J$key=$value"; - } - return array($command, $arguments); - } - - /** - * Verify that report XML structure contains no failures and no errors - * - * @param string $reportFile - * @throws Magento_Exception - */ - protected function _verifyReport($reportFile) - { - if (!file_exists($reportFile)) { - throw new Magento_Exception("Report file '$reportFile' has not been created."); - } - $reportXml = simplexml_load_file($reportFile); - - $failedAssertions = $reportXml->xpath('//assertionResult[failure[text()="true"] or error[text()="true"]]'); - if ($failedAssertions) { - $failureMessages = array("Scenario has failed."); - foreach ($failedAssertions as $assertionResult) { - if (isset($assertionResult->failureMessage)) { - $failureMessages[] = (string)$assertionResult->failureMessage; - } - if (isset($assertionResult->errorMessage)) { - $failureMessages[] = (string)$assertionResult->errorMessage; - } - } - throw new Magento_Exception(implode(PHP_EOL, $failureMessages)); - } - } -} diff --git a/dev/tests/performance/framework/bootstrap.php b/dev/tests/performance/framework/bootstrap.php index 86d36448e8c2c..efc1eae356ca5 100644 --- a/dev/tests/performance/framework/bootstrap.php +++ b/dev/tests/performance/framework/bootstrap.php @@ -32,33 +32,6 @@ require_once "$magentoBaseDir/app/bootstrap.php"; Magento_Autoload::getInstance()->addIncludePath("$testsBaseDir/framework"); -$configFile = "$testsBaseDir/config.php"; -$configFile = file_exists($configFile) ? $configFile : "$configFile.dist"; -$configData = require($configFile); -$config = new Magento_Config($configData, $testsBaseDir); - -$installOptions = $config->getInstallOptions(); -if ($installOptions) { - // Populate install options with global options - $baseUrl = 'http://' . $config->getApplicationUrlHost() . $config->getApplicationUrlPath(); - $installOptions = array_merge($installOptions, array('url' => $baseUrl, 'secure_base_url' => $baseUrl)); - $adminOptions = $config->getAdminOptions(); - foreach ($adminOptions as $key => $val) { - $installOptions['admin_' . $key] = $val; - } - - // Install application - $installer = new Magento_Installer($magentoBaseDir . '/dev/shell/install.php', new Magento_Shell(true)); - echo 'Uninstalling application' . PHP_EOL; - $installer->uninstall(); - echo "Installing application at '$baseUrl'" . PHP_EOL; - $installer->install($installOptions, $config->getFixtureFiles()); - echo PHP_EOL; -} - -$reportDir = $config->getReportDir(); -if (file_exists($reportDir) && !Varien_Io_File::rmdirRecursive($reportDir)) { - throw new Magento_Exception("Cannot cleanup reports directory '$reportDir'."); -} - -return $config; +$bootstrap = new Magento_Performance_Bootstrap($testsBaseDir, $magentoBaseDir); +$bootstrap->cleanupReports(); +return $bootstrap->getConfig(); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/ApplicationTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/ApplicationTest.php new file mode 100644 index 0000000000000..b1a443865ca34 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/ApplicationTest.php @@ -0,0 +1,310 @@ +_fixtureDir = __DIR__ . '/Performance/_files'; + $this->_fixtureConfigData = require($this->_fixtureDir . '/config_data.php'); + + $this->_installerScript = realpath($this->_fixtureDir . '/app_base_dir//dev/shell/install.php'); + + $this->_config = new Magento_Performance_Config( + $this->_fixtureConfigData, $this->_fixtureDir, $this->_fixtureDir . '/app_base_dir' + ); + $this->_shell = $this->getMock('Magento_Shell', array('execute')); + + $this->_object = $this->getMock( + 'Magento_Application', + array('_bootstrap', '_cleanupMage', '_reindex', '_updateFilesystemPermissions'), + array($this->_config, $this->_shell) + ); + $this->_object->expects($this->any()) + ->method('_reindex') + ->will($this->returnValue($this->_object)); + } + + protected function tearDown() + { + unset($this->_config); + unset($this->_shell); + unset($this->_object); + } + + /** + * @expectedException Magento_Exception + */ + public function testConstructorException() + { + $invalidAppDir = __DIR__; + new Magento_Application( + new Magento_Performance_Config($this->_fixtureConfigData, $this->_fixtureDir, $invalidAppDir), + $this->_shell + ); + } + + public function testInstall() + { + $this->_shell + ->expects($this->at(1)) + ->method('execute') + ->with( + // @codingStandardsIgnoreStart + 'php -f %s -- --option1 %s --option2 %s --url %s --secure_base_url %s --admin_frontname %s --admin_username %s --admin_password %s', + // @codingStandardsIgnoreEnd + array( + $this->_installerScript, + 'value 1', + 'value 2', + 'http://127.0.0.1/', + 'http://127.0.0.1/', + 'backend', + 'admin', + 'password1', + ) + ) + ; + + $this->_object + ->expects($this->once()) + ->method('_reindex') + ; + + $this->_object + ->expects($this->once()) + ->method('_updateFilesystemPermissions') + ; + + $this->_object->install(); + } + + public function testApplyFixtures() + { + $application = $this->_buildApplicationForFixtures(); + + $this->_testApplyFixtures( + $application, + array(), + array(), + array('uninstall', 'install', 'reindex', 'updateFilesystemPermissions'), + 'Testing initial install' + ); + + $this->_testApplyFixtures( + $application, + array('fixture1'), + array('fixture1'), + array('bootstrap', 'reindex', 'updateFilesystemPermissions'), + 'Testing first fixture' + ); + + $this->_testApplyFixtures( + $application, + array('fixture1'), + array(), + array(), + 'Testing same fixture' + ); + + $this->_testApplyFixtures( + $application, + array('fixture2', 'fixture1'), + array('fixture2'), + array('bootstrap', 'reindex', 'updateFilesystemPermissions'), + 'Testing superior fixture set' + ); + + $this->_testApplyFixtures( + $application, + array('fixture2', 'fixture3'), + array('fixture2', 'fixture3'), + array('uninstall', 'install', 'bootstrap', 'reindex', 'updateFilesystemPermissions'), + 'Testing incompatible fixture set' + ); + } + + /** + * Builds application mocked object, so it will produce tracked events, used for fixture application testing + * + * @return Magento_Application|PHPUnit_Framework_MockObject_MockObject + */ + protected function _buildApplicationForFixtures() + { + $test = $this; + + $funcShellEvent = function ($command, $arguments) use ($test) { + $command = vsprintf($command, $arguments); + if (strpos($command, 'uninstall') !== false) { + $test->addAppEvent('uninstall'); + } else if (strpos($command, 'install') !== false) { + $test->addAppEvent('install'); + } + }; + $this->_shell->expects($this->any()) + ->method('execute') + ->will($this->returnCallback($funcShellEvent)); + + $app = $this->getMock( + 'Magento_Application', + array('_bootstrap', '_reindex', '_updateFilesystemPermissions', '_cleanupMage'), + array($this->_config, $this->_shell) + ); + + // @codingStandardsIgnoreStart + $app->expects($this->any()) + ->method('_bootstrap') + ->will($this->returnCallback(function () use ($test, $app) { + $test->addAppEvent('bootstrap'); + return $app; + }) + ); + + $app->expects($this->any()) + ->method('_reindex') + ->will($this->returnCallback(function () use ($test, $app) { + $test->addAppEvent('reindex'); + return $app; + }) + ); + + $app->expects($this->any()) + ->method('_updateFilesystemPermissions') + ->will($this->returnCallback(function () use ($test, $app) { + $test->addAppEvent('updateFilesystemPermissions'); + return $app; + }) + ); + // @codingStandardsIgnoreEnd + + return $app; + } + + /** + * Test application of fixtures, asserting that proper fixtures have been applied, + * and application events have happened + * + * @param Magento_Application|PHPUnit_Framework_MockObject_MockObject $application + * @param array $fixtures + * @param array $expectedFixtures + * @param array $expectedEvents + * @param string $message + */ + protected function _testApplyFixtures($application, $fixtures, $expectedFixtures, $expectedEvents, $message) + { + // Prepare + $nameToPathFunc = function ($fixture) { + return __DIR__ . "/_files/application_test/{$fixture}.php"; + }; + $fixtures = array_map($nameToPathFunc, $fixtures); + + $this->_appEvents = array(); + $this->_fixtureEvents = array(); + + // Run + $GLOBALS['applicationTestForFixtures'] = $this; // Expose itself to fixtures + try { + $application->applyFixtures($fixtures); + + // Assert expectations + $fixtureEvents = array_keys($this->_fixtureEvents); + sort($fixtureEvents); + sort($expectedFixtures); + $this->assertEquals($expectedFixtures, $fixtureEvents, "$message - fixtures applied are wrong"); + + $appEvents = array_keys($this->_appEvents); + sort($appEvents); + sort($expectedEvents); + $this->assertEquals($expectedEvents, $appEvents, "$message - application management is wrong"); + + unset($GLOBALS['applicationTestForFixtures']); + } catch (Exception $e) { + unset($GLOBALS['applicationTestForFixtures']); + throw $e; + } + } + + /** + * Log event that happened in application object + * + * @param string $name + */ + public function addAppEvent($name) + { + $this->_appEvents[$name] = true; + } + + /** + * Log event that happened in fixtures + * + * @param string $name + */ + public function addFixtureEvent($name) + { + $this->_fixtureEvents[$name] = true; + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/ConfigTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/ConfigTest.php deleted file mode 100644 index 8be5813558d98..0000000000000 --- a/dev/tests/performance/framework/tests/unit/testsuite/Magento/ConfigTest.php +++ /dev/null @@ -1,257 +0,0 @@ - array( - 'url_host' => '127.0.0.1', - 'url_path' => '/', - 'admin' => array( - 'frontname' => 'backend', - 'username' => 'admin', - 'password' => 'password1', - ), - 'installation' => array( - 'options' => array( - 'option1' => 'value 1', - 'option2' => 'value 2', - ), - 'fixture_files' => array( - 'fixture.php', - ), - ), - ), - 'scenario' => array( - 'files' => array( - 'scenario.jmx', - 'scenario_error.jmx', - 'scenario_failure.jmx', - ), - 'common_params' => array( - 'param1' => 'value 1', - 'param2' => 'value 2', - ), - 'scenario_params' => array( - 'scenario.jmx' => array( - 'param2' => 'overridden value 2', - ), - ), - ), - 'report_dir' => 'report', - ); - - protected function setUp() - { - $this->_object = new Magento_Config($this->_sampleConfigData, __DIR__ . DIRECTORY_SEPARATOR . '_files'); - } - - protected function tearDown() - { - unset($this->_object); - } - - /** - * @dataProvider constructorExceptionDataProvider - * @param array $configData - * @param string $baseDir - * @param string $expectedException - * @param string $expectedExceptionMsg - */ - public function testConstructorException(array $configData, $baseDir, $expectedException, $expectedExceptionMsg) - { - $this->setExpectedException($expectedException, $expectedExceptionMsg); - new Magento_Config($configData, $baseDir); - } - - /** - * @return array - */ - public function constructorExceptionDataProvider() - { - return array( - 'non-existing base dir' => array( - $this->_sampleConfigData, - 'non_existing_dir', - 'Magento_Exception', - "Base directory 'non_existing_dir' does not exist", - ), - 'invalid fixtures format' => array( - array_merge( - $this->_sampleConfigData, array( - 'application' => array( - 'url_host' => '127.0.0.1', - 'url_path' => '/', - 'admin' => array( - 'frontname' => 'backend', - 'username' => 'admin', - 'password' => 'password1', - ), - 'installation' => array( - 'options' => array( - 'option1' => 'value 1', - 'option2' => 'value 2', - ), - 'fixture_files' => 'string_fixtures_*.php', - ), - ) - ) - ), - __DIR__ . DIRECTORY_SEPARATOR . '_files', - 'InvalidArgumentException', - "'application' => 'installation' => 'fixture_files' option must be array", - ), - 'non-existing fixture' => array( - array_merge_recursive( - $this->_sampleConfigData, - array('application' => - array( - 'installation' => array('fixture_files' => array('non_existing_fixture.php')), - ) - ) - ), - __DIR__ . DIRECTORY_SEPARATOR . '_files', - 'Magento_Exception', - "Fixture 'non_existing_fixture.php' doesn't exist", - ), - 'invalid scenarios format' => array( - array_merge( - $this->_sampleConfigData, - array('scenario' => array('files' => 'string_fixtures_*.jmx')) - ), - __DIR__ . DIRECTORY_SEPARATOR . '_files', - 'InvalidArgumentException', - "'scenarios' => 'files' option must be array", - ), - 'non-existing scenario' => array( - array_merge( - $this->_sampleConfigData, - array('scenario' => array('files' => array('non_existing_scenario.jmx'))) - ), - __DIR__ . DIRECTORY_SEPARATOR . '_files', - 'Magento_Exception', - "Scenario 'non_existing_scenario.jmx' doesn't exist", - ), - ); - } - - public function testGetApplicationUrlHost() - { - $this->assertEquals('127.0.0.1', $this->_object->getApplicationUrlHost()); - } - - public function testGetApplicationUrlPath() - { - $this->assertEquals('/', $this->_object->getApplicationUrlPath()); - } - - public function testGetAdminOptions() - { - $expectedOptions = array( - 'frontname' => 'backend', - 'username' => 'admin', - 'password' => 'password1', - ); - $this->assertEquals($expectedOptions, $this->_object->getAdminOptions()); - } - - public function testGetInstallOptions() - { - $expectedOptions = array('option1' => 'value 1', 'option2' => 'value 2'); - $this->assertEquals($expectedOptions, $this->_object->getInstallOptions()); - } - - public function testGetScenarios() - { - $dir = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR; - $expectedScenarios = array( - $dir . 'scenario.jmx' => array( - 'param1' => 'value 1', - 'param2' => 'overridden value 2', - ), - $dir . 'scenario_error.jmx' => array( - 'param1' => 'value 1', - 'param2' => 'value 2', - ), - $dir . 'scenario_failure.jmx' => array( - 'param1' => 'value 1', - 'param2' => 'value 2', - ), - ); - - $actualScenarios = $this->_object->getScenarios(); - ksort($actualScenarios); - $this->assertEquals($expectedScenarios, $actualScenarios); - } - - public function testGetFixtureFiles() - { - $expectedFixtureFile = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'fixture.php'; - $this->assertEquals(array($expectedFixtureFile), $this->_object->getFixtureFiles()); - } - - public function testGetReportDir() - { - $expectedReportDir = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'report'; - $this->assertEquals($expectedReportDir, $this->_object->getReportDir()); - } - - public function testGetJMeterPath() - { - $oldEnv = getenv("jmeter_jar_file"); - try { - $baseDir = __DIR__ . '/_files'; - $expectedPath = '/path/to/custom/JMeterFile.jar'; - - $configData = $this->_sampleConfigData; - $configData['scenario']['jmeter_jar_file'] = $expectedPath; - $object = new Magento_Config($configData, $baseDir); - $this->assertEquals($expectedPath, $object->getJMeterPath()); - - $configData['scenario']['jmeter_jar_file'] = ''; - putenv("jmeter_jar_file={$expectedPath}"); - $object = new Magento_Config($configData, $baseDir); - $this->assertEquals($expectedPath, $object->getJMeterPath()); - - putenv('jmeter_jar_file='); - $object = new Magento_Config($configData, $baseDir); - $this->assertNotEmpty($object->getJMeterPath()); - } catch (Exception $e) { - putenv("jmeter_jar_file={$oldEnv}"); - throw $e; - } - putenv("jmeter_jar_file={$oldEnv}"); - } -} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/ImportExport/Fixture/GeneratorTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/ImportExport/Fixture/GeneratorTest.php index 682e3990b9e68..fe7e410f55511 100644 --- a/dev/tests/performance/framework/tests/unit/testsuite/Magento/ImportExport/Fixture/GeneratorTest.php +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/ImportExport/Fixture/GeneratorTest.php @@ -29,14 +29,26 @@ class Magento_ImportExport_Fixture_GeneratorTest extends PHPUnit_Framework_TestC { public function testIteratorInterface() { - $model = new Magento_ImportExport_Fixture_Generator(array('id' => '%s', 'name' => 'Static'), 2); + $pattern = array( + 'id' => '%s', + 'name' => 'Static', + // @codingStandardsIgnoreStart + /** + * PHP_CodeSniffer bug - http://pear.php.net/bugs/bug.php?id=19290 (fixed in 1.4.0) + */ + 'calculated' => function ($index) { + return $index * 10; + }, + // @codingStandardsIgnoreEnd + ); + $model = new Magento_ImportExport_Fixture_Generator($pattern, 2); $rows = array(); foreach ($model as $row) { $rows[] = $row; } $this->assertEquals(array( - array('id' => '1', 'name' => 'Static'), - array('id' => '2', 'name' => 'Static'), + array('id' => '1', 'name' => 'Static', 'calculated' => 10), + array('id' => '2', 'name' => 'Static', 'calculated' => 20), ), $rows); } } diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/InstallerTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/InstallerTest.php deleted file mode 100644 index d5f2e549dc0c5..0000000000000 --- a/dev/tests/performance/framework/tests/unit/testsuite/Magento/InstallerTest.php +++ /dev/null @@ -1,116 +0,0 @@ -_shell = $this->getMock('Magento_Shell', array('execute')); - $this->_installerScript = realpath(__DIR__ . '/_files/install_stub.php'); - $this->_object = $this->getMock( - 'Magento_Installer', - array('_bootstrap', '_reindex', '_updateFilesystemPermissions'), - array($this->_installerScript, $this->_shell) - ); - } - - protected function tearDown() - { - unset($this->_shell); - unset($this->_object); - } - - /** - * @param string $installerScriptPath - * @dataProvider constructorExceptionDataProvider - * @expectedException Magento_Exception - */ - public function testConstructorException($installerScriptPath) - { - new Magento_Installer($installerScriptPath, $this->_shell); - } - - public function constructorExceptionDataProvider() - { - return array( - 'non existing script' => array('non_existing_script'), - 'directory path' => array(__DIR__) - ); - } - - public function testUninstall() - { - $this->_shell - ->expects($this->once()) - ->method('execute') - ->with('php -f %s -- --uninstall', array($this->_installerScript)) - ; - $this->_object->uninstall(); - } - - public function testInstall() - { - $this->_shell - ->expects($this->once()) - ->method('execute') - ->with('php -f %s -- --option1 %s --option2 %s', array($this->_installerScript, 'value1', 'value 2')) - ; - $this->_object - ->expects($this->once()) - ->method('_bootstrap') - ; - $this->_object - ->expects($this->once()) - ->method('_reindex') - ; - $this->_object->install(array('option1' => 'value1', 'option2' => 'value 2')); - } - - /** - * @expectedException LogicException - * @expectedExceptionMessage Fixture has been applied - */ - public function testInstallFixtures() - { - $this->_object->install(array(), array(__DIR__ . '/_files/fixture.php')); - } -} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/BootstrapTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/BootstrapTest.php new file mode 100644 index 0000000000000..5dcc1b1ac0f9b --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/BootstrapTest.php @@ -0,0 +1,90 @@ +_getBaseFixtureDir() . '/app_base_dir'); + $config = $bootstrap->getConfig(); + $this->assertInstanceOf('Magento_Performance_Config', $config); + $this->assertEquals($expectedUrl, $config->getApplicationUrlHost()); + } + + public function configLoadDataProvider() + { + $baseFixtureDir = $this->_getBaseFixtureDir(); + return array( + 'config.php.dist' => array( + 'fixtureDir' => $baseFixtureDir . '/config_dist', + 'expectedUrl' => '127.0.0.1' + ), + 'config.dist' => array( + 'fixtureDir' => $baseFixtureDir . '/config_normal', + 'expectedUrl' => '192.168.0.1' + ), + ); + } + + /** + * Return path to directory, utilized for bootstrap + * + * @return string + */ + protected function _getBaseFixtureDir() + { + return __DIR__ . '/_files/bootstrap'; + } + + public function testCleanupReports() + { + $fixtureDir = $this->_getBaseFixtureDir() . '/config_dist'; + $reportDir = $fixtureDir . '/report'; + mkdir($reportDir, 0777); + + try { + $reportFile = $reportDir . '/a.jtl'; + touch($reportFile); + $this->assertFileExists($reportFile); + + $bootstrap = new Magento_Performance_Bootstrap($fixtureDir, $fixtureDir); + $bootstrap->cleanupReports(); + $this->assertFileNotExists($reportFile); + $this->assertFileExists($reportDir); + + Varien_Io_File::rmdirRecursive($reportDir); + } catch (Exception $e) { + Varien_Io_File::rmdirRecursive($reportDir); + throw $e; + } + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/ConfigTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/ConfigTest.php new file mode 100644 index 0000000000000..2624d5cf81d19 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/ConfigTest.php @@ -0,0 +1,272 @@ +_fixtureDir = __DIR__ . DIRECTORY_SEPARATOR . '_files'; + $this->_appBaseDir = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'app_base_dir'; + $this->_fixtureConfigData = require $this->_fixtureDir . '/config_data.php'; + $this->_object = new Magento_Performance_Config( + $this->_fixtureConfigData, $this->_fixtureDir, $this->_appBaseDir + ); + } + + protected function tearDown() + { + unset($this->_object); + } + + /** + * @dataProvider constructorExceptionDataProvider + * @param array $configData + * @param string $baseDir + * @param string $expectedException + * @param string $expectedExceptionMsg + */ + public function testConstructorException(array $configData, $baseDir, $expectedException, $expectedExceptionMsg) + { + $this->setExpectedException($expectedException, $expectedExceptionMsg); + new Magento_Performance_Config($configData, $baseDir, $this->_appBaseDir); + } + + /** + * @return array + */ + public function constructorExceptionDataProvider() + { + return array( + 'non-existing base dir' => array( + require __DIR__ . '/_files/config_data.php', + 'non_existing_dir', + 'Magento_Exception', + "Base directory 'non_existing_dir' does not exist", + ), + 'invalid fixtures format' => array( + require __DIR__ . '/_files/config_data_invalid_fixtures_format.php', + __DIR__ . DIRECTORY_SEPARATOR . '_files', + 'InvalidArgumentException', + "Scenario 'fixtures' option must be an array, not a value: 'string_fixtures_*.php'", + ), + 'non-existing fixture' => array( + require __DIR__ . '/_files/config_data_non_existing_fixture.php', + __DIR__ . DIRECTORY_SEPARATOR . '_files', + 'Magento_Exception', + "Fixture 'non_existing_fixture.php' doesn't exist", + ), + 'invalid scenarios format' => array( + require __DIR__ . '/_files/config_data_invalid_scenarios_format.php', + __DIR__ . DIRECTORY_SEPARATOR . '_files', + 'InvalidArgumentException', + "'scenario' => 'scenarios' option must be an array", + ), + 'non-existing scenario' => array( + require __DIR__ . '/_files/config_data_non_existing_scenario.php', + __DIR__ . DIRECTORY_SEPARATOR . '_files', + 'Magento_Exception', + "Scenario 'non_existing_scenario.jmx' doesn't exist", + ), + ); + } + + public function testGetApplicationBaseDir() + { + $this->assertEquals($this->_appBaseDir, $this->_object->getApplicationBaseDir()); + } + + public function testGetApplicationUrlHost() + { + $this->assertEquals('127.0.0.1', $this->_object->getApplicationUrlHost()); + } + + public function testGetApplicationUrlPath() + { + $this->assertEquals('/', $this->_object->getApplicationUrlPath()); + } + + public function testGetAdminOptions() + { + $expectedOptions = array( + 'frontname' => 'backend', + 'username' => 'admin', + 'password' => 'password1', + ); + $this->assertEquals($expectedOptions, $this->_object->getAdminOptions()); + } + + public function testGetInstallOptions() + { + $expectedOptions = array('option1' => 'value 1', 'option2' => 'value 2'); + $this->assertEquals($expectedOptions, $this->_object->getInstallOptions()); + } + + public function testGetScenarios() + { + $dir = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR; + $expectedScenarios = array( + $dir . 'scenario.jmx', + $dir . 'scenario_error.jmx', + $dir . 'scenario_failure.jmx', + ); + $actualScenarios = $this->_object->getScenarios(); + sort($actualScenarios); + $this->assertEquals($expectedScenarios, $actualScenarios); + } + + /** + * @dataProvider getScenarioArgumentsDataProvider + * + * @param string $scenarioName + * @param array $expectedArgs + */ + public function testGetScenarioArguments($scenarioName, array $expectedArgs) + { + $scenarioFile = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . $scenarioName; + $actualResult = $this->_object->getScenarioArguments($scenarioFile); + $this->assertInstanceOf('Magento_Performance_Scenario_Arguments', $actualResult); + $this->assertEquals($expectedArgs, (array)$actualResult); + } + + public function getScenarioArgumentsDataProvider() + { + $fixtureParams = array( + Magento_Performance_Scenario_Arguments::ARG_USERS => 1, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 1, + Magento_Performance_Scenario_Arguments::ARG_HOST => '127.0.0.1', + Magento_Performance_Scenario_Arguments::ARG_PATH => '/', + Magento_Performance_Scenario_Arguments::ARG_ADMIN_FRONTNAME => 'backend', + Magento_Performance_Scenario_Arguments::ARG_ADMIN_USERNAME => 'admin', + Magento_Performance_Scenario_Arguments::ARG_ADMIN_PASSWORD => 'password1', + 'arg1' => 'value 1', + 'arg2' => 'value 2', + ); + return array( + 'common arguments inheritance' => array( + 'scenario_error.jmx', + $fixtureParams, + ), + 'scenario-specific arguments' => array( + 'scenario.jmx', + array_merge($fixtureParams, array('arg2' => 'overridden value 2', 'arg3' => 'custom value 3')), + ), + 'no overriding crosscutting argument' => array( + 'scenario_failure.jmx', + $fixtureParams, + ), + ); + } + + /** + * @dataProvider getScenarioFixturesDataProvider + * + * @param string $scenarioName + * @param array $expectedFixtures + */ + public function testGetScenarioFixtures($scenarioName, array $expectedFixtures) + { + $scenarioFile = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . $scenarioName; + $actualResult = $this->_object->getScenarioFixtures($scenarioFile); + $this->assertEquals($expectedFixtures, $actualResult); + } + + public function getScenarioFixturesDataProvider() + { + return array( + 'normal fixtures' => array( + 'scenario.jmx', + array(__DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'fixture.php'), + ), + 'direct scenario declaration' => array( + 'scenario_error.jmx', + array(), + ), + 'scenario without fixtures' => array( + 'scenario_failure.jmx', + array(), + ), + ); + } + + /** + * @dataProvider getScenarioSettingsDataProvider + * + * @param string $scenarioName + * @param array $expectedResult + */ + public function testGetScenarioSettings($scenarioName, array $expectedResult) + { + $scenarioFile = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . $scenarioName; + $actualResult = $this->_object->getScenarioSettings($scenarioFile); + $this->assertEquals($expectedResult, $actualResult); + } + + public function getScenarioSettingsDataProvider() + { + return array( + 'common settings inheritance' => array( + 'scenario_error.jmx', + array('setting1' => 'setting 1', 'setting2' => 'setting 2') + ), + 'scenario-specific settings' => array( + 'scenario.jmx', + array('setting1' => 'setting 1', 'setting2' => 'overridden setting 2', 'setting3' => 'setting 3') + ), + ); + } + + public function testGetScenarioArgumentsNonExistingScenario() + { + $this->assertNull($this->_object->getScenarioArguments('non_existing.jmx')); + } + + public function testGetReportDir() + { + $expectedReportDir = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'report'; + $this->assertEquals($expectedReportDir, $this->_object->getReportDir()); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/ArgumentsTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/ArgumentsTest.php new file mode 100644 index 0000000000000..fa567684c08a9 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/ArgumentsTest.php @@ -0,0 +1,142 @@ +_object = new Magento_Performance_Scenario_Arguments(array( + Magento_Performance_Scenario_Arguments::ARG_USERS => 10, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 100, + )); + } + + protected function tearDown() + { + $this->_object = null; + } + + /** + * @dataProvider constructorDataProvider + * + * @param array $inputArgs + * @param array $expectedArgs + */ + public function testConstructor(array $inputArgs, array $expectedArgs) + { + $args = new Magento_Performance_Scenario_Arguments($inputArgs); + $this->assertEquals($expectedArgs, (array)$args); + } + + public function constructorDataProvider() + { + return array( + 'default arguments' => array( + array(), + array( + Magento_Performance_Scenario_Arguments::ARG_USERS => 1, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 1, + ) + ), + 'overriding argument "users"' => array( + array(Magento_Performance_Scenario_Arguments::ARG_USERS => 2), + array( + Magento_Performance_Scenario_Arguments::ARG_USERS => 2, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 1, + ) + ), + 'overriding argument "loops"' => array( + array(Magento_Performance_Scenario_Arguments::ARG_LOOPS => 5), + array( + Magento_Performance_Scenario_Arguments::ARG_USERS => 1, + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 5, + ) + ), + ); + } + + /** + * @dataProvider constructorExceptionDataProvider + * + * @param array $inputArgs + * @param string $expectedExceptionMsg + */ + public function testConstructorException(array $inputArgs, $expectedExceptionMsg) + { + $this->setExpectedException('UnexpectedValueException', $expectedExceptionMsg); + new Magento_Performance_Scenario_Arguments($inputArgs); + } + + public function constructorExceptionDataProvider() + { + return array( + 'invalid argument "users"' => array( + array(Magento_Performance_Scenario_Arguments::ARG_USERS => -1), + "Scenario argument 'users' must be a positive integer." + ), + 'invalid argument "loops"' => array( + array(Magento_Performance_Scenario_Arguments::ARG_LOOPS => 'abc'), + "Scenario argument 'loops' must be a positive integer." + ), + ); + } + + public function testGetUsers() + { + $this->assertEquals(10, $this->_object->getUsers()); + } + + public function testGetLoops() + { + $this->assertEquals(100, $this->_object->getLoops()); + } + + public function testOffsetSet() + { + try { + $this->_object[Magento_Performance_Scenario_Arguments::ARG_LOOPS] = 100500; + } catch (LogicException $e) { + $this->assertEquals('Scenario arguments are read-only.', $e->getMessage()); + $this->testGetLoops(); + } + } + + public function testOffsetUnset() + { + try { + unset($this->_object[Magento_Performance_Scenario_Arguments::ARG_USERS]); + } catch (LogicException $e) { + $this->assertEquals('Scenario arguments are read-only.', $e->getMessage()); + $this->testGetUsers(); + } + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/AggregateTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/AggregateTest.php new file mode 100644 index 0000000000000..465ec8add7f5b --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/AggregateTest.php @@ -0,0 +1,158 @@ +_handleOne = $this->getMock('Magento_Performance_Scenario_HandlerInterface'); + $this->_handleTwo = $this->getMock('Magento_Performance_Scenario_HandlerInterface'); + $this->_handleThree = $this->getMock('Magento_Performance_Scenario_HandlerInterface'); + $this->_object = new Magento_Performance_Scenario_Handler_Aggregate(array( + $this->_handleOne, $this->_handleTwo, $this->_handleThree + )); + } + + protected function tearDown() + { + $this->_object = null; + $this->_handleOne = null; + $this->_handleTwo = null; + $this->_handleThree = null; + } + + /** + * Retrieve new callback, which when executed, records call identifier into call sequence and returns desired value + * + * @param ArrayObject $callSequence + * @param string $callId + * @param bool $returnValue + * @return callable + */ + protected function _createCallRecorder(ArrayObject $callSequence, $callId, $returnValue) + { + return function () use ($callSequence, $callId, $returnValue) { + $callSequence[] = $callId; + return $returnValue; + }; + } + + /** + * @param array $handles + * @param string $expectedExceptionMsg + * + * @dataProvider constructorExceptionDataProvider + */ + public function testConstructorException(array $handles, $expectedExceptionMsg) + { + $this->setExpectedException('InvalidArgumentException', $expectedExceptionMsg); + new Magento_Performance_Scenario_Handler_Aggregate($handles); + } + + public function constructorExceptionDataProvider() + { + return array( + 'empty handles' => array( + array(), + 'At least one scenario handler must be defined.', + ), + 'invalid handle instance' => array( + array(new stdClass()), + 'Scenario handler must implement "Magento_Performance_Scenario_HandlerInterface".', + ), + ); + } + + public function testRunDelegationSequence() + { + $scenarioFile = 'scenario.jmx'; + $scenarioParams = new Magento_Performance_Scenario_Arguments(array()); + $reportFile = 'scenario.jtl'; + $callSequence = new ArrayObject(); + $this->_handleOne + ->expects($this->once()) + ->method('run') + ->with($scenarioFile, $scenarioParams, $reportFile) + ->will($this->returnCallback($this->_createCallRecorder($callSequence, 'handleOne', false))) + ; + $this->_handleTwo + ->expects($this->once()) + ->method('run') + ->with($scenarioFile, $scenarioParams, $reportFile) + ->will($this->returnCallback($this->_createCallRecorder($callSequence, 'handleTwo', false))) + ; + $this->_handleThree + ->expects($this->once()) + ->method('run') + ->with($scenarioFile, $scenarioParams, $reportFile) + ->will($this->returnCallback($this->_createCallRecorder($callSequence, 'handleThree', false))) + ; + $this->assertFalse($this->_object->run($scenarioFile, $scenarioParams, $reportFile)); + $this->assertEquals(array('handleOne', 'handleTwo', 'handleThree'), (array)$callSequence); + } + + public function testRunStopOnSuccess() + { + $callSequence = new ArrayObject(); + $this->_handleOne + ->expects($this->once()) + ->method('run') + ->will($this->returnCallback($this->_createCallRecorder($callSequence, 'handleOne', false))) + ; + $this->_handleTwo + ->expects($this->once()) + ->method('run') + ->will($this->returnCallback($this->_createCallRecorder($callSequence, 'handleTwo', true))) + ; + $this->_handleThree + ->expects($this->never()) + ->method('run') + ; + $this->assertTrue($this->_object->run('scenario.jmx', new Magento_Performance_Scenario_Arguments(array()))); + $this->assertEquals(array('handleOne', 'handleTwo'), (array)$callSequence); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/JmeterTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/JmeterTest.php new file mode 100644 index 0000000000000..6b40309affe01 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/JmeterTest.php @@ -0,0 +1,159 @@ +_scenarioFile = realpath(__DIR__ . '/../../_files/scenario.jmx'); + $this->_reportFile = realpath(__DIR__ . '/../../_files') . DIRECTORY_SEPARATOR . 'scenario.jtl'; + $this->_scenarioArgs = new Magento_Performance_Scenario_Arguments(array( + Magento_Performance_Scenario_Arguments::ARG_HOST => '127.0.0.1', + Magento_Performance_Scenario_Arguments::ARG_PATH => '/', + Magento_Performance_Scenario_Arguments::ARG_USERS => 2, + )); + $this->_shell = $this->getMock('Magento_Shell', array('execute')); + $this->_object = new Magento_Performance_Scenario_Handler_Jmeter($this->_shell); + } + + protected function tearDown() + { + $this->_shell = null; + $this->_object = null; + $this->_scenarioArgs = null; + } + + public function testConstructor() + { + $this->_shell + ->expects($this->once()) + ->method('execute') + ->with('jmeter --version') + ; + $this->_object->__construct($this->_shell); + } + + public function testRunUnsupportedScenarioFormat() + { + $this->_shell + ->expects($this->never()) + ->method('execute') + ; + $this->assertFalse($this->_object->run('scenario.txt', $this->_scenarioArgs)); + } + + public function testRunNoReport() + { + $this->_shell + ->expects($this->once()) + ->method('execute') + ->with( + 'jmeter -n -t %s %s %s %s %s', + array($this->_scenarioFile, '-Jhost=127.0.0.1', '-Jpath=/', '-Jusers=2', '-Jloops=1') + ) + ; + $this->assertTrue($this->_object->run($this->_scenarioFile, $this->_scenarioArgs)); + } + + public function testRunReport() + { + $this->_shell + ->expects($this->once()) + ->method('execute') + ->with( + 'jmeter -n -t %s -l %s %s %s %s %s', + array( + $this->_scenarioFile, $this->_reportFile, '-Jhost=127.0.0.1', '-Jpath=/', '-Jusers=2', '-Jloops=1' + ) + ) + ; + $this->assertTrue($this->_object->run($this->_scenarioFile, $this->_scenarioArgs, $this->_reportFile)); + } + + /** + * @param string $scenarioFile + * @param string $reportFile + * @param string $expectedException + * @param string $expectedExceptionMsg + * @dataProvider runExceptionDataProvider + */ + public function testRunException($scenarioFile, $reportFile, $expectedException, $expectedExceptionMsg = '') + { + $this->setExpectedException($expectedException, $expectedExceptionMsg); + $this->_object->run($scenarioFile, $this->_scenarioArgs, $reportFile); + } + + public function runExceptionDataProvider() + { + $fixtureDir = realpath(__DIR__ . '/../../_files'); + return array( + 'no report created' => array( + "$fixtureDir/scenario_without_report.jmx", + "$fixtureDir/scenario_without_report.jtl", + 'Magento_Exception', + "Report file '$fixtureDir/scenario_without_report.jtl' has not been created.", + ), + 'scenario failure in report' => array( + "$fixtureDir/scenario_failure.jmx", + "$fixtureDir/scenario_failure.jtl", + 'Magento_Performance_Scenario_FailureException', + 'fixture failure message', + ), + 'scenario error in report' => array( + "$fixtureDir/scenario_error.jmx", + "$fixtureDir/scenario_error.jtl", + 'Magento_Performance_Scenario_FailureException', + 'fixture error message', + ), + ); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/PhpTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/PhpTest.php new file mode 100644 index 0000000000000..2144a143f27a4 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/PhpTest.php @@ -0,0 +1,139 @@ +_scenarioFile = realpath(__DIR__ . '/../../_files/scenario.php'); + $this->_reportFile = realpath(__DIR__ . '/../../_files/scenario.jtl'); + $this->_scenarioArgs = new Magento_Performance_Scenario_Arguments(array( + Magento_Performance_Scenario_Arguments::ARG_LOOPS => 3, + 'custom' => 'custom_value', + )); + $this->_shell = $this->getMock('Magento_Shell', array('execute')); + $this->_object = new Magento_Performance_Scenario_Handler_Php($this->_shell); + } + + protected function tearDown() + { + $this->_shell = null; + $this->_object = null; + $this->_scenarioArgs = null; + } + + public function testConstructor() + { + $this->_shell + ->expects($this->once()) + ->method('execute') + ->with('php --version') + ; + $this->_object->__construct($this->_shell); + } + + public function testRunUnsupportedScenarioFormat() + { + $this->_shell + ->expects($this->never()) + ->method('execute') + ; + $this->assertFalse($this->_object->run($this->_scenarioFile . '.txt', $this->_scenarioArgs)); + } + + public function testRunNoReport() + { + $this->_shell + ->expects($this->exactly(3)) + ->method('execute') + ->with( + 'php -f %s -- --loops=%s --custom=%s --users=%s', + array($this->_scenarioFile, 3, 'custom_value', 1) + ) + ; + $this->assertTrue($this->_object->run($this->_scenarioFile, $this->_scenarioArgs)); + } + + public function testRunReport() + { + $this->expectOutputRegex('/.+/'); // prevent displaying output + $this->assertTrue($this->_object->run($this->_scenarioFile, $this->_scenarioArgs, 'php://output')); + $expectedDom = new DOMDocument(); + $expectedDom->loadXML(' + + + + + + '); + $actualDom = new DOMDocument(); + $actualDom->loadXML($this->getActualOutput()); + $this->assertEqualXMLStructure($expectedDom->documentElement, $actualDom->documentElement, true); + } + + /** + * @expectedException Magento_Performance_Scenario_FailureException + * @expectedExceptionMessage command failure message + */ + public function testRunException() + { + $failure = new Magento_Exception( + 'Command returned non-zero exit code.', 0, new Exception('command failure message', 1) + ); + $this->_shell + ->expects($this->any()) + ->method('execute') + ->will($this->throwException($failure)) + ; + $this->_object->run($this->_scenarioFile, $this->_scenarioArgs); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/StatisticsTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/StatisticsTest.php new file mode 100644 index 0000000000000..cfbfa09147f0d --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Scenario/Handler/StatisticsTest.php @@ -0,0 +1,165 @@ +_handler = $this->getMockForAbstractClass('Magento_Performance_Scenario_HandlerInterface'); + $this->_object = new Magento_Performance_Scenario_Handler_Statistics($this->_handler); + $this->_scenarioArgs = new Magento_Performance_Scenario_Arguments(array()); + } + + protected function tearDown() + { + $this->_handler = null; + $this->_object = null; + $this->_scenarioArgs = null; + } + + public function testRunDelegation() + { + $scenarioFile = 'scenario.jmx'; + $reportFile = 'scenario.jtl'; + $expectedResult = new stdClass(); + $this->_handler + ->expects($this->once()) + ->method('run') + ->with($scenarioFile, $this->_scenarioArgs, $reportFile) + ->will($this->returnValue($expectedResult)) + ; + $this->assertSame($expectedResult, $this->_object->run($scenarioFile, $this->_scenarioArgs, $reportFile)); + } + + public function testRunFailure() + { + $scenarioFile = 'scenario.jmx'; + $reportFile = 'scenario.jtl'; + $failure = new Magento_Performance_Scenario_FailureException($scenarioFile); + $this->_handler + ->expects($this->once()) + ->method('run') + ->with($scenarioFile, $this->_scenarioArgs, $reportFile) + ->will($this->throwException($failure)) + ; + $this->assertTrue($this->_object->run($scenarioFile, $this->_scenarioArgs, $reportFile)); + return array('scenario' => $scenarioFile, 'object' => $this->_object, 'actualFailure' => $failure); + } + + /** + * @depends testRunFailure + * + * @param array $arguments + */ + public function testGetFailures(array $arguments) + { + $scenario = $arguments['scenario']; + /** @var $object Magento_Performance_Scenario_Handler_Statistics */ + $object = $arguments['object']; + /** @var $failure Magento_Performance_Scenario_FailureException */ + $failure = $arguments['actualFailure']; + $this->assertSame(array($scenario => $failure), $object->getFailures()); + } + + /** + * @dataProvider onScenarioFirstRunDataProvider + * + * @param PHPUnit_Framework_MockObject_Stub $handlerReturnStub + */ + public function testOnScenarioFirstRun(PHPUnit_Framework_MockObject_Stub $handlerReturnStub) + { + $this->_handler + ->expects($this->any()) + ->method('run') + ->will($handlerReturnStub) + ; + $notifications = array(); + $this->_object->onScenarioFirstRun(function ($scenarioFile) use (&$notifications) { + $notifications[] = $scenarioFile; + }); + + $this->_object->run('scenario_one.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario_one.jmx'), $notifications); + + // scenario has been already processed, no notification should occur + $this->_object->run('scenario_one.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario_one.jmx'), $notifications); + + // new scenario, notification should happen + $this->_object->run('scenario_two.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario_one.jmx', 'scenario_two.jmx'), $notifications); + + // both scenarios have been already processed, nothing should be done + $this->_object->run('scenario_one.jmx', $this->_scenarioArgs); + $this->_object->run('scenario_two.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario_one.jmx', 'scenario_two.jmx'), $notifications); + } + + public function onScenarioFirstRunDataProvider() + { + return array( + 'success' => array($this->returnValue(true)), + 'failure' => array($this->throwException(new Magento_Performance_Scenario_FailureException)), + ); + } + + public function testOnScenarioFailure() + { + $failure = new Magento_Performance_Scenario_FailureException; + $this->_handler + ->expects($this->any()) + ->method('run') + ->will($this->throwException($failure)) + ; + $notifications = array(); + $this->_object->onScenarioFailure(function ($scenarioFile, $actualFailure) use (&$notifications, $failure) { + PHPUnit_Framework_Assert::assertSame($failure, $actualFailure); + $notifications[] = $scenarioFile; + }); + + $this->_object->run('scenario.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario.jmx'), $notifications); + + $this->_object->run('scenario.jmx', $this->_scenarioArgs); + $this->assertEquals(array('scenario.jmx', 'scenario.jmx'), $notifications); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Testsuite/OptimizerTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Testsuite/OptimizerTest.php new file mode 100644 index 0000000000000..d27d6b1ddb957 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/Testsuite/OptimizerTest.php @@ -0,0 +1,97 @@ +_optimizer = new Magento_Performance_Testsuite_Optimizer; + } + + protected function tearDown() + { + unset($this->_optimizer); + } + + /** + * @param array $scenarios + * @param array $expectedScenarios + * @dataProvider runDataProvider + */ + public function testRun($scenarios, $expectedScenarios) + { + $actualScenarios = $this->_optimizer->run($scenarios); + $this->assertEquals($actualScenarios, $expectedScenarios); + } + + /** + * @return array + */ + public function runDataProvider() + { + return array( + 'empty_list' => array( + 'scenarios' => array(), + 'expectedScenarios' => array(), + ), + 'single_scenario' => array( + 'scenarios' => array( + 'a' => array('f1', 'f2') + ), + 'expectedScenarios' => array('a'), + ), + 'empty_fixtures' => array( + 'scenarios' => array( + 'a' => array(), + 'b' => array() + ), + 'expectedScenarios' => array('a', 'b'), + ), + 'from_smaller_to_bigger' => array( + 'scenarios' => array( + 'a' => array('f1', 'f2'), + 'b' => array('f2'), + 'c' => array('f3') + ), + 'expectedScenarios' => array('b', 'a', 'c'), + ), + 'same_together' => array( + 'scenarios' => array( + 'a' => array('f1', 'f2'), + 'b' => array('f1'), + 'c' => array('f1'), + ), + 'expectedScenarios' => array('b', 'c', 'a'), + ) + ); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/TestsuiteTest.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/TestsuiteTest.php new file mode 100644 index 0000000000000..1aaed220de6ef --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/TestsuiteTest.php @@ -0,0 +1,152 @@ +_fixtureDir = __DIR__ . DIRECTORY_SEPARATOR . '_files'; + $fixtureConfigData = include($this->_fixtureDir . DIRECTORY_SEPARATOR . 'config_data.php'); + $shell = $this->getMock('Magento_Shell', array('execute')); + $this->_config = new Magento_Performance_Config( + $fixtureConfigData, + $this->_fixtureDir, + $this->_fixtureDir . '/app_base_dir' + ); + $this->_application = $this->getMock( + 'Magento_Application', array('applyFixtures'), array($this->_config, $shell) + ); + $this->_handler = $this->getMockForAbstractClass('Magento_Performance_Scenario_HandlerInterface'); + $this->_object = new Magento_Performance_Testsuite($this->_config, $this->_application, $this->_handler); + } + + protected function tearDown() + { + $this->_config = null; + $this->_application = null; + $this->_handler = null; + $this->_object = null; + } + + /** + * Setup expectation of a scenario warm up invocation + * + * @param string $scenarioName + * @param integer $invocationIndex + */ + protected function _expectScenarioWarmUp($scenarioName, $invocationIndex) + { + $this->_handler + ->expects($this->at($invocationIndex)) + ->method('run') + ->with( + $this->_fixtureDir . DIRECTORY_SEPARATOR . $scenarioName . '.jmx', + $this->isInstanceOf('Magento_Performance_Scenario_Arguments'), + $this->isNull() + ) + ->will($this->returnValue(true)) + ; + } + + /** + * Setup expectation of a scenario invocation with report generation + * + * @param string $scenarioName + * @param integer $invocationIndex + */ + protected function _expectScenarioRun($scenarioName, $invocationIndex) + { + $this->_handler + ->expects($this->at($invocationIndex)) + ->method('run') + ->with( + $this->_fixtureDir . DIRECTORY_SEPARATOR . $scenarioName . '.jmx', + $this->isInstanceOf('Magento_Performance_Scenario_Arguments'), + $this->_fixtureDir . DIRECTORY_SEPARATOR . 'report' . DIRECTORY_SEPARATOR . $scenarioName . '.jtl' + ) + ->will($this->returnValue(true)) + ; + } + + public function testRun() + { + $this->_expectScenarioWarmUp('scenario_error', 0); + $this->_expectScenarioRun('scenario_error', 1); + + /* Warm up is disabled for scenario */ + $this->_expectScenarioRun('scenario_failure', 2); + + $this->_expectScenarioWarmUp('scenario', 3); + $this->_expectScenarioRun('scenario', 4); + + $this->_object->run(); + } + + public function testRunException() + { + $expectedScenario = $this->_fixtureDir . DIRECTORY_SEPARATOR . 'scenario_error.jmx'; + $this->setExpectedException( + 'Magento_Exception', "Unable to run scenario '$expectedScenario', format is not supported." + ); + $this->_handler + ->expects($this->atLeastOnce()) + ->method('run') + ->will($this->returnValue(false)) + ; + $this->_object->run(); + } +} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/install_stub.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/app_base_dir/dev/shell/install.php similarity index 100% rename from dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/install_stub.php rename to dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/app_base_dir/dev/shell/install.php diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_dist/config.php.dist b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_dist/config.php.dist new file mode 100644 index 0000000000000..c410a1c44777a --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_dist/config.php.dist @@ -0,0 +1,42 @@ + array( + 'url_host' => '127.0.0.1', + 'url_path' => '/', + 'admin' => array( + 'frontname' => 'backend', + 'username' => 'admin', + 'password' => 'password1', + ), + ), + 'scenario' => array( + 'scenarios' => array() + ), + 'report_dir' => 'report', +); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php new file mode 100644 index 0000000000000..aef03794b493f --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php @@ -0,0 +1,42 @@ + array( + 'url_host' => '192.168.0.1', + 'url_path' => '/', + 'admin' => array( + 'frontname' => 'backend', + 'username' => 'admin', + 'password' => 'password1', + ), + ), + 'scenario' => array( + 'scenarios' => array() + ), + 'report_dir' => 'report', +); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php.dist b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php.dist new file mode 100644 index 0000000000000..c410a1c44777a --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/bootstrap/config_normal/config.php.dist @@ -0,0 +1,42 @@ + array( + 'url_host' => '127.0.0.1', + 'url_path' => '/', + 'admin' => array( + 'frontname' => 'backend', + 'username' => 'admin', + 'password' => 'password1', + ), + ), + 'scenario' => array( + 'scenarios' => array() + ), + 'report_dir' => 'report', +); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data.php new file mode 100644 index 0000000000000..840105eae9a04 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data.php @@ -0,0 +1,81 @@ + array( + 'url_host' => '127.0.0.1', + 'url_path' => '/', + 'admin' => array( + 'frontname' => 'backend', + 'username' => 'admin', + 'password' => 'password1', + ), + 'installation' => array( + 'options' => array( + 'option1' => 'value 1', + 'option2' => 'value 2', + ), + ), + ), + 'scenario' => array( + 'common_config' => array( + 'arguments' => array( + 'arg1' => 'value 1', + 'arg2' => 'value 2', + ), + 'settings' => array( + 'setting1' => 'setting 1', + 'setting2' => 'setting 2', + ), + ), + 'scenarios' => array( + 'scenario.jmx' => array( + 'arguments' => array( + 'arg2' => 'overridden value 2', + 'arg3' => 'custom value 3', + ), + 'settings' => array( + 'setting2' => 'overridden setting 2', + 'setting3' => 'setting 3', + ), + 'fixtures' => array( + 'fixture.php', + ), + ), + 'scenario_error.jmx', + 'scenario_failure.jmx' => array( + 'arguments' => array( + Magento_Performance_Scenario_Arguments::ARG_HOST => 'crosscutting parameters cannot be redefined', + ), + 'settings' => array( + Magento_Performance_Testsuite::SETTING_SKIP_WARM_UP => true, + ), + ), + ), + ), + 'report_dir' => 'report', +); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data_invalid_fixtures_format.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data_invalid_fixtures_format.php new file mode 100644 index 0000000000000..2ad433c1f9b0f --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/config_data_invalid_fixtures_format.php @@ -0,0 +1,30 @@ + + + diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/scenario_without_report.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/scenario_without_report.php new file mode 100644 index 0000000000000..6bb19611fcf98 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/Performance/_files/scenario_without_report.php @@ -0,0 +1,28 @@ + '127.0.0.1', - Magento_Scenario::PARAM_PATH => '/', - Magento_Scenario::PARAM_USERS => 2, - ); - - protected function setUp() - { - $this->_scenarioFile = realpath(__DIR__ . '/_files/scenario.jmx'); - $reportDir = realpath(__DIR__ . '/_files'); - $this->_reportFile = $reportDir . DIRECTORY_SEPARATOR . 'scenario.jtl'; - $this->_shell = $this->getMock('Magento_Shell', array('execute')); - $this->_object = new Magento_Scenario($this->_shell, 'JMeter.jar', $reportDir); - } - - protected function tearDown() - { - unset($this->_shell); - unset($this->_object); - } - - public function testRun() - { - $this->_shell - ->expects($this->at(0)) - ->method('execute') - ->with( - 'java -jar %s -n -t %s %s %s %s %s', - array('JMeter.jar', $this->_scenarioFile, '-Jhost=127.0.0.1', '-Jpath=/', '-Jusers=1', '-Jloops=2') - ) - ; - $this->_shell - ->expects($this->at(1)) - ->method('execute') - ->with( - 'java -jar %s -n -t %s -l %s %s %s %s %s', - array( - 'JMeter.jar', $this->_scenarioFile, $this->_reportFile, - '-Jhost=127.0.0.1', '-Jpath=/', '-Jusers=2', '-Jloops=1' - ) - ) - ; - $this->_object->run($this->_scenarioFile, $this->_scenarioParams); - } - - /** - * @param string $scenarioFile - * @param array $scenarioParams - * @param string $expectedExceptionMsg - * @dataProvider runExceptionDataProvider - * @expectedException Magento_Exception - */ - public function testRunException($scenarioFile, array $scenarioParams, $expectedExceptionMsg = '') - { - $this->setExpectedException('Magento_Exception', $expectedExceptionMsg); - $this->_object->run($scenarioFile, $scenarioParams); - } - - public function runExceptionDataProvider() - { - return array( - 'non-existing scenario' => array( - 'non_existing_scenario.jmx', - $this->_scenarioParams, - ), - 'no "host" param' => array( - $this->_scenarioFile, - array(Magento_Scenario::PARAM_PATH => '/'), - ), - 'no "path" param' => array( - $this->_scenarioFile, - array(Magento_Scenario::PARAM_HOST => '127.0.0.1'), - ), - 'scenario failure in report' => array( - __DIR__ . '/_files/scenario_failure.jmx', - $this->_scenarioParams, - 'fixture failure message', - ), - 'scenario error in report' => array( - __DIR__ . '/_files/scenario_error.jmx', - $this->_scenarioParams, - 'fixture error message', - ), - ); - } -} diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture1.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture1.php new file mode 100644 index 0000000000000..8eb63a6270052 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture1.php @@ -0,0 +1,31 @@ +addFixtureEvent('fixture1'); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture2.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture2.php new file mode 100644 index 0000000000000..ddbe13f653063 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture2.php @@ -0,0 +1,31 @@ +addFixtureEvent('fixture2'); diff --git a/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture3.php b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture3.php new file mode 100644 index 0000000000000..a3ca631893551 --- /dev/null +++ b/dev/tests/performance/framework/tests/unit/testsuite/Magento/_files/application_test/fixture3.php @@ -0,0 +1,31 @@ +addFixtureEvent('fixture3'); diff --git a/dev/tests/performance/run_scenarios.php b/dev/tests/performance/run_scenarios.php index 2a519377efc9a..902f70c94e4b7 100755 --- a/dev/tests/performance/run_scenarios.php +++ b/dev/tests/performance/run_scenarios.php @@ -26,39 +26,35 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -try { - /** @var $config Magento_Config */ - $config = require_once __DIR__ . '/framework/bootstrap.php'; +/** @var $bootstrap Magento_Performance_Config */ +$config = require_once __DIR__ . '/framework/bootstrap.php'; - $adminOptions = $config->getAdminOptions(); - $scenario = new Magento_Scenario(new Magento_Shell(true), $config->getJMeterPath(), $config->getReportDir()); - $scenarioParamsGlobal = array( - Magento_Scenario::PARAM_HOST => $config->getApplicationUrlHost(), - Magento_Scenario::PARAM_PATH => $config->getApplicationUrlPath(), - Magento_Scenario::PARAM_ADMIN_FRONTNAME => $adminOptions['frontname'], - Magento_Scenario::PARAM_ADMIN_USERNAME => $adminOptions['username'], - Magento_Scenario::PARAM_ADMIN_PASSWORD => $adminOptions['password'], - ); - $scenarioTotalCount = count($config->getScenarios()); - $scenarioFailCount = 0; - $scenarioNum = 1; - foreach ($config->getScenarios() as $scenarioFile => $scenarioParams) { - echo "Scenario $scenarioNum of $scenarioTotalCount: '$scenarioFile'" . PHP_EOL; - $scenarioParams = array_merge($scenarioParams, $scenarioParamsGlobal); - try { - $scenario->run($scenarioFile, $scenarioParams); - } catch (Exception $e) { - echo $e->getMessage() . PHP_EOL; - $scenarioFailCount++; - } - echo PHP_EOL; - $scenarioNum++; - } - if ($scenarioFailCount) { - throw new Magento_Exception("Failed $scenarioFailCount of $scenarioTotalCount scenario(s)"); - } - echo 'Successful' . PHP_EOL; -} catch (Exception $e) { - echo $e->getMessage() . PHP_EOL; +$shell = new Magento_Shell(true); +$scenarioHandler = new Magento_Performance_Scenario_Handler_Statistics( + new Magento_Performance_Scenario_Handler_Aggregate(array( + new Magento_Performance_Scenario_Handler_Jmeter($shell), + new Magento_Performance_Scenario_Handler_Php($shell), + )) +); + +$scenarioTotalCount = count($config->getScenarios()); +$scenarioCount = 1; +$scenarioHandler->onScenarioFirstRun(function ($scenarioFile) use (&$scenarioCount, $scenarioTotalCount) { + echo "Scenario $scenarioCount of $scenarioTotalCount: '$scenarioFile'" . PHP_EOL; + $scenarioCount++; +}); +$scenarioHandler->onScenarioFailure(function ($scenarioFile, Magento_Performance_Scenario_FailureException $failure) { + echo "Scenario '$scenarioFile' has failed!" . PHP_EOL . $failure->getMessage() . PHP_EOL . PHP_EOL; +}); + +$testsuite = new Magento_Performance_Testsuite($config, new Magento_Application($config, $shell), $scenarioHandler); +$testsuite->run(); + +$scenarioFailures = $scenarioHandler->getFailures(); +if ($scenarioFailures) { + $scenarioFailCount = count($scenarioFailures); + echo "Failed $scenarioFailCount of $scenarioTotalCount scenario(s)" . PHP_EOL; exit(1); +} else { + echo 'Successful' . PHP_EOL; } diff --git a/dev/tests/performance/testsuite/fixtures/catalog_200_categories_80k_products.php b/dev/tests/performance/testsuite/fixtures/catalog_200_categories_80k_products.php new file mode 100644 index 0000000000000..1a7a1cc712b0d --- /dev/null +++ b/dev/tests/performance/testsuite/fixtures/catalog_200_categories_80k_products.php @@ -0,0 +1,105 @@ +getStore()->getRootCategoryId(); +$nestingPath = "1/$parentCategoryId"; +$categoryPath = ''; +$categoryIndex = 1; + +$categories = array(); + +$category = new Mage_Catalog_Model_Category(); +while ($categoryIndex <= $categoriesNumber) { + $category->setId(null) + ->setName("Category $categoryIndex") + ->setParentId($parentCategoryId) + ->setPath($nestingPath) + ->setLevel($nestingLevel) + ->setAvailableSortBy('name') + ->setDefaultSortBy('name') + ->setIsActive(true) + ->setIsAnchor($categoryIndex++ % $anchorStep == 0) + ->save(); + + $categoryPath .= '/' . $category->getName(); + $categories[] = ltrim($categoryPath, '/'); + + if ($nestingLevel++ == $maxNestingLevel) { + $nestingLevel = 1; + $parentCategoryId = $defaultParentCategoryId; + $nestingPath = '1'; + $categoryPath = ''; + } else { + $parentCategoryId = $category->getId(); + } + $nestingPath .= "/$parentCategoryId"; +} + +/** + * Create products + */ +$pattern = array( + '_attribute_set' => 'Default', + '_type' => Mage_Catalog_Model_Product_Type::TYPE_SIMPLE, + '_product_websites' => 'base', + '_category' => function ($index) use ($categories, $categoriesNumber) { + return $categories[$index % $categoriesNumber]; + }, + 'name' => 'Product %s', + 'short_description' => 'Short desc %s', + 'weight' => 1, + 'description' => 'Description %s', + 'sku' => 'product_dynamic_%s', + 'price' => 10, + 'visibility' => Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH, + 'status' => Mage_Catalog_Model_Product_Status::STATUS_ENABLED, + 'tax_class_id' => 0, + + // actually it saves without stock data, but by default system won't show on the frontend products out of stock + 'is_in_stock' => 1, + 'qty' => 100500, + 'use_config_min_qty' => '1', + 'use_config_backorders' => '1', + 'use_config_min_sale_qty' => '1', + 'use_config_max_sale_qty' => '1', + 'use_config_notify_stock_qty' => '1', + 'use_config_manage_stock' => '1', + 'use_config_qty_increments' => '1', + 'use_config_enable_qty_inc' => '1', + 'stock_id' => Mage_CatalogInventory_Model_Stock::DEFAULT_STOCK_ID, +); +$generator = new Magento_ImportExport_Fixture_Generator($pattern, 80000); +$import = new Mage_ImportExport_Model_Import(array('entity' => 'catalog_product', 'behavior' => 'append')); +// it is not obvious, but the validateSource() will actually save import queue data to DB +$import->validateSource($generator); +// this converts import queue into actual entities +$import->importSource(); diff --git a/dev/tests/static/testsuite/Js/_files/blacklist/core.txt b/dev/tests/static/testsuite/Js/_files/blacklist/core.txt index d4255bee17c15..7a9ba8c44a16c 100644 --- a/dev/tests/static/testsuite/Js/_files/blacklist/core.txt +++ b/dev/tests/static/testsuite/Js/_files/blacklist/core.txt @@ -2,10 +2,9 @@ pub/lib/mage/adminhtml pub/lib/mage/captcha.js pub/lib/mage/directpost.js pub/lib/mage/jquery-no-conflict.js -pub/lib/mage/translate_inline.js app/code/core/Mage/Catalog/view/frontend/msrp.js app/code/core/Mage/Page/view/frontend/js/cookies.js app/code/core/Mage/Page/view/frontend/menu.js app/code/core/Mage/Checkout/view/frontend/multishipping/payment.js app/code/core/Mage/Checkout/view/frontend/onepage/accordion.js -app/code/core/Mage/Checkout/view/frontend/opcheckout.js \ No newline at end of file +app/code/core/Mage/Checkout/view/frontend/opcheckout.js diff --git a/dev/tests/static/testsuite/Legacy/ConfigTest.php b/dev/tests/static/testsuite/Legacy/ConfigTest.php index 3f03e50ddd7eb..04d7d102a8920 100644 --- a/dev/tests/static/testsuite/Legacy/ConfigTest.php +++ b/dev/tests/static/testsuite/Legacy/ConfigTest.php @@ -50,6 +50,7 @@ public function testConfigFile($file) '/config/*/events/core_block_abstract_to_html_after' => 'Event has been replaced with "core_layout_render_element"', '/config/*/events/catalog_controller_product_delete' => '', + '/config//observers/*/args' => 'This was an undocumented and unused feature in event subscribers', ); $xml = simplexml_load_file($file); foreach ($obsoleteNodes as $xpath => $suggestion) { diff --git a/dev/tests/static/testsuite/Legacy/_files/obsolete_classes.php b/dev/tests/static/testsuite/Legacy/_files/obsolete_classes.php index 4c6f2c28eda96..0425eab9586f6 100644 --- a/dev/tests/static/testsuite/Legacy/_files/obsolete_classes.php +++ b/dev/tests/static/testsuite/Legacy/_files/obsolete_classes.php @@ -58,6 +58,7 @@ 'Mage_Adminhtml_Block_Api_Edituser', 'Mage_Adminhtml_Block_Api_Tab_Userroles', 'Mage_Adminhtml_Block_Catalog', + 'Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Settings', 'Mage_Adminhtml_Block_Page_Menu' => array('suggestion' => 'Mage_Backend_Block_Menu'), 'Mage_Adminhtml_Block_Permissions_User', 'Mage_Adminhtml_Block_Permissions_User_Grid', @@ -109,6 +110,7 @@ 'Mage_Core_Model_Resource_Language_Collection', 'Mage_Core_Model_Session_Abstract_Varien', 'Mage_Core_Model_Session_Abstract_Zend', + 'Mage_Core_Model_Layout_Data' => array('suggestion' => 'Mage_Core_Model_Layout_Update'), 'Mage_Customer_Block_Account', 'Mage_Directory_Model_Resource_Currency_Collection', 'Mage_Downloadable_FileController' => array( diff --git a/dev/tests/static/testsuite/Legacy/_files/obsolete_methods.php b/dev/tests/static/testsuite/Legacy/_files/obsolete_methods.php index c8b5b38baac41..4a5d306ab0758 100644 --- a/dev/tests/static/testsuite/Legacy/_files/obsolete_methods.php +++ b/dev/tests/static/testsuite/Legacy/_files/obsolete_methods.php @@ -111,6 +111,7 @@ '_sendUploadResponse' => array('class_scope' => 'Mage_Adminhtml_CustomerController'), '_sendUploadResponse' => array('class_scope' => 'Mage_Adminhtml_Newsletter_SubscriberController'), '_setAttribteValue', + '_usePriceIncludeTax', 'addBackupedFilter', 'addConfigField' => array('class_scope' => 'Mage_Core_Model_Resource_Setup'), 'addConstraint' => array('class_scope' => 'Varien_Db_Adapter_Pdo_Mysql'), @@ -231,6 +232,7 @@ 'getMergedCssUrl', 'getMergedJsUrl', 'getMinQueryLenght', + 'getNeedUsePriceExcludeTax' => array('suggestion' => 'Mage_Tax_Model_Config::priceIncludesTax()'), 'getOneBalanceTotal', 'getOrderHtml' => array('class_scope' => 'Mage_GoogleAnalytics_Block_Ga'), 'getOrderId' => array('class_scope' => 'Mage_Checkout_Block_Onepage_Success'), @@ -343,6 +345,7 @@ 'setJoinFlag' => array('class_scope' => 'Mage_Tag_Model_Resource_Product_Collection'), 'setJoinFlag' => array('class_scope' => 'Mage_Tag_Model_Resource_Tag_Collection'), 'setOrderId' => array('class_scope' => 'Mage_Shipping_Block_Tracking_Popup'), + 'setNeedUsePriceExcludeTax' => array('suggestion' => 'Mage_Tax_Model_Config::setPriceIncludesTax()'), 'setWatermarkHeigth' => array('suggestion' => 'setWatermarkHeight'), 'getWatermarkHeigth' => array('suggestion' => 'getWatermarkHeight'), 'setParentBlock', @@ -376,5 +379,60 @@ 'validateDataArray' => array('class_scope' => 'Varien_Convert_Container_Abstract'), 'validateFile' => array('class_scope' => 'Mage_Core_Model_Design_Package'), 'validateOrder' => array('class_scope' => 'Mage_Checkout_Model_Type_Onepage'), - 'prepareAttributesForSave' => array('class_scope' => 'Mage_ImportExport_Model_Import_Entity_Product') + 'prepareAttributesForSave' => array('class_scope' => 'Mage_ImportExport_Model_Import_Entity_Product'), + 'fetchUpdatesByHandle' => array( + 'class_scope' => 'Mage_Core_Model_Resource_Layout', 'suggestion' => 'Mage_Core_Model_Resource_Layout_Update' + ), + 'getElementClass' => array('class_scope' => 'Mage_Core_Model_Layout_Update'), + 'addUpdate' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'asArray' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'asString' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'addHandle' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'removeHandle' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getHandles' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'addPageHandles' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getPageHandleParents' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'pageHandleExists' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getPageHandles' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getPageHandlesHierarchy' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getPageHandleLabel' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getPageHandleType' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'load' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'asSimplexml' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getFileLayoutUpdatesXml' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ), + 'getContainers' => array( + 'class_scope' => 'Mage_Core_Model_Layout_Update', 'suggestion' => 'Mage_Core_Model_Layout_Merge' + ) ); diff --git a/dev/tests/static/testsuite/Php/_files/whitelist/core.txt b/dev/tests/static/testsuite/Php/_files/whitelist/core.txt index 03c89c2cb2551..17dbd8bb88b5d 100644 --- a/dev/tests/static/testsuite/Php/_files/whitelist/core.txt +++ b/dev/tests/static/testsuite/Php/_files/whitelist/core.txt @@ -1,4 +1,5 @@ app/bootstrap.php +app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Popup/Grid.php app/code/core/Mage/Adminhtml/Block/Catalog/Product/Options/Ajax.php app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Account.php diff --git a/dev/tests/unit/framework/tests/unit/phpunit.xml.dist b/dev/tests/unit/framework/tests/unit/phpunit.xml.dist index fe4d9b0ba9dd8..471cffc12e470 100644 --- a/dev/tests/unit/framework/tests/unit/phpunit.xml.dist +++ b/dev/tests/unit/framework/tests/unit/phpunit.xml.dist @@ -1,6 +1,6 @@ - - - - - - - testsuite - - - - - - + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category Magento + * @package Magento + * @subpackage unit_tests + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +--> + + + + + testsuite + + + + + + diff --git a/dev/tests/unit/testsuite/Mage/Catalog/Model/Product/Indexer/FlatTest.php b/dev/tests/unit/testsuite/Mage/Catalog/Model/Product/Indexer/FlatTest.php new file mode 100644 index 0000000000000..7d84b23879084 --- /dev/null +++ b/dev/tests/unit/testsuite/Mage/Catalog/Model/Product/Indexer/FlatTest.php @@ -0,0 +1,352 @@ +_model = new Mage_Catalog_Model_Product_Indexer_Flat; + $this->_event = $this->getMock('Mage_Index_Model_Event', + array('getFlatHelper', 'getEntity', 'getType', 'getDataObject'), array(), '', false + ); + } + + public function testMatchEventAvailability() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat'); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(false)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(false)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + /** + * @dataProvider getEavAttributeProvider + */ + public function testMatchEventForEavAttribute($attributeValue, $addFilterable, $origData, $data, $eventType, + $result + ) { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue(Mage_Catalog_Model_Resource_Eav_Attribute::ENTITY)); + + if ($attributeValue) { + $attributeValue = $this->getMockBuilder('Mage_Catalog_Model_Resource_Eav_Attribute') + ->disableOriginalConstructor() + ->setMethods(array('getData', 'getOrigData')) + ->getMock(); + } + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue($attributeValue)); + + $flatHelper->expects($this->any()) + ->method('isAddFilterableAttributes') + ->will($this->returnValue($addFilterable)); + + if (!$attributeValue) { + $this->assertEquals($result, $this->_model->matchEvent($this->_event)); + return; + } + + $attributeValue->expects($this->any()) + ->method('getData') + ->will($this->returnValueMap($data)); + + $attributeValue->expects($this->any()) + ->method('getOrigData') + ->will($this->returnValueMap($origData)); + + $this->_event->expects($this->any()) + ->method('getType') + ->will($this->returnValue($eventType)); + $this->assertEquals($result, $this->_model->matchEvent($this->_event)); + } + + public function testMatchEventForStoreForDelete() + { + $this->_prepareStoreConfiguration(); + + $this->_event->expects($this->any()) + ->method('getType') + ->will($this->returnValue(Mage_Index_Model_Event::TYPE_DELETE)); + + $this->assertTrue($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventForEmptyStoreForSave() + { + $this->_prepareStoreConfiguration(); + + $this->_event->expects($this->any()) + ->method('getType') + ->will($this->returnValue(Mage_Index_Model_Event::TYPE_SAVE)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue(null)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventForOldStoreForSave() + { + $this->_prepareStoreConfiguration(); + + $this->_event->expects($this->any()) + ->method('getType') + ->will($this->returnValue(Mage_Index_Model_Event::TYPE_SAVE)); + + $store = $this->getMockBuilder('Mage_Core_Model_Store') + ->disableOriginalConstructor() + ->getMock(); + + $store->expects($this->any()) + ->method('isObjectNew') + ->will($this->returnValue(false)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue($store)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventForNewStoreForSave() + { + $this->_prepareStoreConfiguration(); + + $this->_event->expects($this->any()) + ->method('getType') + ->will($this->returnValue(Mage_Index_Model_Event::TYPE_SAVE)); + + $store = $this->getMockBuilder('Mage_Core_Model_Store') + ->disableOriginalConstructor() + ->getMock(); + + $store->expects($this->any()) + ->method('isObjectNew') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue($store)); + + $this->assertTrue($this->_model->matchEvent($this->_event)); + } + + protected function _prepareStoreConfiguration() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue(Mage_Core_Model_Store::ENTITY)); + } + + public function testMatchEventForEmptyStoreGroup() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue(Mage_Core_Model_Store_Group::ENTITY)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue(null)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + + public function testMatchEventForNotChangedStoreGroup() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue(Mage_Core_Model_Store_Group::ENTITY)); + + $storeGroup = $this->getMockBuilder('Mage_Core_Model_Store_Group') + ->disableOriginalConstructor() + ->getMock(); + + $storeGroup->expects($this->any()) + ->method('dataHasChangedFor') + ->will($this->returnValue(false)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue($storeGroup)); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventForChangedStoreGroup() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue(Mage_Core_Model_Store_Group::ENTITY)); + + $storeGroup = $this->getMockBuilder('Mage_Core_Model_Store_Group') + ->disableOriginalConstructor() + ->getMock(); + + $storeGroup->expects($this->any()) + ->method('dataHasChangedFor') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getDataObject') + ->will($this->returnValue($storeGroup)); + + $this->assertTrue($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventParentFallback() + { + $flatHelper = $this->getMock('Mage_Catalog_Helper_Product_Flat', array(), array(), '', false); + $flatHelper->expects($this->any()) + ->method('isAvailable') + ->will($this->returnValue(true)); + $flatHelper->expects($this->any()) + ->method('isBuilt') + ->will($this->returnValue(true)); + + $this->_event->expects($this->any()) + ->method('getFlatHelper') + ->will($this->returnValue($flatHelper)); + + $this->_event->expects($this->any()) + ->method('getEntity') + ->will($this->returnValue('some_value')); + + $this->assertFalse($this->_model->matchEvent($this->_event)); + } + + public function testMatchEventCaching() + { + $this->testMatchEventForChangedStoreGroup(); + + $storeGroup = $this->_event->getDataObject(); + + $storeGroup->expects($this->any()) + ->method('dataHasChangedFor') + ->will($this->returnValue(false)); + + $this->assertTrue($this->_model->matchEvent($this->_event)); + + } + + /** + * Provider for testMatchEventForEavAttribute + */ + public static function getEavAttributeProvider() + { + return include __DIR__ . '/../../../_files/eav_attributes_data.php'; + } + +} diff --git a/dev/tests/unit/testsuite/Mage/Catalog/_files/eav_attributes_data.php b/dev/tests/unit/testsuite/Mage/Catalog/_files/eav_attributes_data.php new file mode 100644 index 0000000000000..129b0fd0cf050 --- /dev/null +++ b/dev/tests/unit/testsuite/Mage/Catalog/_files/eav_attributes_data.php @@ -0,0 +1,410 @@ +getMock('Mage_Core_Helper_String', array('__')); + $helper->expects($this->any()) + ->method('__') + ->will($this->returnArgument(0)) + ; + $attributeData = array( + 'store_label' => 'Test', + 'attribute_code' => 'test', + 'is_required' => 1, + 'validate_rules' => array( + 'min_text_length' => 0, + 'max_text_length' => 0, + 'input_validation' => 0 + ) + ); + /** @var $attribute Mage_Eav_Model_Entity_Attribute_Abstract|PHPUnit_Framework_MockObject_MockObject */ + $attribute = $this->getMock( + 'Mage_Eav_Model_Entity_Attribute_Abstract', array('_init'), array($attributeData) + ); + $this->_model = new Mage_Eav_Model_Attribute_Data_Text(array( + 'translationHelper' => $helper, + 'stringHelper' => $helper, + )); + $this->_model->setAttribute($attribute); + } + + protected function tearDown() + { + $this->_model = null; + } + + /** + * @dataProvider validateValueDataProvider + * @param mixed $inputValue + * @param mixed $expectedResult + */ + public function testValidateValue($inputValue, $expectedResult) + { + $this->assertEquals($expectedResult, $this->_model->validateValue($inputValue)); + } + + public static function validateValueDataProvider() + { + return array( + 'zero string' => array('0', true), + 'zero integer' => array(0, array('"%s" is a required value.')) + ); + } +} diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/OrderTest.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/OrderTest.php index de6ec5e4dcea8..a7d097a04d830 100644 --- a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/OrderTest.php +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/OrderTest.php @@ -18,9 +18,13 @@ * versions in the future. If you wish to customize Magento for your * needs please refer to http://www.magentocommerce.com for more information. * + * @category Magento + * @package Mage_Sales + * @subpackage unit_tests * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ + class Mage_Sales_Model_Config_OrderedTest extends PHPUnit_Framework_TestCase { /** diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/core_totals_config.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/core_totals_config.php index 439cd2ccaa3f2..1b006a1093d3d 100644 --- a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/core_totals_config.php +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/core_totals_config.php @@ -20,7 +20,7 @@ * * @category Magento * @package Mage_Sales - * @subpackage integration_tests + * @subpackage unit_tests * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/custom_totals_config.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/custom_totals_config.php index 2213e330b8efe..29bbdfb81b01e 100644 --- a/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/custom_totals_config.php +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Config/_files/custom_totals_config.php @@ -20,7 +20,7 @@ * * @category Magento * @package Mage_Sales - * @subpackage integration_tests + * @subpackage unit_tests * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Invoice/Total/ShippingTest.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Invoice/Total/ShippingTest.php new file mode 100644 index 0000000000000..33a5f2175e838 --- /dev/null +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Invoice/Total/ShippingTest.php @@ -0,0 +1,97 @@ +getMock('Mage_Sales_Model_Order_Invoice', array('_init'), array($oneInvoiceData)); + $result->addItem($prevInvoice); + } + return $result; + } + + /** + * @dataProvider collectDataProvider + * @param array $prevInvoicesData + * @param float $orderShipping + * @param float $invoiceShipping + * @param float $expectedShipping + */ + public function testCollect(array $prevInvoicesData, $orderShipping, $invoiceShipping, $expectedShipping) + { + /** @var $order Mage_Sales_Model_Order|PHPUnit_Framework_MockObject_MockObject */ + $order = $this->getMock('Mage_Sales_Model_Order', array('_init', 'getInvoiceCollection')); + $order->setData('shipping_amount', $orderShipping); + $order->expects($this->any()) + ->method('getInvoiceCollection') + ->will($this->returnValue($this->_getInvoiceCollection($prevInvoicesData))) + ; + /** @var $invoice Mage_Sales_Model_Order_Invoice|PHPUnit_Framework_MockObject_MockObject */ + $invoice = $this->getMock('Mage_Sales_Model_Order_Invoice', array('_init')); + $invoice->setData('shipping_amount', $invoiceShipping); + $invoice->setOrder($order); + + $total = new Mage_Sales_Model_Order_Invoice_Total_Shipping(); + $total->collect($invoice); + + $this->assertEquals($expectedShipping, $invoice->getShippingAmount()); + } + + public static function collectDataProvider() + { + return array( + 'no previous invoices' => array( + 'prevInvoicesData' => array(array()), + 'orderShipping' => 10.00, + 'invoiceShipping' => 5.00, + 'expectedShipping' => 10.00 + ), + 'zero shipping in previous invoices' => array( + 'prevInvoicesData' => array(array('shipping_amount' => '0.0000')), + 'orderShipping' => 10.00, + 'invoiceShipping' => 5.00, + 'expectedShipping' => 10.00 + ), + 'non-zero shipping in previous invoices' => array( + 'prevInvoicesData' => array(array('shipping_amount' => '10.000')), + 'orderShipping' => 10.00, + 'invoiceShipping' => 5.00, + 'expectedShipping' => 0 + ), + ); + } +} diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Shipment/TrackTest.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Shipment/TrackTest.php index c2f629d911122..50e38e821d5f6 100644 --- a/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Shipment/TrackTest.php +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Order/Shipment/TrackTest.php @@ -19,8 +19,8 @@ * needs please refer to http://www.magentocommerce.com for more information. * * @category Magento - * @package Mage_Sale - * @subpackage integration_tests + * @package Mage_Sales + * @subpackage unit_tests * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ diff --git a/dev/tests/unit/testsuite/Mage/Sales/Model/Quote/ItemTest.php b/dev/tests/unit/testsuite/Mage/Sales/Model/Quote/ItemTest.php index 0cd97020af5b2..1a1b7ccbff342 100644 --- a/dev/tests/unit/testsuite/Mage/Sales/Model/Quote/ItemTest.php +++ b/dev/tests/unit/testsuite/Mage/Sales/Model/Quote/ItemTest.php @@ -19,7 +19,7 @@ * needs please refer to http://www.magentocommerce.com for more information. * * @category Magento - * @package Mage_Sale + * @package Mage_Sales * @subpackage unit_tests * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) diff --git a/dev/tests/unit/testsuite/Varien/Db/Adapter/Pdo/MysqlTest.php b/dev/tests/unit/testsuite/Varien/Db/Adapter/Pdo/MysqlTest.php index 9933f2cb08dd3..3db6b4c739667 100644 --- a/dev/tests/unit/testsuite/Varien/Db/Adapter/Pdo/MysqlTest.php +++ b/dev/tests/unit/testsuite/Varien/Db/Adapter/Pdo/MysqlTest.php @@ -51,14 +51,6 @@ class Varien_Db_Adapter_Pdo_MysqlTest extends PHPUnit_Framework_TestCase */ protected function setUp() { - $this->_adapter = new Varien_Db_Adapter_Pdo_Mysql( - array( - 'dbname' => 'not_exists', - 'username' => 'not_valid', - 'password' => 'not_valid', - ) - ); - $this->_mockAdapter = $this->getMock( 'Varien_Db_Adapter_Pdo_Mysql', array('beginTransaction', 'getTransactionLevel'), @@ -68,6 +60,29 @@ protected function setUp() $this->_mockAdapter->expects($this->any()) ->method('getTransactionLevel') ->will($this->returnValue(1)); + + $this->_adapter = $this->getMock( + 'Varien_Db_Adapter_Pdo_Mysql', + array('_connect', '_beginTransaction', '_commit', '_rollBack'), + array( + 'dbname' => 'not_exists', + 'username' => 'not_valid', + 'password' => 'not_valid', + ), + '', + false + ); + + $profiler = $this->getMock( + 'Zend_Db_Profiler' + ); + + $resourceProperty = new ReflectionProperty( + get_class($this->_adapter), + '_profiler' + ); + $resourceProperty->setAccessible(true); + $resourceProperty->setValue($this->_adapter, $profiler); } /** @@ -171,4 +186,197 @@ public static function sqlQueryProvider() array('INSERT into user'), ); } + + /** + * Test Asymmetric transaction rollback failure + */ + public function testAsymmetricRollBackFailure() + { + try { + $this->_adapter->rollBack(); + throw new Exception('Test Failed!'); + } catch (Exception $e) { + $this->assertEquals( + Varien_Db_Adapter_Interface::ERROR_ASYMMETRIC_ROLLBACK_MESSAGE, + $e->getMessage() + ); + } + } + + /** + * Test Asymmetric transaction commit failure + */ + public function testAsymmetricCommitFailure() + { + try { + $this->_adapter->commit(); + throw new Exception('Test Failed!'); + } catch (Exception $e) { + $this->assertEquals( + Varien_Db_Adapter_Interface::ERROR_ASYMMETRIC_COMMIT_MESSAGE, + $e->getMessage() + ); + } + } + + /** + * Test Asymmetric transaction commit success + */ + public function testAsymmetricCommitSuccess() + { + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + $this->_adapter->beginTransaction(); + $this->assertEquals(1, $this->_adapter->getTransactionLevel()); + $this->_adapter->commit(); + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + } + + /** + * Test Asymmetric transaction rollback success + */ + public function testAsymmetricRollBackSuccess() + { + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + $this->_adapter->beginTransaction(); + $this->assertEquals(1, $this->_adapter->getTransactionLevel()); + $this->_adapter->rollBack(); + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + } + + /** + * Test successfull nested transaction + */ + public function testNestedTransactionCommitSuccess() + { + $this->_adapter->expects($this->exactly(2)) + ->method('_connect'); + $this->_adapter->expects($this->once()) + ->method('_beginTransaction'); + $this->_adapter->expects($this->once()) + ->method('_commit'); + + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->assertEquals(3, $this->_adapter->getTransactionLevel()); + $this->_adapter->commit(); + $this->_adapter->commit(); + $this->_adapter->commit(); + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + } + + /** + * Test successfull nested transaction + */ + public function testNestedTransactionRollBackSuccess() + { + $this->_adapter->expects($this->exactly(2)) + ->method('_connect'); + $this->_adapter->expects($this->once()) + ->method('_beginTransaction'); + $this->_adapter->expects($this->once()) + ->method('_rollBack'); + + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->assertEquals(3, $this->_adapter->getTransactionLevel()); + $this->_adapter->rollBack(); + $this->_adapter->rollBack(); + $this->_adapter->rollBack(); + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + } + + /** + * Test successfull nested transaction + */ + public function testNestedTransactionLastRollBack() + { + $this->_adapter->expects($this->exactly(2)) + ->method('_connect'); + $this->_adapter->expects($this->once()) + ->method('_beginTransaction'); + $this->_adapter->expects($this->once()) + ->method('_rollBack'); + + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->assertEquals(3, $this->_adapter->getTransactionLevel()); + $this->_adapter->commit(); + $this->_adapter->commit(); + $this->_adapter->rollBack(); + $this->assertEquals(0, $this->_adapter->getTransactionLevel()); + } + + /** + * Test incomplete Roll Back in a nested transaction + */ + public function testIncompleteRollBackFailureOnCommit() + { + $this->_adapter->expects($this->exactly(2)) + ->method('_connect'); + + try { + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->rollBack(); + $this->_adapter->commit(); + throw new Exception('Test Failed!'); + } catch (Exception $e) { + $this->assertEquals( + Varien_Db_Adapter_Interface::ERROR_ROLLBACK_INCOMPLETE_MESSAGE, + $e->getMessage() + ); + $this->_adapter->rollBack(); + } + } + + /** + * Test incomplete Roll Back in a nested transaction + */ + public function testIncompleteRollBackFailureOnBeginTransaction() + { + $this->_adapter->expects($this->exactly(2)) + ->method('_connect'); + + try { + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->rollBack(); + $this->_adapter->beginTransaction(); + throw new Exception('Test Failed!'); + } catch (Exception $e) { + $this->assertEquals( + Varien_Db_Adapter_Interface::ERROR_ROLLBACK_INCOMPLETE_MESSAGE, + $e->getMessage() + ); + $this->_adapter->rollBack(); + } + } + + /** + * Test incomplete Roll Back in a nested transaction + */ + public function testSequentialTransactionsSuccess() + { + $this->_adapter->expects($this->exactly(4)) + ->method('_connect'); + $this->_adapter->expects($this->exactly(2)) + ->method('_beginTransaction'); + $this->_adapter->expects($this->once()) + ->method('_rollBack'); + $this->_adapter->expects($this->once()) + ->method('_commit'); + + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->beginTransaction(); + $this->_adapter->rollBack(); + $this->_adapter->rollBack(); + $this->_adapter->rollBack(); + + $this->_adapter->beginTransaction(); + $this->_adapter->commit(); + } } diff --git a/downloader/target.xml b/downloader/target.xml index 1ccf13fef8e48..55d4c97f2f5bd 100644 --- a/downloader/target.xml +++ b/downloader/target.xml @@ -1,6 +1,6 @@ - - - - - - - - - - - - - - - + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @package default_default + * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) + * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) + */ +--> + + + + + + + + + + + + + \ No newline at end of file diff --git a/lib/Mage/Autoload/Simple.php b/lib/Mage/Autoload/Simple.php index 8faadf984a861..c844b04c96860 100644 --- a/lib/Mage/Autoload/Simple.php +++ b/lib/Mage/Autoload/Simple.php @@ -1,5 +1,5 @@ -_file = $file; - } - return $this; - } - - public function getFile() - { - return $this->_file; - } - - public function getGenerator() - { - if (is_null($this->_generator)) { - $this->_generator = new Mage_Xml_Generator(); - } - return $this->_generator; - } - - /** - * @param array $content - */ - public function save($content) - { - $xmlContent = $this->getGenerator() - ->arrayToXml($content) - ->save($this->getFile()); - return $this; - } + */ + +class Mage_Connect_Channel_Generator extends Mage_Xml_Generator +{ + protected $_file = 'channel.xml'; + protected $_generator = null; + + public function __construct($file='') + { + if ($file) { + $this->_file = $file; + } + return $this; + } + + public function getFile() + { + return $this->_file; + } + + public function getGenerator() + { + if (is_null($this->_generator)) { + $this->_generator = new Mage_Xml_Generator(); + } + return $this->_generator; + } + + /** + * @param array $content + */ + public function save($content) + { + $xmlContent = $this->getGenerator() + ->arrayToXml($content) + ->save($this->getFile()); + return $this; + } } \ No newline at end of file diff --git a/lib/Mage/Connect/Channel/Parser.php b/lib/Mage/Connect/Channel/Parser.php index ac6342ed24c21..3f40894a8cc89 100644 --- a/lib/Mage/Connect/Channel/Parser.php +++ b/lib/Mage/Connect/Channel/Parser.php @@ -1,5 +1,5 @@ - '', - 'uri' => '', - 'summary' => '', - ); - - public function rewind() { - reset($this->properties); - } - - public function valid() { - return current($this->properties) !== false; - } - - public function key() { - return key($this->properties); - } - - public function current() { - return current($this->properties); - } - - public function next() { - next($this->properties); - } - - public function __get($var) - { - if (isset($this->properties[$var])) { - return $this->properties[$var]; - } - return null; - } - - public function __set($var, $value) - { - if (is_string($value)) { - $value = trim($value); - } - if (isset($this->properties[$var])) { - if ($value === null) { - $value = ''; - } - $this->properties[$var] = $value; - } - } - - public function toArray() - { - return array('channel' => $this->properties); - } - - public function fromArray(array $arr) - { - foreach($arr as $k=>$v) { - $this->$k = $v; - } - } - - - private function validator() - { - if(is_null($this->_validator)) { - $this->_validator = new Mage_Connect_Validator(); - } - return $this->_validator; - } - - /** - Stub for validation result - */ - public function validate() - { - $v = $this->validator(); - if(!$v->validatePackageName($this->name)) { - return false; - } - return true; - } - + */ + + +class Mage_Connect_Channel_VO implements Iterator +{ + + private $_validator = null; + + protected $properties = array( + 'name' => '', + 'uri' => '', + 'summary' => '', + ); + + public function rewind() { + reset($this->properties); + } + + public function valid() { + return current($this->properties) !== false; + } + + public function key() { + return key($this->properties); + } + + public function current() { + return current($this->properties); + } + + public function next() { + next($this->properties); + } + + public function __get($var) + { + if (isset($this->properties[$var])) { + return $this->properties[$var]; + } + return null; + } + + public function __set($var, $value) + { + if (is_string($value)) { + $value = trim($value); + } + if (isset($this->properties[$var])) { + if ($value === null) { + $value = ''; + } + $this->properties[$var] = $value; + } + } + + public function toArray() + { + return array('channel' => $this->properties); + } + + public function fromArray(array $arr) + { + foreach($arr as $k=>$v) { + $this->$k = $v; + } + } + + + private function validator() + { + if(is_null($this->_validator)) { + $this->_validator = new Mage_Connect_Validator(); + } + return $this->_validator; + } + + /** + Stub for validation result + */ + public function validate() + { + $v = $this->validator(); + if(!$v->validatePackageName($this->name)) { + return false; + } + return true; + } + } \ No newline at end of file diff --git a/lib/Mage/Connect/Command/Config.php b/lib/Mage/Connect/Command/Config.php index 87f7e12182d32..c31abde341d21 100644 --- a/lib/Mage/Connect/Command/Config.php +++ b/lib/Mage/Connect/Command/Config.php @@ -1,5 +1,5 @@ -cleanupParams($params); - - try { - $values = array(); - - $packager = $this->getPackager(); - $ftp = empty($options['ftp']) ? false : $options['ftp']; - if($ftp) { - list($config, $ftpObj) = $packager->getRemoteConfig($ftp); - } else { - $config = $this->config(); - } - foreach( $config as $k=>$v ) { - $values[$k] = $v; - } - if($ftp) { - @unlink($config->getFilename()); - } - $data = array($command => array('data'=>$values)); - $this->ui()->output($data); - } catch (Exception $e) { - if($ftp) { - @unlink($config->getFilename()); - } - return $this->doError($command, $e->getMessage()); - } - } - - - /** - * Set config variable - * @param string $command - * @param array $options - * @param array $params - * @return void - */ - public function doConfigSet($command, $options, $params) - { - $this->cleanupParams($params); - - try { - if(count($params) < 2) { - throw new Exception("Parameters count should be >= 2"); - } - $key = strtolower($params[self::PARAM_KEY]); - $val = strval($params[self::PARAM_VAL]); - $packager = $this->getPackager(); - - $ftp = empty($options['ftp']) ? false : $options['ftp']; - if($ftp) { - list($config, $ftpObj) = $packager->getRemoteConfig($ftp); - } else { - $config = $this->config(); - } - - if(!$config->hasKey($key)) { - throw new Exception ("No such config variable: {$key}!"); - } - if(!$config->validate($key, $val)) { - $possible = $this->config()->possible($key); - $type = $this->config()->type($key); - $errString = "Invalid value specified for $key!"; - throw new Exception($errString); - } - if($ftp) { - $packager->writeToRemoteConfig($config, $ftpObj); - } - $this->config()->$key = $val; - $this->ui()->output('Success'); - } catch (Exception $e) { - if($ftp) { - @unlink($config->getFilename()); - } - return $this->doError($command, $e->getMessage()); - } - } - - /** - * Get config var - * @param string $command - * @param array $options - * @param array $params - * @return void - */ - public function doConfigGet($command, $options, $params) - { - $this->cleanupParams($params); - - try { - if(count($params) < 1) { - throw new Exception("Parameters count should be >= 1"); - } - $packager = $this->getPackager(); - $ftp = empty($options['ftp']) ? false : $options['ftp']; - if($ftp) { - list($config, $ftpObj) = $packager->getRemoteConfig($ftp); - } else { - $config = $this->config(); - } - $key = strtolower($params[self::PARAM_KEY]); - if(!$config->hasKey($key)) { - throw new Exception("No such config variable '{$key}'!"); - } - if($ftp) { - @unlink($config->getFilename()); - } - $this->ui()->output($config->$key); - } catch (Exception $e) { - if($ftp) { - @unlink($config->getFilename()); - } - return $this->doError($command, $e->getMessage()); - } - } - - /** - * Config help - * @param string $command - * @param array $options - * @param array $params - * @return void - */ - public function doConfigHelp($command, $options, $params) - { - try { - $this->cleanupParams($params); - if(count($params) < 1) { - throw new Exception( "Parameters count should be >= 1"); - } - $packager = $this->getPackager(); - $ftp = empty($options['ftp']) ? false : $options['ftp']; - if($ftp) { - list($config, $ftpObj) = $packager->getRemoteConfig($ftp); - } else { - $config = $this->config(); - } - - $key = strtolower($params[self::PARAM_KEY]); - if(!$this->config()->hasKey($key)) { - throw new Exception("No such config variable '{$key}'!"); - } - - $possible = $config->possible($key); - $type = $config->type($key); - $doc = $config->doc($key); - if($ftp) { - @unlink($config->getFilename()); - } - $data = array(); - $data[$command]['data'] = array( - 'name' => array('Variable name', $key), - 'type' => array('Value type', $type), - 'possible' => array('Possible values', $possible), - 'doc' => $doc, - ); - $this->ui()->output($data); - } catch (Exception $e) { - if($ftp) { - @unlink($config->getFilename()); - } - return $this->doError($command, $e->getMessage()); - } - } - -} - - + */ + + +class Mage_Connect_Command_Config +extends Mage_Connect_Command + +{ + const PARAM_KEY = 0; + const PARAM_VAL = 1; + + + /** + * Show config variable + * @param string $command + * @param array $options + * @param array $params + * @return void + */ + public function doConfigShow($command, $options, $params) + { + $this->cleanupParams($params); + + try { + $values = array(); + + $packager = $this->getPackager(); + $ftp = empty($options['ftp']) ? false : $options['ftp']; + if($ftp) { + list($config, $ftpObj) = $packager->getRemoteConfig($ftp); + } else { + $config = $this->config(); + } + foreach( $config as $k=>$v ) { + $values[$k] = $v; + } + if($ftp) { + @unlink($config->getFilename()); + } + $data = array($command => array('data'=>$values)); + $this->ui()->output($data); + } catch (Exception $e) { + if($ftp) { + @unlink($config->getFilename()); + } + return $this->doError($command, $e->getMessage()); + } + } + + + /** + * Set config variable + * @param string $command + * @param array $options + * @param array $params + * @return void + */ + public function doConfigSet($command, $options, $params) + { + $this->cleanupParams($params); + + try { + if(count($params) < 2) { + throw new Exception("Parameters count should be >= 2"); + } + $key = strtolower($params[self::PARAM_KEY]); + $val = strval($params[self::PARAM_VAL]); + $packager = $this->getPackager(); + + $ftp = empty($options['ftp']) ? false : $options['ftp']; + if($ftp) { + list($config, $ftpObj) = $packager->getRemoteConfig($ftp); + } else { + $config = $this->config(); + } + + if(!$config->hasKey($key)) { + throw new Exception ("No such config variable: {$key}!"); + } + if(!$config->validate($key, $val)) { + $possible = $this->config()->possible($key); + $type = $this->config()->type($key); + $errString = "Invalid value specified for $key!"; + throw new Exception($errString); + } + if($ftp) { + $packager->writeToRemoteConfig($config, $ftpObj); + } + $this->config()->$key = $val; + $this->ui()->output('Success'); + } catch (Exception $e) { + if($ftp) { + @unlink($config->getFilename()); + } + return $this->doError($command, $e->getMessage()); + } + } + + /** + * Get config var + * @param string $command + * @param array $options + * @param array $params + * @return void + */ + public function doConfigGet($command, $options, $params) + { + $this->cleanupParams($params); + + try { + if(count($params) < 1) { + throw new Exception("Parameters count should be >= 1"); + } + $packager = $this->getPackager(); + $ftp = empty($options['ftp']) ? false : $options['ftp']; + if($ftp) { + list($config, $ftpObj) = $packager->getRemoteConfig($ftp); + } else { + $config = $this->config(); + } + $key = strtolower($params[self::PARAM_KEY]); + if(!$config->hasKey($key)) { + throw new Exception("No such config variable '{$key}'!"); + } + if($ftp) { + @unlink($config->getFilename()); + } + $this->ui()->output($config->$key); + } catch (Exception $e) { + if($ftp) { + @unlink($config->getFilename()); + } + return $this->doError($command, $e->getMessage()); + } + } + + /** + * Config help + * @param string $command + * @param array $options + * @param array $params + * @return void + */ + public function doConfigHelp($command, $options, $params) + { + try { + $this->cleanupParams($params); + if(count($params) < 1) { + throw new Exception( "Parameters count should be >= 1"); + } + $packager = $this->getPackager(); + $ftp = empty($options['ftp']) ? false : $options['ftp']; + if($ftp) { + list($config, $ftpObj) = $packager->getRemoteConfig($ftp); + } else { + $config = $this->config(); + } + + $key = strtolower($params[self::PARAM_KEY]); + if(!$this->config()->hasKey($key)) { + throw new Exception("No such config variable '{$key}'!"); + } + + $possible = $config->possible($key); + $type = $config->type($key); + $doc = $config->doc($key); + if($ftp) { + @unlink($config->getFilename()); + } + $data = array(); + $data[$command]['data'] = array( + 'name' => array('Variable name', $key), + 'type' => array('Value type', $type), + 'possible' => array('Possible values', $possible), + 'doc' => $doc, + ); + $this->ui()->output($data); + } catch (Exception $e) { + if($ftp) { + @unlink($config->getFilename()); + } + return $this->doError($command, $e->getMessage()); + } + } + +} + + diff --git a/lib/Mage/Connect/Command/Config_Header.php b/lib/Mage/Connect/Command/Config_Header.php index 9208cc7138336..22ec1f02c5e0f 100644 --- a/lib/Mage/Connect/Command/Config_Header.php +++ b/lib/Mage/Connect/Command/Config_Header.php @@ -1,5 +1,5 @@ - array( - 'summary' => 'Show All Settings', - 'function' => 'doConfigShow', - 'shortcut' => 'csh', - 'options' => array( - 'channel' => array( - 'shortopt' => 'c', - 'doc' => 'show configuration variables for another channel', - 'arg' => 'CHAN', -), -), - 'doc' => '[layer] -Displays all configuration values. An optional argument -may be used to tell which configuration layer to display. Valid -configuration layers are "user", "system" and "default". To display -configurations for different channels, set the default_channel -configuration variable and run config-show again. -', -), - 'config-get' => array( - 'summary' => 'Show One Setting', - 'function' => 'doConfigGet', - 'shortcut' => 'cg', - 'options' => array( - 'channel' => array( - 'shortopt' => 'c', - 'doc' => 'show configuration variables for another channel', - 'arg' => 'CHAN', -), -), - 'doc' => ' [layer] -Displays the value of one configuration parameter. The -first argument is the name of the parameter, an optional second argument -may be used to tell which configuration layer to look in. Valid configuration -layers are "user", "system" and "default". If no layer is specified, a value -will be picked from the first layer that defines the parameter, in the order -just specified. The configuration value will be retrieved for the channel -specified by the default_channel configuration variable. -', -), - 'config-set' => array( - 'summary' => 'Change Setting', - 'function' => 'doConfigSet', - 'shortcut' => 'cs', - 'options' => array( - 'channel' => array( - 'shortopt' => 'c', - 'doc' => 'show configuration variables for another channel', - 'arg' => 'CHAN', -), -), - 'doc' => ' [layer] -Sets the value of one configuration parameter. The first argument is -the name of the parameter, the second argument is the new value. Some -parameters are subject to validation, and the command will fail with -an error message if the new value does not make sense. An optional -third argument may be used to specify in which layer to set the -configuration parameter. The default layer is "user". The -configuration value will be set for the current channel, which -is controlled by the default_channel configuration variable. -', -), - 'config-help' => array( - 'summary' => 'Show Information About Setting', - 'function' => 'doConfigHelp', - 'shortcut' => 'ch', - 'options' => array(), - 'doc' => '[parameter] -Displays help for a configuration parameter. Without arguments it -displays help for all configuration parameters. -', -), + */ + +$commands = array( + 'config-show' => array( + 'summary' => 'Show All Settings', + 'function' => 'doConfigShow', + 'shortcut' => 'csh', + 'options' => array( + 'channel' => array( + 'shortopt' => 'c', + 'doc' => 'show configuration variables for another channel', + 'arg' => 'CHAN', +), +), + 'doc' => '[layer] +Displays all configuration values. An optional argument +may be used to tell which configuration layer to display. Valid +configuration layers are "user", "system" and "default". To display +configurations for different channels, set the default_channel +configuration variable and run config-show again. +', +), + 'config-get' => array( + 'summary' => 'Show One Setting', + 'function' => 'doConfigGet', + 'shortcut' => 'cg', + 'options' => array( + 'channel' => array( + 'shortopt' => 'c', + 'doc' => 'show configuration variables for another channel', + 'arg' => 'CHAN', +), +), + 'doc' => ' [layer] +Displays the value of one configuration parameter. The +first argument is the name of the parameter, an optional second argument +may be used to tell which configuration layer to look in. Valid configuration +layers are "user", "system" and "default". If no layer is specified, a value +will be picked from the first layer that defines the parameter, in the order +just specified. The configuration value will be retrieved for the channel +specified by the default_channel configuration variable. +', +), + 'config-set' => array( + 'summary' => 'Change Setting', + 'function' => 'doConfigSet', + 'shortcut' => 'cs', + 'options' => array( + 'channel' => array( + 'shortopt' => 'c', + 'doc' => 'show configuration variables for another channel', + 'arg' => 'CHAN', +), +), + 'doc' => ' [layer] +Sets the value of one configuration parameter. The first argument is +the name of the parameter, the second argument is the new value. Some +parameters are subject to validation, and the command will fail with +an error message if the new value does not make sense. An optional +third argument may be used to specify in which layer to set the +configuration parameter. The default layer is "user". The +configuration value will be set for the current channel, which +is controlled by the default_channel configuration variable. +', +), + 'config-help' => array( + 'summary' => 'Show Information About Setting', + 'function' => 'doConfigHelp', + 'shortcut' => 'ch', + 'options' => array(), + 'doc' => '[parameter] +Displays help for a configuration parameter. Without arguments it +displays help for all configuration parameters. +', +), ); \ No newline at end of file diff --git a/lib/Mage/Connect/Frontend/CLI.php b/lib/Mage/Connect/Frontend/CLI.php index 2395dfe8492cf..afc18a7231e7f 100644 --- a/lib/Mage/Connect/Frontend/CLI.php +++ b/lib/Mage/Connect/Frontend/CLI.php @@ -1,5 +1,5 @@ - - */ - -class Mage_Connect_Frontend_CLI -extends Mage_Connect_Frontend -{ - - /** - * Collected output - * @var array - */ - protected $_output = array(); - - /** - * Output error - * @param string $command - * @param string $message - * @return void - */ - public function doError($command, $message) - { - parent::doError($command, $message); - $this->writeln("Error: "); - $this->writeln("$command: $message"); - } - - - /** - * Output config help - * @param array $data - * @return void - */ - public function outputConfigHelp($data) - { - foreach($data['data'] as $k=>$v) { - if(is_scalar($v)) { - $this->writeln($v); - } elseif(is_array($v)) { - $this->writeln(implode(": ", $v)); - } - } - } - - - /** - * Output info - * @param array $data - * @return void - */ - public function outputRemoteInfo($data) - { - if(!is_array($data['releases'])) { - return; - } - foreach ($data['releases'] as $r) { - $this->writeln(implode(" ", $r)); - } - } - - - public function detectMethodByType($type) - { - $defaultMethod = "output"; - $methodMap = array( - 'list-upgrades'=> 'outputUpgrades', - 'list-available' => 'outputChannelsPackages', - 'list-installed' => 'writeInstalledList', - 'package-dependencies' => 'outputPackageDeps', - 'list-files' => 'outputPackageContents', - 'config-help' => 'outputConfigHelp', - 'info' => 'outputRemoteInfo', - 'config-show' => 'outputConfig', - 'install' => 'outputInstallResult', - 'install-file' => 'outputInstallResult', - 'upgrade' => 'outputInstallResult', - 'upgrade-all' => 'outputInstallResult', - 'uninstall' => 'outputDeleted', - 'list-channels' => 'outputListChannels', - ); - if(isset($methodMap[$type])) { - return $methodMap[$type]; - } - return $defaultMethod; - } - - - public function outputDeleted($data) - { - if(!count($data['data'])) { - return; - } - $this->writeln($data['title']); - foreach($data['data'] as $row) { - $this->writeln("$row[0]/$row[1]"); - } - } - - public function outputListChannels($data) - { - $this->writeln($data['title']); - - $channels =& $data['data'][Mage_Connect_Singleconfig::K_CHAN]; - foreach($channels as $name => $v) { - $this->writeln("$name: {$v[Mage_Connect_Singleconfig::K_URI]}"); - } - $aliases =& $data['data'][Mage_Connect_Singleconfig::K_CHAN_ALIAS]; - if(count($aliases)) { - $this->writeln(); - $this->writeln($data['title_aliases']); - foreach($aliases as $k=>$v) { - $this->writeln("$k => $v"); - } - } - - } - - /** - * Output install result - * @param array $data - * @return void - */ - public function outputInstallResult($data) - { - if(isset($data['title'])) { - $title = trim($data['title'])." "; - } else { - $title = ''; - } - foreach($data['assoc'] as $row) { - $this->printf("%s%s/%s %s\n", $title, $row['channel'], $row['name'], $row['version']); - } - } - - /** - * Ouptut package contents - * @param array $data - * @return void - */ - public function outputPackageContents($data) - { - $this->writeln($data['title']); - foreach($data['data'] as $file) { - $this->writeln($file); - } - } - - /** - * Output package dependencies - * @param $data - * @return void - */ - public function outputPackageDeps($data) - { - $title = $data['title']; - $this->writeln($title); - foreach($data['data'] as $package) { - $this->printf("%-20s %-20s %-20s %-20s\n", $package['channel'], $package['name'], $package['min'], $package['max']); - } - } - - /** - * Ouptut channel packages - * @param $data - * @return unknown_type - */ - public function outputChannelsPackages($data) - { - foreach($data['data'] as $channelInfo) { - $title =& $channelInfo['title']; - $packages =& $channelInfo['packages']; - $this->writeln($title); - foreach($packages as $name=>$package) { - $releases =& $package['releases']; - $tmp = array(); - foreach($releases as $ver=>$state) { - $tmp[] = "$ver $state"; - } - $tmp = implode(',',$tmp); - $this->writeln($name.": ".$tmp); - } - } - } - - - /** - * Make output - * - * @param array $data - * @return void - */ - - public function output($data) - { - $capture = $this->isCapture(); - if($capture) { - $this->_output[] = $data; - return; - } - - if(is_array($data)) { - foreach($data as $type=>$params) { - $method = $this->detectMethodByType($type); - if($method) { - $this->$method($params); - } else { - $this->writeln(__METHOD__." handler not found for {$type}"); - } - } - } else { - $this->writeln($data); - } - } - - - /** - * Detailed package info - * @param Mage_Connect_Package $package - * @return void - */ - public function outputPackage($package) - { - $fields = array( - 'Name'=>'name', - 'Version'=>'version', - 'Stability'=>'stability', - 'Description' => 'description', - 'Date' => 'date', - 'Authors' => 'authors', - ); - - foreach($fields as $title => $fld) { - $method = "get".ucfirst($fld); - $data = $package->$method(); - if(empty($data)) { - continue; - } - $this->write($title.": "); - if(is_array($data)) { - $this->write(print_r($data,true)); - } else { - $this->write($data); - } - $this->writeln(''); - } - } - - - /** - * Write channels list - * @param array $data - * @return void - */ - public function writeChannelsList($data) - { - $this->writeln("Channels available: "); - $this->writeln("==================="); - $out = $data['byName']; - ksort($out); - foreach($out as $k=>$v) { - $this->printf ("%-20s %-20s\n", $k, $v); - } - } - - /** - * Write installed list - * @param array $data - * @return void - */ - public function writeInstalledList($data) - { - $totalCount = 0; - foreach($data['data'] as $channel=>$packages) { - $title = sprintf($data['channel-title'], $channel); - $c = count($packages); - $totalCount += $c; - if(!$c) { - continue; - } - $this->writeln($title); - foreach($packages as $name=>$row) { - $this->printf("%-20s %-20s\n", $name, $row['version']." ".$row['stability']); - } - } - if($totalCount === 0) { - $this->writeln("No installed packages"); - } - } - - /** - * Output commands list - * @param array $data - * @return void - */ - public function outputCommandList($data) - { - $this->writeln("Connect commands available:"); - $this->writeln("==========================="); - foreach ($data as $k=>$v) { - $this->printf ("%-20s %-20s\n", $k, $v['summary']); - } - } - - /** - * Output config - * @param array $data - * @return void - */ - public function outputConfig($data) - { - foreach($data['data'] as $name=>$row) { - $value = $row['value'] === '' ? "" : strval($row['value']); - $this->printf("%-30s %-20s %-20s\n", $row['prompt'], $name, $value); - } - } - - /** - * Output config variable - * @param string $key - * @param string $value - * @return void - */ - public function outputConfigVariable($key, $value) - { - if($value === '') { - $value = ''; - } - $this->writeln("Config variable '{$key}': {$value}"); - } - - /** - * Write data and "\n" afterwards - * @param string $data - * @return void - */ - public function writeln($data = '') - { - $this->write($data."\n"); - } - - - /** - * get output, clear if needed - * - * @param bool $clearPrevoius optional, true by default - * @return array - */ - public function getOutput($clearPrevious = true) - { - $out = $this->_output; - if($clearPrevious) { - $this->_output = array(); - } - return $out; - } - - /** - * Write data to console - * @param string $data - * @return void - */ - public function write($data) - { - if($this->isSilent()) { - return; - } - print $data; - } - - /** - * Output printf-stlye formatted string and args - * @return void - */ - public function printf() - { - $args = func_get_args(); - $this->write(call_user_func_array('sprintf', $args)); - } - - /** - * Readline from console - * @return string - */ - public function readln() - { - $out = ""; - $key = fgetc(STDIN); - while ($key!="\n") { - $out.= $key; - $key = fread(STDIN, 1); - } - return $out; - } - - /** - * Output upgrades - * @param array $data - * @return void - */ - public function outputUpgrades($data) - { - foreach($data['data'] as $chan => $packages) { - $this->writeln("Updates for ".$chan.": "); - foreach($packages as $name => $data) { - $this->writeln(" $name: {$data['from']} => {$data['to']}"); - } - } - } - -} - + */ + +/** + * CLI Frontend implementation + * + * @category Mage + * @package Mage_Connect + * @author Magento Core Team + */ + +class Mage_Connect_Frontend_CLI +extends Mage_Connect_Frontend +{ + + /** + * Collected output + * @var array + */ + protected $_output = array(); + + /** + * Output error + * @param string $command + * @param string $message + * @return void + */ + public function doError($command, $message) + { + parent::doError($command, $message); + $this->writeln("Error: "); + $this->writeln("$command: $message"); + } + + + /** + * Output config help + * @param array $data + * @return void + */ + public function outputConfigHelp($data) + { + foreach($data['data'] as $k=>$v) { + if(is_scalar($v)) { + $this->writeln($v); + } elseif(is_array($v)) { + $this->writeln(implode(": ", $v)); + } + } + } + + + /** + * Output info + * @param array $data + * @return void + */ + public function outputRemoteInfo($data) + { + if(!is_array($data['releases'])) { + return; + } + foreach ($data['releases'] as $r) { + $this->writeln(implode(" ", $r)); + } + } + + + public function detectMethodByType($type) + { + $defaultMethod = "output"; + $methodMap = array( + 'list-upgrades'=> 'outputUpgrades', + 'list-available' => 'outputChannelsPackages', + 'list-installed' => 'writeInstalledList', + 'package-dependencies' => 'outputPackageDeps', + 'list-files' => 'outputPackageContents', + 'config-help' => 'outputConfigHelp', + 'info' => 'outputRemoteInfo', + 'config-show' => 'outputConfig', + 'install' => 'outputInstallResult', + 'install-file' => 'outputInstallResult', + 'upgrade' => 'outputInstallResult', + 'upgrade-all' => 'outputInstallResult', + 'uninstall' => 'outputDeleted', + 'list-channels' => 'outputListChannels', + ); + if(isset($methodMap[$type])) { + return $methodMap[$type]; + } + return $defaultMethod; + } + + + public function outputDeleted($data) + { + if(!count($data['data'])) { + return; + } + $this->writeln($data['title']); + foreach($data['data'] as $row) { + $this->writeln("$row[0]/$row[1]"); + } + } + + public function outputListChannels($data) + { + $this->writeln($data['title']); + + $channels =& $data['data'][Mage_Connect_Singleconfig::K_CHAN]; + foreach($channels as $name => $v) { + $this->writeln("$name: {$v[Mage_Connect_Singleconfig::K_URI]}"); + } + $aliases =& $data['data'][Mage_Connect_Singleconfig::K_CHAN_ALIAS]; + if(count($aliases)) { + $this->writeln(); + $this->writeln($data['title_aliases']); + foreach($aliases as $k=>$v) { + $this->writeln("$k => $v"); + } + } + + } + + /** + * Output install result + * @param array $data + * @return void + */ + public function outputInstallResult($data) + { + if(isset($data['title'])) { + $title = trim($data['title'])." "; + } else { + $title = ''; + } + foreach($data['assoc'] as $row) { + $this->printf("%s%s/%s %s\n", $title, $row['channel'], $row['name'], $row['version']); + } + } + + /** + * Ouptut package contents + * @param array $data + * @return void + */ + public function outputPackageContents($data) + { + $this->writeln($data['title']); + foreach($data['data'] as $file) { + $this->writeln($file); + } + } + + /** + * Output package dependencies + * @param $data + * @return void + */ + public function outputPackageDeps($data) + { + $title = $data['title']; + $this->writeln($title); + foreach($data['data'] as $package) { + $this->printf("%-20s %-20s %-20s %-20s\n", $package['channel'], $package['name'], $package['min'], $package['max']); + } + } + + /** + * Ouptut channel packages + * @param $data + * @return unknown_type + */ + public function outputChannelsPackages($data) + { + foreach($data['data'] as $channelInfo) { + $title =& $channelInfo['title']; + $packages =& $channelInfo['packages']; + $this->writeln($title); + foreach($packages as $name=>$package) { + $releases =& $package['releases']; + $tmp = array(); + foreach($releases as $ver=>$state) { + $tmp[] = "$ver $state"; + } + $tmp = implode(',',$tmp); + $this->writeln($name.": ".$tmp); + } + } + } + + + /** + * Make output + * + * @param array $data + * @return void + */ + + public function output($data) + { + $capture = $this->isCapture(); + if($capture) { + $this->_output[] = $data; + return; + } + + if(is_array($data)) { + foreach($data as $type=>$params) { + $method = $this->detectMethodByType($type); + if($method) { + $this->$method($params); + } else { + $this->writeln(__METHOD__." handler not found for {$type}"); + } + } + } else { + $this->writeln($data); + } + } + + + /** + * Detailed package info + * @param Mage_Connect_Package $package + * @return void + */ + public function outputPackage($package) + { + $fields = array( + 'Name'=>'name', + 'Version'=>'version', + 'Stability'=>'stability', + 'Description' => 'description', + 'Date' => 'date', + 'Authors' => 'authors', + ); + + foreach($fields as $title => $fld) { + $method = "get".ucfirst($fld); + $data = $package->$method(); + if(empty($data)) { + continue; + } + $this->write($title.": "); + if(is_array($data)) { + $this->write(print_r($data,true)); + } else { + $this->write($data); + } + $this->writeln(''); + } + } + + + /** + * Write channels list + * @param array $data + * @return void + */ + public function writeChannelsList($data) + { + $this->writeln("Channels available: "); + $this->writeln("==================="); + $out = $data['byName']; + ksort($out); + foreach($out as $k=>$v) { + $this->printf ("%-20s %-20s\n", $k, $v); + } + } + + /** + * Write installed list + * @param array $data + * @return void + */ + public function writeInstalledList($data) + { + $totalCount = 0; + foreach($data['data'] as $channel=>$packages) { + $title = sprintf($data['channel-title'], $channel); + $c = count($packages); + $totalCount += $c; + if(!$c) { + continue; + } + $this->writeln($title); + foreach($packages as $name=>$row) { + $this->printf("%-20s %-20s\n", $name, $row['version']." ".$row['stability']); + } + } + if($totalCount === 0) { + $this->writeln("No installed packages"); + } + } + + /** + * Output commands list + * @param array $data + * @return void + */ + public function outputCommandList($data) + { + $this->writeln("Connect commands available:"); + $this->writeln("==========================="); + foreach ($data as $k=>$v) { + $this->printf ("%-20s %-20s\n", $k, $v['summary']); + } + } + + /** + * Output config + * @param array $data + * @return void + */ + public function outputConfig($data) + { + foreach($data['data'] as $name=>$row) { + $value = $row['value'] === '' ? "" : strval($row['value']); + $this->printf("%-30s %-20s %-20s\n", $row['prompt'], $name, $value); + } + } + + /** + * Output config variable + * @param string $key + * @param string $value + * @return void + */ + public function outputConfigVariable($key, $value) + { + if($value === '') { + $value = ''; + } + $this->writeln("Config variable '{$key}': {$value}"); + } + + /** + * Write data and "\n" afterwards + * @param string $data + * @return void + */ + public function writeln($data = '') + { + $this->write($data."\n"); + } + + + /** + * get output, clear if needed + * + * @param bool $clearPrevoius optional, true by default + * @return array + */ + public function getOutput($clearPrevious = true) + { + $out = $this->_output; + if($clearPrevious) { + $this->_output = array(); + } + return $out; + } + + /** + * Write data to console + * @param string $data + * @return void + */ + public function write($data) + { + if($this->isSilent()) { + return; + } + print $data; + } + + /** + * Output printf-stlye formatted string and args + * @return void + */ + public function printf() + { + $args = func_get_args(); + $this->write(call_user_func_array('sprintf', $args)); + } + + /** + * Readline from console + * @return string + */ + public function readln() + { + $out = ""; + $key = fgetc(STDIN); + while ($key!="\n") { + $out.= $key; + $key = fread(STDIN, 1); + } + return $out; + } + + /** + * Output upgrades + * @param array $data + * @return void + */ + public function outputUpgrades($data) + { + foreach($data['data'] as $chan => $packages) { + $this->writeln("Updates for ".$chan.": "); + foreach($packages as $name => $data) { + $this->writeln(" $name: {$data['from']} => {$data['to']}"); + } + } + } + +} + diff --git a/lib/Mage/Connect/Package/VO.php b/lib/Mage/Connect/Package/VO.php index cb728ace851db..14eb07e61e05e 100644 --- a/lib/Mage/Connect/Package/VO.php +++ b/lib/Mage/Connect/Package/VO.php @@ -1,5 +1,5 @@ - '', - 'package_type_vesrion' => '', - 'cahnnel' => '', - 'extends' => '', - 'summary' => '', - 'description' => '', - 'authors' => '', - 'date' => '', - 'time' => '', - 'version' => '', - 'stability' => 'dev', - 'license' => '', - 'license_uri' => '', - 'contents' => '', - 'compatible' => '', - 'hotfix' => '' - ); - - public function rewind() { - reset($this->properties); - } - - public function valid() { - return current($this->properties) !== false; - } - - public function key() { - return key($this->properties); - } - - public function current() { - return current($this->properties); - } - - public function next() { - next($this->properties); - } - - public function __get($var) - { - if (isset($this->properties[$var])) { - return $this->properties[$var]; - } - return null; - } - - public function __set($var, $value) - { - if (is_string($value)) { - $value = trim($value); - } - if (isset($this->properties[$var])) { - if ($value === null) { - $value = ''; - } - $this->properties[$var] = $value; - } - } - - public function toArray() - { - return $this->properties; - } - -} - - + */ + +class Mage_Connect_Package_VO implements Iterator +{ + protected $properties = array( + 'name' => '', + 'package_type_vesrion' => '', + 'cahnnel' => '', + 'extends' => '', + 'summary' => '', + 'description' => '', + 'authors' => '', + 'date' => '', + 'time' => '', + 'version' => '', + 'stability' => 'dev', + 'license' => '', + 'license_uri' => '', + 'contents' => '', + 'compatible' => '', + 'hotfix' => '' + ); + + public function rewind() { + reset($this->properties); + } + + public function valid() { + return current($this->properties) !== false; + } + + public function key() { + return key($this->properties); + } + + public function current() { + return current($this->properties); + } + + public function next() { + next($this->properties); + } + + public function __get($var) + { + if (isset($this->properties[$var])) { + return $this->properties[$var]; + } + return null; + } + + public function __set($var, $value) + { + if (is_string($value)) { + $value = trim($value); + } + if (isset($this->properties[$var])) { + if ($value === null) { + $value = ''; + } + $this->properties[$var] = $value; + } + } + + public function toArray() + { + return $this->properties; + } + +} + + diff --git a/lib/PEAR/HTTP/HTTP.php b/lib/PEAR/HTTP/HTTP.php index 6ebd6dbc9ab16..93e5e7d7bb6d2 100644 --- a/lib/PEAR/HTTP/HTTP.php +++ b/lib/PEAR/HTTP/HTTP.php @@ -1,548 +1,548 @@ - - * @author Sterling Hughes - * @author Tomas V.V.Cox - * @author Richard Heyes - * @author Philippe Jausions - * @author Michael Wallner - * @copyright 2002-2008 The Authors - * @license http://www.opensource.org/licenses/bsd-license.php New BSD License - * @version CVS: $Id: HTTP.php,v 1.56 2008/08/31 20:15:43 jausions Exp $ - * @link http://pear.php.net/package/HTTP - */ - -/** - * Miscellaneous HTTP Utilities - * - * PEAR::HTTP provides static shorthand methods for generating HTTP dates, - * issueing HTTP HEAD requests, building absolute URIs, firing redirects and - * negotiating user preferred language. - * - * @category HTTP - * @package HTTP - * @author Stig Bakken - * @author Sterling Hughes - * @author Tomas V.V.Cox - * @author Richard Heyes - * @author Philippe Jausions - * @author Michael Wallner - * @license http://www.opensource.org/licenses/bsd-license.php New BSD License - * @abstract - * @version Release: $Revision: 1.56 $ - * @link http://pear.php.net/package/HTTP - */ -class HTTP -{ - /** - * Formats a RFC compliant GMT date HTTP header. This function honors the - * "y2k_compliance" php.ini directive and formats the GMT date corresponding - * to either RFC850 or RFC822. - * - * @param mixed $time unix timestamp or date (default = current time) - * - * @return mixed GMT date string, or false for an invalid $time parameter - * @access public - * @static - */ - function Date($time = null) - { - if (!isset($time)) { - $time = time(); - } elseif (!is_numeric($time) && (-1 === $time = strtotime($time))) { - return false; - } - - // RFC822 or RFC850 - $format = ini_get('y2k_compliance') ? 'D, d M Y' : 'l, d-M-y'; - - return gmdate($format .' H:i:s \G\M\T', $time); - } - - /** - * Negotiates language with the user's browser through the Accept-Language - * HTTP header or the user's host address. Language codes are generally in - * the form "ll" for a language spoken in only one country, or "ll-CC" for a - * language spoken in a particular country. For example, U.S. English is - * "en-US", while British English is "en-UK". Portugese as spoken in - * Portugal is "pt-PT", while Brazilian Portugese is "pt-BR". - * - * Quality factors in the Accept-Language: header are supported, e.g.: - * Accept-Language: en-UK;q=0.7, en-US;q=0.6, no, dk;q=0.8 - * - * - * require_once 'HTTP.php'; - * $langs = array( - * 'en' => 'locales/en', - * 'en-US' => 'locales/en', - * 'en-UK' => 'locales/en', - * 'de' => 'locales/de', - * 'de-DE' => 'locales/de', - * 'de-AT' => 'locales/de', - * ); - * $neg = HTTP::negotiateLanguage($langs); - * $dir = $langs[$neg]; - * - * - * @param array $supported An associative array of supported languages, - * whose values must evaluate to true. - * @param string $default The default language to use if none is found. - * - * @return string The negotiated language result or the supplied default. - * @static - * @access public - */ - function negotiateLanguage($supported, $default = 'en-US') - { - $supp = array(); - foreach ($supported as $lang => $isSupported) { - if ($isSupported) { - $supp[strtolower($lang)] = $lang; - } - } - - if (!count($supp)) { - return $default; - } - - if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - $match = HTTP::_matchAccept($_SERVER['HTTP_ACCEPT_LANGUAGE'], - $supp); - if (!is_null($match)) { - return $match; - } - } - - if (isset($_SERVER['REMOTE_HOST'])) { - $lang = strtolower(end($h = explode('.', $_SERVER['REMOTE_HOST']))); - if (isset($supp[$lang])) { - return $supp[$lang]; - } - } - - return $default; - } - - /** - * Negotiates charset with the user's browser through the Accept-Charset - * HTTP header. - * - * Quality factors in the Accept-Charset: header are supported, e.g.: - * Accept-Language: en-UK;q=0.7, en-US;q=0.6, no, dk;q=0.8 - * - * - * require_once 'HTTP.php'; - * $charsets = array( - * 'UTF-8', - * 'ISO-8859-1', - * ); - * $charset = HTTP::negotiateCharset($charsets); - * - * - * @param array $supported An array of supported charsets - * @param string $default The default charset to use if none is found. - * - * @return string The negotiated language result or the supplied default. - * @static - * @author Philippe Jausions - * @access public - * @since 1.4.1 - */ - function negotiateCharset($supported, $default = 'ISO-8859-1') - { - $supp = array(); - foreach ($supported as $charset) { - $supp[strtolower($charset)] = $charset; - } - - if (!count($supp)) { - return $default; - } - - if (isset($_SERVER['HTTP_ACCEPT_CHARSET'])) { - $match = HTTP::_matchAccept($_SERVER['HTTP_ACCEPT_CHARSET'], - $supp); - if (!is_null($match)) { - return $match; - } - } - - return $default; - } - - /** - * Negotiates content type with the user's browser through the Accept - * HTTP header. - * - * Quality factors in the Accept: header are supported, e.g.: - * Accept: application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8 - * - * - * require_once 'HTTP.php'; - * $contentType = array( - * 'application/xhtml+xml', - * 'application/xml', - * 'text/html', - * 'text/plain', - * ); - * $mime = HTTP::negotiateContentType($contentType); - * - * - * @param array $supported An associative array of supported MIME types. - * @param string $default The default type to use if none match. - * - * @return string The negotiated MIME type result or the supplied default. - * @static - * @author Philippe Jausions - * @access public - * @since 1.4.1 - */ - function negotiateMimeType($supported, $default) - { - $supp = array(); - foreach ($supported as $type) { - $supp[strtolower($type)] = $type; - } - - if (!count($supp)) { - return $default; - } - - if (isset($_SERVER['HTTP_ACCEPT'])) { - $accepts = HTTP::_sortAccept($_SERVER['HTTP_ACCEPT']); - - foreach ($accepts as $type => $q) { - if (substr($type, -2) != '/*') { - if (isset($supp[$type])) { - return $supp[$type]; - } - continue; - } - if ($type == '*/*') { - return array_shift($supp); - } - list($general, $specific) = explode('/', $type); - $general .= '/'; - $len = strlen($general); - foreach ($supp as $mime => $t) { - if (strncasecmp($general, $mime, $len) == 0) { - return $t; - } - } - } - } - - return $default; - } - - /** - * Parses a weighed "Accept" HTTP header and matches it against a list - * of supported options - * - * @param string $header The HTTP "Accept" header to parse - * @param array $supported A list of supported values - * - * @return string|NULL a matched option, or NULL if no match - * @access private - * @static - */ - function _matchAccept($header, $supported) - { - $matches = HTTP::_sortAccept($header); - foreach ($matches as $key => $q) { - if (isset($supported[$key])) { - return $supported[$key]; - } - } - // If any (i.e. "*") is acceptable, return the first supported format - if (isset($matches['*'])) { - return array_shift($supported); - } - return null; - } - - /** - * Parses and sorts a weighed "Accept" HTTP header - * - * @param string $header The HTTP "Accept" header to parse - * - * @return array a sorted list of "accept" options - * @access private - * @static - */ - function _sortAccept($header) - { - $matches = array(); - foreach (explode(',', $header) as $option) { - $option = array_map('trim', explode(';', $option)); - - $l = strtolower($option[0]); - if (isset($option[1])) { - $q = (float) str_replace('q=', '', $option[1]); - } else { - $q = null; - // Assign default low weight for generic values - if ($l == '*/*') { - $q = 0.01; - } elseif (substr($l, -1) == '*') { - $q = 0.02; - } - } - // Unweighted values, get high weight by their position in the - // list - $matches[$l] = isset($q) ? $q : 1000 - count($matches); - } - arsort($matches, SORT_NUMERIC); - return $matches; - } - - /** - * Sends a "HEAD" HTTP command to a server and returns the headers - * as an associative array. - * - * Example output could be: - * - * Array - * ( - * [response_code] => 200 // The HTTP response code - * [response] => HTTP/1.1 200 OK // The full HTTP response string - * [Date] => Fri, 11 Jan 2002 01:41:44 GMT - * [Server] => Apache/1.3.20 (Unix) PHP/4.1.1 - * [X-Powered-By] => PHP/4.1.1 - * [Connection] => close - * [Content-Type] => text/html - * ) - * - * - * @param string $url A valid URL, e.g.: http://pear.php.net/credits.php - * @param integer $timeout Timeout in seconds (default = 10) - * - * @return array Returns associative array of response headers on success - * or PEAR error on failure. - * @static - * @access public - * @see HTTP_Client::head() - * @see HTTP_Request - */ - function head($url, $timeout = 10) - { - $p = parse_url($url); - if (!isset($p['scheme'])) { - $p = parse_url(HTTP::absoluteURI($url)); - } elseif ($p['scheme'] != 'http') { - return HTTP::raiseError('Unsupported protocol: '. $p['scheme']); - } - - $port = isset($p['port']) ? $p['port'] : 80; - - if (!$fp = @fsockopen($p['host'], $port, $eno, $estr, $timeout)) { - return HTTP::raiseError("Connection error: $estr ($eno)"); - } - - $path = !empty($p['path']) ? $p['path'] : '/'; - $path .= !empty($p['query']) ? '?' . $p['query'] : ''; - - fputs($fp, "HEAD $path HTTP/1.0\r\n"); - fputs($fp, 'Host: ' . $p['host'] . ':' . $port . "\r\n"); - fputs($fp, "Connection: close\r\n\r\n"); - - $response = rtrim(fgets($fp, 4096)); - if (preg_match("|^HTTP/[^\s]*\s(.*?)\s|", $response, $status)) { - $headers['response_code'] = $status[1]; - } - $headers['response'] = $response; - - while ($line = fgets($fp, 4096)) { - if (!trim($line)) { - break; - } - if (($pos = strpos($line, ':')) !== false) { - $header = substr($line, 0, $pos); - $value = trim(substr($line, $pos + 1)); - - $headers[$header] = $value; - } - } - fclose($fp); - return $headers; - } - - /** - * This function redirects the client. This is done by issuing - * a "Location" header and exiting if wanted. If you set $rfc2616 to true - * HTTP will output a hypertext note with the location of the redirect. - * - * @param string $url URL where the redirect should go to. - * @param bool $exit Whether to exit immediately after redirection. - * @param bool $rfc2616 Wheter to output a hypertext note where we're - * redirecting to (Redirecting to - * ....) - * - * @return boolean Returns TRUE on succes (or exits) or FALSE if headers - * have already been sent. - * @static - * @access public - */ - function redirect($url, $exit = true, $rfc2616 = false) - { - if (headers_sent()) { - return false; - } - - $url = HTTP::absoluteURI($url); - header('Location: '. $url); - - if ($rfc2616 && isset($_SERVER['REQUEST_METHOD']) - && $_SERVER['REQUEST_METHOD'] != 'HEAD') { - echo ' -

Redirecting to: ' - .htmlspecialchars($url).'.

-'; - } - if ($exit) { - exit; - } - return true; - } - - /** - * This function returns the absolute URI for the partial URL passed. - * The current scheme (HTTP/HTTPS), host server, port, current script - * location are used if necessary to resolve any relative URLs. - * - * Offsets potentially created by PATH_INFO are taken care of to resolve - * relative URLs to the current script. - * - * You can choose a new protocol while resolving the URI. This is - * particularly useful when redirecting a web browser using relative URIs - * and to switch from HTTP to HTTPS, or vice-versa, at the same time. - * - * @param string $url Absolute or relative URI the redirect should - * go to. - * @param string $protocol Protocol to use when redirecting URIs. - * @param integer $port A new port number. - * - * @return string The absolute URI. - * @author Philippe Jausions - * @static - * @access public - */ - function absoluteURI($url = null, $protocol = null, $port = null) - { - // filter CR/LF - $url = str_replace(array("\r", "\n"), ' ', $url); - - // Mess around protocol and port with already absolute URIs - if (preg_match('!^([a-z0-9]+)://!i', $url)) { - if (empty($protocol) && empty($port)) { - return $url; - } - if (!empty($protocol)) { - $url = $protocol .':'. end($array = explode(':', $url, 2)); - } - if (!empty($port)) { - $url = preg_replace('!^(([a-z0-9]+)://[^/:]+)(:[\d]+)?!i', - '\1:'. $port, $url); - } - return $url; - } - - $host = 'localhost'; - if (!empty($_SERVER['HTTP_HOST'])) { - list($host) = explode(':', $_SERVER['HTTP_HOST']); - } elseif (!empty($_SERVER['SERVER_NAME'])) { - list($host) = explode(':', $_SERVER['SERVER_NAME']); - } - - if (empty($protocol)) { - if (isset($_SERVER['HTTPS']) && !strcasecmp($_SERVER['HTTPS'], 'on')) { - $protocol = 'https'; - } else { - $protocol = 'http'; - } - if (!isset($port) || $port != intval($port)) { - $port = isset($_SERVER['SERVER_PORT']) ? $_SERVER['SERVER_PORT'] : 80; - } - } - - if ($protocol == 'http' && $port == 80) { - unset($port); - } - if ($protocol == 'https' && $port == 443) { - unset($port); - } - - $server = $protocol.'://'.$host.(isset($port) ? ':'.$port : ''); - - $uriAll = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] - : $_SERVER['PHP_SELF']; - if (false !== ($q = strpos($uriAll, '?'))) { - $uriBase = substr($uriAll, 0, $q); - } else { - $uriBase = $uriAll; - } - if (!strlen($url) || $url{0} == '#') { - $url = $uriAll.$url; - } elseif ($url{0} == '?') { - $url = $uriBase.$url; - } - if ($url{0} == '/') { - return $server . $url; - } - - // Adjust for PATH_INFO if needed - if (isset($_SERVER['PATH_INFO']) && strlen($_SERVER['PATH_INFO'])) { - $path = dirname(substr($uriBase, 0, - -strlen($_SERVER['PATH_INFO']))); - } else { - /** - * Fixes bug #12672 PHP_SELF ending on / causes incorrect redirects - * - * @link http://pear.php.net/bugs/12672 - */ - $path = dirname($uriBase.'-'); - } - - if (substr($path = strtr($path, '\\', '/'), -1) != '/') { - $path .= '/'; - } - - return $server . $path . $url; - } - - /** - * Raise Error - * - * Lazy raising of PEAR_Errors. - * - * @param mixed $error Error - * @param integer $code Error code - * - * @return object PEAR_Error - * @static - * @access protected - */ - function raiseError($error = null, $code = null) - { - include_once 'PEAR.php'; - return PEAR::raiseError($error, $code); - } -} - + + * @author Sterling Hughes + * @author Tomas V.V.Cox + * @author Richard Heyes + * @author Philippe Jausions + * @author Michael Wallner + * @copyright 2002-2008 The Authors + * @license http://www.opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: HTTP.php,v 1.56 2008/08/31 20:15:43 jausions Exp $ + * @link http://pear.php.net/package/HTTP + */ + +/** + * Miscellaneous HTTP Utilities + * + * PEAR::HTTP provides static shorthand methods for generating HTTP dates, + * issueing HTTP HEAD requests, building absolute URIs, firing redirects and + * negotiating user preferred language. + * + * @category HTTP + * @package HTTP + * @author Stig Bakken + * @author Sterling Hughes + * @author Tomas V.V.Cox + * @author Richard Heyes + * @author Philippe Jausions + * @author Michael Wallner + * @license http://www.opensource.org/licenses/bsd-license.php New BSD License + * @abstract + * @version Release: $Revision: 1.56 $ + * @link http://pear.php.net/package/HTTP + */ +class HTTP +{ + /** + * Formats a RFC compliant GMT date HTTP header. This function honors the + * "y2k_compliance" php.ini directive and formats the GMT date corresponding + * to either RFC850 or RFC822. + * + * @param mixed $time unix timestamp or date (default = current time) + * + * @return mixed GMT date string, or false for an invalid $time parameter + * @access public + * @static + */ + function Date($time = null) + { + if (!isset($time)) { + $time = time(); + } elseif (!is_numeric($time) && (-1 === $time = strtotime($time))) { + return false; + } + + // RFC822 or RFC850 + $format = ini_get('y2k_compliance') ? 'D, d M Y' : 'l, d-M-y'; + + return gmdate($format .' H:i:s \G\M\T', $time); + } + + /** + * Negotiates language with the user's browser through the Accept-Language + * HTTP header or the user's host address. Language codes are generally in + * the form "ll" for a language spoken in only one country, or "ll-CC" for a + * language spoken in a particular country. For example, U.S. English is + * "en-US", while British English is "en-UK". Portugese as spoken in + * Portugal is "pt-PT", while Brazilian Portugese is "pt-BR". + * + * Quality factors in the Accept-Language: header are supported, e.g.: + * Accept-Language: en-UK;q=0.7, en-US;q=0.6, no, dk;q=0.8 + * + * + * require_once 'HTTP.php'; + * $langs = array( + * 'en' => 'locales/en', + * 'en-US' => 'locales/en', + * 'en-UK' => 'locales/en', + * 'de' => 'locales/de', + * 'de-DE' => 'locales/de', + * 'de-AT' => 'locales/de', + * ); + * $neg = HTTP::negotiateLanguage($langs); + * $dir = $langs[$neg]; + * + * + * @param array $supported An associative array of supported languages, + * whose values must evaluate to true. + * @param string $default The default language to use if none is found. + * + * @return string The negotiated language result or the supplied default. + * @static + * @access public + */ + function negotiateLanguage($supported, $default = 'en-US') + { + $supp = array(); + foreach ($supported as $lang => $isSupported) { + if ($isSupported) { + $supp[strtolower($lang)] = $lang; + } + } + + if (!count($supp)) { + return $default; + } + + if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { + $match = HTTP::_matchAccept($_SERVER['HTTP_ACCEPT_LANGUAGE'], + $supp); + if (!is_null($match)) { + return $match; + } + } + + if (isset($_SERVER['REMOTE_HOST'])) { + $lang = strtolower(end($h = explode('.', $_SERVER['REMOTE_HOST']))); + if (isset($supp[$lang])) { + return $supp[$lang]; + } + } + + return $default; + } + + /** + * Negotiates charset with the user's browser through the Accept-Charset + * HTTP header. + * + * Quality factors in the Accept-Charset: header are supported, e.g.: + * Accept-Language: en-UK;q=0.7, en-US;q=0.6, no, dk;q=0.8 + * + * + * require_once 'HTTP.php'; + * $charsets = array( + * 'UTF-8', + * 'ISO-8859-1', + * ); + * $charset = HTTP::negotiateCharset($charsets); + * + * + * @param array $supported An array of supported charsets + * @param string $default The default charset to use if none is found. + * + * @return string The negotiated language result or the supplied default. + * @static + * @author Philippe Jausions + * @access public + * @since 1.4.1 + */ + function negotiateCharset($supported, $default = 'ISO-8859-1') + { + $supp = array(); + foreach ($supported as $charset) { + $supp[strtolower($charset)] = $charset; + } + + if (!count($supp)) { + return $default; + } + + if (isset($_SERVER['HTTP_ACCEPT_CHARSET'])) { + $match = HTTP::_matchAccept($_SERVER['HTTP_ACCEPT_CHARSET'], + $supp); + if (!is_null($match)) { + return $match; + } + } + + return $default; + } + + /** + * Negotiates content type with the user's browser through the Accept + * HTTP header. + * + * Quality factors in the Accept: header are supported, e.g.: + * Accept: application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8 + * + * + * require_once 'HTTP.php'; + * $contentType = array( + * 'application/xhtml+xml', + * 'application/xml', + * 'text/html', + * 'text/plain', + * ); + * $mime = HTTP::negotiateContentType($contentType); + * + * + * @param array $supported An associative array of supported MIME types. + * @param string $default The default type to use if none match. + * + * @return string The negotiated MIME type result or the supplied default. + * @static + * @author Philippe Jausions + * @access public + * @since 1.4.1 + */ + function negotiateMimeType($supported, $default) + { + $supp = array(); + foreach ($supported as $type) { + $supp[strtolower($type)] = $type; + } + + if (!count($supp)) { + return $default; + } + + if (isset($_SERVER['HTTP_ACCEPT'])) { + $accepts = HTTP::_sortAccept($_SERVER['HTTP_ACCEPT']); + + foreach ($accepts as $type => $q) { + if (substr($type, -2) != '/*') { + if (isset($supp[$type])) { + return $supp[$type]; + } + continue; + } + if ($type == '*/*') { + return array_shift($supp); + } + list($general, $specific) = explode('/', $type); + $general .= '/'; + $len = strlen($general); + foreach ($supp as $mime => $t) { + if (strncasecmp($general, $mime, $len) == 0) { + return $t; + } + } + } + } + + return $default; + } + + /** + * Parses a weighed "Accept" HTTP header and matches it against a list + * of supported options + * + * @param string $header The HTTP "Accept" header to parse + * @param array $supported A list of supported values + * + * @return string|NULL a matched option, or NULL if no match + * @access private + * @static + */ + function _matchAccept($header, $supported) + { + $matches = HTTP::_sortAccept($header); + foreach ($matches as $key => $q) { + if (isset($supported[$key])) { + return $supported[$key]; + } + } + // If any (i.e. "*") is acceptable, return the first supported format + if (isset($matches['*'])) { + return array_shift($supported); + } + return null; + } + + /** + * Parses and sorts a weighed "Accept" HTTP header + * + * @param string $header The HTTP "Accept" header to parse + * + * @return array a sorted list of "accept" options + * @access private + * @static + */ + function _sortAccept($header) + { + $matches = array(); + foreach (explode(',', $header) as $option) { + $option = array_map('trim', explode(';', $option)); + + $l = strtolower($option[0]); + if (isset($option[1])) { + $q = (float) str_replace('q=', '', $option[1]); + } else { + $q = null; + // Assign default low weight for generic values + if ($l == '*/*') { + $q = 0.01; + } elseif (substr($l, -1) == '*') { + $q = 0.02; + } + } + // Unweighted values, get high weight by their position in the + // list + $matches[$l] = isset($q) ? $q : 1000 - count($matches); + } + arsort($matches, SORT_NUMERIC); + return $matches; + } + + /** + * Sends a "HEAD" HTTP command to a server and returns the headers + * as an associative array. + * + * Example output could be: + * + * Array + * ( + * [response_code] => 200 // The HTTP response code + * [response] => HTTP/1.1 200 OK // The full HTTP response string + * [Date] => Fri, 11 Jan 2002 01:41:44 GMT + * [Server] => Apache/1.3.20 (Unix) PHP/4.1.1 + * [X-Powered-By] => PHP/4.1.1 + * [Connection] => close + * [Content-Type] => text/html + * ) + * + * + * @param string $url A valid URL, e.g.: http://pear.php.net/credits.php + * @param integer $timeout Timeout in seconds (default = 10) + * + * @return array Returns associative array of response headers on success + * or PEAR error on failure. + * @static + * @access public + * @see HTTP_Client::head() + * @see HTTP_Request + */ + function head($url, $timeout = 10) + { + $p = parse_url($url); + if (!isset($p['scheme'])) { + $p = parse_url(HTTP::absoluteURI($url)); + } elseif ($p['scheme'] != 'http') { + return HTTP::raiseError('Unsupported protocol: '. $p['scheme']); + } + + $port = isset($p['port']) ? $p['port'] : 80; + + if (!$fp = @fsockopen($p['host'], $port, $eno, $estr, $timeout)) { + return HTTP::raiseError("Connection error: $estr ($eno)"); + } + + $path = !empty($p['path']) ? $p['path'] : '/'; + $path .= !empty($p['query']) ? '?' . $p['query'] : ''; + + fputs($fp, "HEAD $path HTTP/1.0\r\n"); + fputs($fp, 'Host: ' . $p['host'] . ':' . $port . "\r\n"); + fputs($fp, "Connection: close\r\n\r\n"); + + $response = rtrim(fgets($fp, 4096)); + if (preg_match("|^HTTP/[^\s]*\s(.*?)\s|", $response, $status)) { + $headers['response_code'] = $status[1]; + } + $headers['response'] = $response; + + while ($line = fgets($fp, 4096)) { + if (!trim($line)) { + break; + } + if (($pos = strpos($line, ':')) !== false) { + $header = substr($line, 0, $pos); + $value = trim(substr($line, $pos + 1)); + + $headers[$header] = $value; + } + } + fclose($fp); + return $headers; + } + + /** + * This function redirects the client. This is done by issuing + * a "Location" header and exiting if wanted. If you set $rfc2616 to true + * HTTP will output a hypertext note with the location of the redirect. + * + * @param string $url URL where the redirect should go to. + * @param bool $exit Whether to exit immediately after redirection. + * @param bool $rfc2616 Wheter to output a hypertext note where we're + * redirecting to (Redirecting to + * ....) + * + * @return boolean Returns TRUE on succes (or exits) or FALSE if headers + * have already been sent. + * @static + * @access public + */ + function redirect($url, $exit = true, $rfc2616 = false) + { + if (headers_sent()) { + return false; + } + + $url = HTTP::absoluteURI($url); + header('Location: '. $url); + + if ($rfc2616 && isset($_SERVER['REQUEST_METHOD']) + && $_SERVER['REQUEST_METHOD'] != 'HEAD') { + echo ' +

Redirecting to: ' + .htmlspecialchars($url).'.

+'; + } + if ($exit) { + exit; + } + return true; + } + + /** + * This function returns the absolute URI for the partial URL passed. + * The current scheme (HTTP/HTTPS), host server, port, current script + * location are used if necessary to resolve any relative URLs. + * + * Offsets potentially created by PATH_INFO are taken care of to resolve + * relative URLs to the current script. + * + * You can choose a new protocol while resolving the URI. This is + * particularly useful when redirecting a web browser using relative URIs + * and to switch from HTTP to HTTPS, or vice-versa, at the same time. + * + * @param string $url Absolute or relative URI the redirect should + * go to. + * @param string $protocol Protocol to use when redirecting URIs. + * @param integer $port A new port number. + * + * @return string The absolute URI. + * @author Philippe Jausions + * @static + * @access public + */ + function absoluteURI($url = null, $protocol = null, $port = null) + { + // filter CR/LF + $url = str_replace(array("\r", "\n"), ' ', $url); + + // Mess around protocol and port with already absolute URIs + if (preg_match('!^([a-z0-9]+)://!i', $url)) { + if (empty($protocol) && empty($port)) { + return $url; + } + if (!empty($protocol)) { + $url = $protocol .':'. end($array = explode(':', $url, 2)); + } + if (!empty($port)) { + $url = preg_replace('!^(([a-z0-9]+)://[^/:]+)(:[\d]+)?!i', + '\1:'. $port, $url); + } + return $url; + } + + $host = 'localhost'; + if (!empty($_SERVER['HTTP_HOST'])) { + list($host) = explode(':', $_SERVER['HTTP_HOST']); + } elseif (!empty($_SERVER['SERVER_NAME'])) { + list($host) = explode(':', $_SERVER['SERVER_NAME']); + } + + if (empty($protocol)) { + if (isset($_SERVER['HTTPS']) && !strcasecmp($_SERVER['HTTPS'], 'on')) { + $protocol = 'https'; + } else { + $protocol = 'http'; + } + if (!isset($port) || $port != intval($port)) { + $port = isset($_SERVER['SERVER_PORT']) ? $_SERVER['SERVER_PORT'] : 80; + } + } + + if ($protocol == 'http' && $port == 80) { + unset($port); + } + if ($protocol == 'https' && $port == 443) { + unset($port); + } + + $server = $protocol.'://'.$host.(isset($port) ? ':'.$port : ''); + + $uriAll = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] + : $_SERVER['PHP_SELF']; + if (false !== ($q = strpos($uriAll, '?'))) { + $uriBase = substr($uriAll, 0, $q); + } else { + $uriBase = $uriAll; + } + if (!strlen($url) || $url{0} == '#') { + $url = $uriAll.$url; + } elseif ($url{0} == '?') { + $url = $uriBase.$url; + } + if ($url{0} == '/') { + return $server . $url; + } + + // Adjust for PATH_INFO if needed + if (isset($_SERVER['PATH_INFO']) && strlen($_SERVER['PATH_INFO'])) { + $path = dirname(substr($uriBase, 0, + -strlen($_SERVER['PATH_INFO']))); + } else { + /** + * Fixes bug #12672 PHP_SELF ending on / causes incorrect redirects + * + * @link http://pear.php.net/bugs/12672 + */ + $path = dirname($uriBase.'-'); + } + + if (substr($path = strtr($path, '\\', '/'), -1) != '/') { + $path .= '/'; + } + + return $server . $path . $url; + } + + /** + * Raise Error + * + * Lazy raising of PEAR_Errors. + * + * @param mixed $error Error + * @param integer $code Error code + * + * @return object PEAR_Error + * @static + * @access protected + */ + function raiseError($error = null, $code = null) + { + include_once 'PEAR.php'; + return PEAR::raiseError($error, $code); + } +} + ?> \ No newline at end of file diff --git a/lib/PEAR/HTTP/Request.php b/lib/PEAR/HTTP/Request.php index b4b9b668ad116..45ca9455f321d 100644 --- a/lib/PEAR/HTTP/Request.php +++ b/lib/PEAR/HTTP/Request.php @@ -1,1521 +1,1521 @@ - - * @author Alexey Borzov - * @copyright 2002-2007 Richard Heyes - * @license http://opensource.org/licenses/bsd-license.php New BSD License - * @version CVS: $Id: Request.php,v 1.63 2008/10/11 11:07:10 avb Exp $ - * @link http://pear.php.net/package/HTTP_Request/ - */ - -/** - * PEAR and PEAR_Error classes (for error handling) - */ -require_once 'PEAR.php'; -/** - * Socket class - */ -require_once 'Net/Socket.php'; -/** - * URL handling class - */ -require_once 'Net/URL.php'; - -/**#@+ - * Constants for HTTP request methods - */ -define('HTTP_REQUEST_METHOD_GET', 'GET', true); -define('HTTP_REQUEST_METHOD_HEAD', 'HEAD', true); -define('HTTP_REQUEST_METHOD_POST', 'POST', true); -define('HTTP_REQUEST_METHOD_PUT', 'PUT', true); -define('HTTP_REQUEST_METHOD_DELETE', 'DELETE', true); -define('HTTP_REQUEST_METHOD_OPTIONS', 'OPTIONS', true); -define('HTTP_REQUEST_METHOD_TRACE', 'TRACE', true); -/**#@-*/ - -/**#@+ - * Constants for HTTP request error codes - */ -define('HTTP_REQUEST_ERROR_FILE', 1); -define('HTTP_REQUEST_ERROR_URL', 2); -define('HTTP_REQUEST_ERROR_PROXY', 4); -define('HTTP_REQUEST_ERROR_REDIRECTS', 8); -define('HTTP_REQUEST_ERROR_RESPONSE', 16); -define('HTTP_REQUEST_ERROR_GZIP_METHOD', 32); -define('HTTP_REQUEST_ERROR_GZIP_READ', 64); -define('HTTP_REQUEST_ERROR_GZIP_DATA', 128); -define('HTTP_REQUEST_ERROR_GZIP_CRC', 256); -/**#@-*/ - -/**#@+ - * Constants for HTTP protocol versions - */ -define('HTTP_REQUEST_HTTP_VER_1_0', '1.0', true); -define('HTTP_REQUEST_HTTP_VER_1_1', '1.1', true); -/**#@-*/ - -if (extension_loaded('mbstring') && (2 & ini_get('mbstring.func_overload'))) { - /** - * Whether string functions are overloaded by their mbstring equivalents - */ - define('HTTP_REQUEST_MBSTRING', true); -} else { - /** - * @ignore - */ - define('HTTP_REQUEST_MBSTRING', false); -} - -/** - * Class for performing HTTP requests - * - * Simple example (fetches yahoo.com and displays it): - * - * $a = &new HTTP_Request('http://www.yahoo.com/'); - * $a->sendRequest(); - * echo $a->getResponseBody(); - * - * - * @category HTTP - * @package HTTP_Request - * @author Richard Heyes - * @author Alexey Borzov - * @version Release: 1.4.4 - */ -class HTTP_Request -{ - /**#@+ - * @access private - */ - /** - * Instance of Net_URL - * @var Net_URL - */ - var $_url; - - /** - * Type of request - * @var string - */ - var $_method; - - /** - * HTTP Version - * @var string - */ - var $_http; - - /** - * Request headers - * @var array - */ - var $_requestHeaders; - - /** - * Basic Auth Username - * @var string - */ - var $_user; - - /** - * Basic Auth Password - * @var string - */ - var $_pass; - - /** - * Socket object - * @var Net_Socket - */ - var $_sock; - - /** - * Proxy server - * @var string - */ - var $_proxy_host; - - /** - * Proxy port - * @var integer - */ - var $_proxy_port; - - /** - * Proxy username - * @var string - */ - var $_proxy_user; - - /** - * Proxy password - * @var string - */ - var $_proxy_pass; - - /** - * Post data - * @var array - */ - var $_postData; - - /** - * Request body - * @var string - */ - var $_body; - - /** - * A list of methods that MUST NOT have a request body, per RFC 2616 - * @var array - */ - var $_bodyDisallowed = array('TRACE'); - - /** - * Methods having defined semantics for request body - * - * Content-Length header (indicating that the body follows, section 4.3 of - * RFC 2616) will be sent for these methods even if no body was added - * - * @var array - */ - var $_bodyRequired = array('POST', 'PUT'); - - /** - * Files to post - * @var array - */ - var $_postFiles = array(); - - /** - * Connection timeout. - * @var float - */ - var $_timeout; - - /** - * HTTP_Response object - * @var HTTP_Response - */ - var $_response; - - /** - * Whether to allow redirects - * @var boolean - */ - var $_allowRedirects; - - /** - * Maximum redirects allowed - * @var integer - */ - var $_maxRedirects; - - /** - * Current number of redirects - * @var integer - */ - var $_redirects; - - /** - * Whether to append brackets [] to array variables - * @var bool - */ - var $_useBrackets = true; - - /** - * Attached listeners - * @var array - */ - var $_listeners = array(); - - /** - * Whether to save response body in response object property - * @var bool - */ - var $_saveBody = true; - - /** - * Timeout for reading from socket (array(seconds, microseconds)) - * @var array - */ - var $_readTimeout = null; - - /** - * Options to pass to Net_Socket::connect. See stream_context_create - * @var array - */ - var $_socketOptions = null; - /**#@-*/ - - /** - * Constructor - * - * Sets up the object - * @param string The url to fetch/access - * @param array Associative array of parameters which can have the following keys: - *
    - *
  • method - Method to use, GET, POST etc (string)
  • - *
  • http - HTTP Version to use, 1.0 or 1.1 (string)
  • - *
  • user - Basic Auth username (string)
  • - *
  • pass - Basic Auth password (string)
  • - *
  • proxy_host - Proxy server host (string)
  • - *
  • proxy_port - Proxy server port (integer)
  • - *
  • proxy_user - Proxy auth username (string)
  • - *
  • proxy_pass - Proxy auth password (string)
  • - *
  • timeout - Connection timeout in seconds (float)
  • - *
  • allowRedirects - Whether to follow redirects or not (bool)
  • - *
  • maxRedirects - Max number of redirects to follow (integer)
  • - *
  • useBrackets - Whether to append [] to array variable names (bool)
  • - *
  • saveBody - Whether to save response body in response object property (bool)
  • - *
  • readTimeout - Timeout for reading / writing data over the socket (array (seconds, microseconds))
  • - *
  • socketOptions - Options to pass to Net_Socket object (array)
  • - *
- * @access public - */ - function HTTP_Request($url = '', $params = array()) - { - $this->_method = HTTP_REQUEST_METHOD_GET; - $this->_http = HTTP_REQUEST_HTTP_VER_1_1; - $this->_requestHeaders = array(); - $this->_postData = array(); - $this->_body = null; - - $this->_user = null; - $this->_pass = null; - - $this->_proxy_host = null; - $this->_proxy_port = null; - $this->_proxy_user = null; - $this->_proxy_pass = null; - - $this->_allowRedirects = false; - $this->_maxRedirects = 3; - $this->_redirects = 0; - - $this->_timeout = null; - $this->_response = null; - - foreach ($params as $key => $value) { - $this->{'_' . $key} = $value; - } - - if (!empty($url)) { - $this->setURL($url); - } - - // Default useragent - $this->addHeader('User-Agent', 'PEAR HTTP_Request class ( http://pear.php.net/ )'); - - // We don't do keep-alives by default - $this->addHeader('Connection', 'close'); - - // Basic authentication - if (!empty($this->_user)) { - $this->addHeader('Authorization', 'Basic ' . base64_encode($this->_user . ':' . $this->_pass)); - } - - // Proxy authentication (see bug #5913) - if (!empty($this->_proxy_user)) { - $this->addHeader('Proxy-Authorization', 'Basic ' . base64_encode($this->_proxy_user . ':' . $this->_proxy_pass)); - } - - // Use gzip encoding if possible - if (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http && extension_loaded('zlib')) { - $this->addHeader('Accept-Encoding', 'gzip'); - } - } - - /** - * Generates a Host header for HTTP/1.1 requests - * - * @access private - * @return string - */ - function _generateHostHeader() - { - if ($this->_url->port != 80 AND strcasecmp($this->_url->protocol, 'http') == 0) { - $host = $this->_url->host . ':' . $this->_url->port; - - } elseif ($this->_url->port != 443 AND strcasecmp($this->_url->protocol, 'https') == 0) { - $host = $this->_url->host . ':' . $this->_url->port; - - } elseif ($this->_url->port == 443 AND strcasecmp($this->_url->protocol, 'https') == 0 AND strpos($this->_url->url, ':443') !== false) { - $host = $this->_url->host . ':' . $this->_url->port; - - } else { - $host = $this->_url->host; - } - - return $host; - } - - /** - * Resets the object to its initial state (DEPRECATED). - * Takes the same parameters as the constructor. - * - * @param string $url The url to be requested - * @param array $params Associative array of parameters - * (see constructor for details) - * @access public - * @deprecated deprecated since 1.2, call the constructor if this is necessary - */ - function reset($url, $params = array()) - { - $this->HTTP_Request($url, $params); - } - - /** - * Sets the URL to be requested - * - * @param string The url to be requested - * @access public - */ - function setURL($url) - { - $this->_url = new Net_URL($url, $this->_useBrackets); - - if (!empty($this->_url->user) || !empty($this->_url->pass)) { - $this->setBasicAuth($this->_url->user, $this->_url->pass); - } - - if (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http) { - $this->addHeader('Host', $this->_generateHostHeader()); - } - - // set '/' instead of empty path rather than check later (see bug #8662) - if (empty($this->_url->path)) { - $this->_url->path = '/'; - } - } - - /** - * Returns the current request URL - * - * @return string Current request URL - * @access public - */ - function getUrl() - { - return empty($this->_url)? '': $this->_url->getUrl(); - } - - /** - * Sets a proxy to be used - * - * @param string Proxy host - * @param int Proxy port - * @param string Proxy username - * @param string Proxy password - * @access public - */ - function setProxy($host, $port = 8080, $user = null, $pass = null) - { - $this->_proxy_host = $host; - $this->_proxy_port = $port; - $this->_proxy_user = $user; - $this->_proxy_pass = $pass; - - if (!empty($user)) { - $this->addHeader('Proxy-Authorization', 'Basic ' . base64_encode($user . ':' . $pass)); - } - } - - /** - * Sets basic authentication parameters - * - * @param string Username - * @param string Password - */ - function setBasicAuth($user, $pass) - { - $this->_user = $user; - $this->_pass = $pass; - - $this->addHeader('Authorization', 'Basic ' . base64_encode($user . ':' . $pass)); - } - - /** - * Sets the method to be used, GET, POST etc. - * - * @param string Method to use. Use the defined constants for this - * @access public - */ - function setMethod($method) - { - $this->_method = $method; - } - - /** - * Sets the HTTP version to use, 1.0 or 1.1 - * - * @param string Version to use. Use the defined constants for this - * @access public - */ - function setHttpVer($http) - { - $this->_http = $http; - } - - /** - * Adds a request header - * - * @param string Header name - * @param string Header value - * @access public - */ - function addHeader($name, $value) - { - $this->_requestHeaders[strtolower($name)] = $value; - } - - /** - * Removes a request header - * - * @param string Header name to remove - * @access public - */ - function removeHeader($name) - { - if (isset($this->_requestHeaders[strtolower($name)])) { - unset($this->_requestHeaders[strtolower($name)]); - } - } - - /** - * Adds a querystring parameter - * - * @param string Querystring parameter name - * @param string Querystring parameter value - * @param bool Whether the value is already urlencoded or not, default = not - * @access public - */ - function addQueryString($name, $value, $preencoded = false) - { - $this->_url->addQueryString($name, $value, $preencoded); - } - - /** - * Sets the querystring to literally what you supply - * - * @param string The querystring data. Should be of the format foo=bar&x=y etc - * @param bool Whether data is already urlencoded or not, default = already encoded - * @access public - */ - function addRawQueryString($querystring, $preencoded = true) - { - $this->_url->addRawQueryString($querystring, $preencoded); - } - - /** - * Adds postdata items - * - * @param string Post data name - * @param string Post data value - * @param bool Whether data is already urlencoded or not, default = not - * @access public - */ - function addPostData($name, $value, $preencoded = false) - { - if ($preencoded) { - $this->_postData[$name] = $value; - } else { - $this->_postData[$name] = $this->_arrayMapRecursive('urlencode', $value); - } - } - - /** - * Recursively applies the callback function to the value - * - * @param mixed Callback function - * @param mixed Value to process - * @access private - * @return mixed Processed value - */ - function _arrayMapRecursive($callback, $value) - { - if (!is_array($value)) { - return call_user_func($callback, $value); - } else { - $map = array(); - foreach ($value as $k => $v) { - $map[$k] = $this->_arrayMapRecursive($callback, $v); - } - return $map; - } - } - - /** - * Adds a file to form-based file upload - * - * Used to emulate file upload via a HTML form. The method also sets - * Content-Type of HTTP request to 'multipart/form-data'. - * - * If you just want to send the contents of a file as the body of HTTP - * request you should use setBody() method. - * - * @access public - * @param string name of file-upload field - * @param mixed file name(s) - * @param mixed content-type(s) of file(s) being uploaded - * @return bool true on success - * @throws PEAR_Error - */ - function addFile($inputName, $fileName, $contentType = 'application/octet-stream') - { - if (!is_array($fileName) && !is_readable($fileName)) { - return PEAR::raiseError("File '{$fileName}' is not readable", HTTP_REQUEST_ERROR_FILE); - } elseif (is_array($fileName)) { - foreach ($fileName as $name) { - if (!is_readable($name)) { - return PEAR::raiseError("File '{$name}' is not readable", HTTP_REQUEST_ERROR_FILE); - } - } - } - $this->addHeader('Content-Type', 'multipart/form-data'); - $this->_postFiles[$inputName] = array( - 'name' => $fileName, - 'type' => $contentType - ); - return true; - } - - /** - * Adds raw postdata (DEPRECATED) - * - * @param string The data - * @param bool Whether data is preencoded or not, default = already encoded - * @access public - * @deprecated deprecated since 1.3.0, method setBody() should be used instead - */ - function addRawPostData($postdata, $preencoded = true) - { - $this->_body = $preencoded ? $postdata : urlencode($postdata); - } - - /** - * Sets the request body (for POST, PUT and similar requests) - * - * @param string Request body - * @access public - */ - function setBody($body) - { - $this->_body = $body; - } - - /** - * Clears any postdata that has been added (DEPRECATED). - * - * Useful for multiple request scenarios. - * - * @access public - * @deprecated deprecated since 1.2 - */ - function clearPostData() - { - $this->_postData = null; - } - - /** - * Appends a cookie to "Cookie:" header - * - * @param string $name cookie name - * @param string $value cookie value - * @access public - */ - function addCookie($name, $value) - { - $cookies = isset($this->_requestHeaders['cookie']) ? $this->_requestHeaders['cookie']. '; ' : ''; - $this->addHeader('Cookie', $cookies . $name . '=' . $value); - } - - /** - * Clears any cookies that have been added (DEPRECATED). - * - * Useful for multiple request scenarios - * - * @access public - * @deprecated deprecated since 1.2 - */ - function clearCookies() - { - $this->removeHeader('Cookie'); - } - - /** - * Sends the request - * - * @access public - * @param bool Whether to store response body in Response object property, - * set this to false if downloading a LARGE file and using a Listener - * @return mixed PEAR error on error, true otherwise - */ - function sendRequest($saveBody = true) - { - if (!$this->_url instanceof Net_Url) { - return PEAR::raiseError('No URL given', HTTP_REQUEST_ERROR_URL); - } - - $host = isset($this->_proxy_host) ? $this->_proxy_host : $this->_url->host; - $port = isset($this->_proxy_port) ? $this->_proxy_port : $this->_url->port; - - if (strcasecmp($this->_url->protocol, 'https') == 0) { - // Bug #14127, don't try connecting to HTTPS sites without OpenSSL - if (version_compare(PHP_VERSION, '4.3.0', '<') || !extension_loaded('openssl')) { - return PEAR::raiseError('Need PHP 4.3.0 or later with OpenSSL support for https:// requests', - HTTP_REQUEST_ERROR_URL); - } elseif (isset($this->_proxy_host)) { - return PEAR::raiseError('HTTPS proxies are not supported', HTTP_REQUEST_ERROR_PROXY); - } - $host = 'ssl://' . $host; - } - - // magic quotes may fuck up file uploads and chunked response processing - $magicQuotes = ini_get('magic_quotes_runtime'); - ini_set('magic_quotes_runtime', false); - - // RFC 2068, section 19.7.1: A client MUST NOT send the Keep-Alive - // connection token to a proxy server... - if (isset($this->_proxy_host) && !empty($this->_requestHeaders['connection']) && - 'Keep-Alive' == $this->_requestHeaders['connection']) - { - $this->removeHeader('connection'); - } - - $keepAlive = (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http && empty($this->_requestHeaders['connection'])) || - (!empty($this->_requestHeaders['connection']) && 'Keep-Alive' == $this->_requestHeaders['connection']); - $sockets = &PEAR::getStaticProperty('HTTP_Request', 'sockets'); - $sockKey = $host . ':' . $port; - unset($this->_sock); - - // There is a connected socket in the "static" property? - if ($keepAlive && !empty($sockets[$sockKey]) && - !empty($sockets[$sockKey]->fp)) - { - $this->_sock =& $sockets[$sockKey]; - $err = null; - } else { - $this->_notify('connect'); - $this->_sock = new Net_Socket(); - $err = $this->_sock->connect($host, $port, null, $this->_timeout, $this->_socketOptions); - } - PEAR::isError($err) or $err = $this->_sock->write($this->_buildRequest()); - - if (!PEAR::isError($err)) { - if (!empty($this->_readTimeout)) { - $this->_sock->setTimeout($this->_readTimeout[0], $this->_readTimeout[1]); - } - - $this->_notify('sentRequest'); - - // Read the response - $this->_response = new HTTP_Response($this->_sock, $this->_listeners); - $err = $this->_response->process( - $this->_saveBody && $saveBody, - HTTP_REQUEST_METHOD_HEAD != $this->_method - ); - - if ($keepAlive) { - $keepAlive = (isset($this->_response->_headers['content-length']) - || (isset($this->_response->_headers['transfer-encoding']) - && strtolower($this->_response->_headers['transfer-encoding']) == 'chunked')); - if ($keepAlive) { - if (isset($this->_response->_headers['connection'])) { - $keepAlive = strtolower($this->_response->_headers['connection']) == 'keep-alive'; - } else { - $keepAlive = 'HTTP/'.HTTP_REQUEST_HTTP_VER_1_1 == $this->_response->_protocol; - } - } - } - } - - ini_set('magic_quotes_runtime', $magicQuotes); - - if (PEAR::isError($err)) { - return $err; - } - - if (!$keepAlive) { - $this->disconnect(); - // Store the connected socket in "static" property - } elseif (empty($sockets[$sockKey]) || empty($sockets[$sockKey]->fp)) { - $sockets[$sockKey] =& $this->_sock; - } - - // Check for redirection - if ( $this->_allowRedirects - AND $this->_redirects <= $this->_maxRedirects - AND $this->getResponseCode() > 300 - AND $this->getResponseCode() < 399 - AND !empty($this->_response->_headers['location'])) { - - - $redirect = $this->_response->_headers['location']; - - // Absolute URL - if (preg_match('/^https?:\/\//i', $redirect)) { - $this->_url = new Net_URL($redirect); - $this->addHeader('Host', $this->_generateHostHeader()); - // Absolute path - } elseif ($redirect{0} == '/') { - $this->_url->path = $redirect; - - // Relative path - } elseif (substr($redirect, 0, 3) == '../' OR substr($redirect, 0, 2) == './') { - if (substr($this->_url->path, -1) == '/') { - $redirect = $this->_url->path . $redirect; - } else { - $redirect = dirname($this->_url->path) . '/' . $redirect; - } - $redirect = Net_URL::resolvePath($redirect); - $this->_url->path = $redirect; - - // Filename, no path - } else { - if (substr($this->_url->path, -1) == '/') { - $redirect = $this->_url->path . $redirect; - } else { - $redirect = dirname($this->_url->path) . '/' . $redirect; - } - $this->_url->path = $redirect; - } - - $this->_redirects++; - return $this->sendRequest($saveBody); - - // Too many redirects - } elseif ($this->_allowRedirects AND $this->_redirects > $this->_maxRedirects) { - return PEAR::raiseError('Too many redirects', HTTP_REQUEST_ERROR_REDIRECTS); - } - - return true; - } - - /** - * Disconnect the socket, if connected. Only useful if using Keep-Alive. - * - * @access public - */ - function disconnect() - { - if (!empty($this->_sock) && !empty($this->_sock->fp)) { - $this->_notify('disconnect'); - $this->_sock->disconnect(); - } - } - - /** - * Returns the response code - * - * @access public - * @return mixed Response code, false if not set - */ - function getResponseCode() - { - return isset($this->_response->_code) ? $this->_response->_code : false; - } - - /** - * Returns the response reason phrase - * - * @access public - * @return mixed Response reason phrase, false if not set - */ - function getResponseReason() - { - return isset($this->_response->_reason) ? $this->_response->_reason : false; - } - - /** - * Returns either the named header or all if no name given - * - * @access public - * @param string The header name to return, do not set to get all headers - * @return mixed either the value of $headername (false if header is not present) - * or an array of all headers - */ - function getResponseHeader($headername = null) - { - if (!isset($headername)) { - return isset($this->_response->_headers)? $this->_response->_headers: array(); - } else { - $headername = strtolower($headername); - return isset($this->_response->_headers[$headername]) ? $this->_response->_headers[$headername] : false; - } - } - - /** - * Returns the body of the response - * - * @access public - * @return mixed response body, false if not set - */ - function getResponseBody() - { - return isset($this->_response->_body) ? $this->_response->_body : false; - } - - /** - * Returns cookies set in response - * - * @access public - * @return mixed array of response cookies, false if none are present - */ - function getResponseCookies() - { - return isset($this->_response->_cookies) ? $this->_response->_cookies : false; - } - - /** - * Builds the request string - * - * @access private - * @return string The request string - */ - function _buildRequest() - { - $separator = ini_get('arg_separator.output'); - ini_set('arg_separator.output', '&'); - $querystring = ($querystring = $this->_url->getQueryString()) ? '?' . $querystring : ''; - ini_set('arg_separator.output', $separator); - - $host = isset($this->_proxy_host) ? $this->_url->protocol . '://' . $this->_url->host : ''; - $port = (isset($this->_proxy_host) AND $this->_url->port != 80) ? ':' . $this->_url->port : ''; - $path = $this->_url->path . $querystring; - $url = $host . $port . $path; - - if (!strlen($url)) { - $url = '/'; - } - - $request = $this->_method . ' ' . $url . ' HTTP/' . $this->_http . "\r\n"; - - if (in_array($this->_method, $this->_bodyDisallowed) || - (0 == strlen($this->_body) && (HTTP_REQUEST_METHOD_POST != $this->_method || - (empty($this->_postData) && empty($this->_postFiles))))) - { - $this->removeHeader('Content-Type'); - } else { - if (empty($this->_requestHeaders['content-type'])) { - // Add default content-type - $this->addHeader('Content-Type', 'application/x-www-form-urlencoded'); - } elseif ('multipart/form-data' == $this->_requestHeaders['content-type']) { - $boundary = 'HTTP_Request_' . md5(uniqid('request') . microtime()); - $this->addHeader('Content-Type', 'multipart/form-data; boundary=' . $boundary); - } - } - - // Request Headers - if (!empty($this->_requestHeaders)) { - foreach ($this->_requestHeaders as $name => $value) { - $canonicalName = implode('-', array_map('ucfirst', explode('-', $name))); - $request .= $canonicalName . ': ' . $value . "\r\n"; - } - } - - // Method does not allow a body, simply add a final CRLF - if (in_array($this->_method, $this->_bodyDisallowed)) { - - $request .= "\r\n"; - - // Post data if it's an array - } elseif (HTTP_REQUEST_METHOD_POST == $this->_method && - (!empty($this->_postData) || !empty($this->_postFiles))) { - - // "normal" POST request - if (!isset($boundary)) { - $postdata = implode('&', array_map( - create_function('$a', 'return $a[0] . \'=\' . $a[1];'), - $this->_flattenArray('', $this->_postData) - )); - - // multipart request, probably with file uploads - } else { - $postdata = ''; - if (!empty($this->_postData)) { - $flatData = $this->_flattenArray('', $this->_postData); - foreach ($flatData as $item) { - $postdata .= '--' . $boundary . "\r\n"; - $postdata .= 'Content-Disposition: form-data; name="' . $item[0] . '"'; - $postdata .= "\r\n\r\n" . urldecode($item[1]) . "\r\n"; - } - } - foreach ($this->_postFiles as $name => $value) { - if (is_array($value['name'])) { - $varname = $name . ($this->_useBrackets? '[]': ''); - } else { - $varname = $name; - $value['name'] = array($value['name']); - } - foreach ($value['name'] as $key => $filename) { - $fp = fopen($filename, 'r'); - $basename = basename($filename); - $type = is_array($value['type'])? @$value['type'][$key]: $value['type']; - - $postdata .= '--' . $boundary . "\r\n"; - $postdata .= 'Content-Disposition: form-data; name="' . $varname . '"; filename="' . $basename . '"'; - $postdata .= "\r\nContent-Type: " . $type; - $postdata .= "\r\n\r\n" . fread($fp, filesize($filename)) . "\r\n"; - fclose($fp); - } - } - $postdata .= '--' . $boundary . "--\r\n"; - } - $request .= 'Content-Length: ' . - (HTTP_REQUEST_MBSTRING? mb_strlen($postdata, 'iso-8859-1'): strlen($postdata)) . - "\r\n\r\n"; - $request .= $postdata; - - // Explicitly set request body - } elseif (0 < strlen($this->_body)) { - - $request .= 'Content-Length: ' . - (HTTP_REQUEST_MBSTRING? mb_strlen($this->_body, 'iso-8859-1'): strlen($this->_body)) . - "\r\n\r\n"; - $request .= $this->_body; - - // No body: send a Content-Length header nonetheless (request #12900), - // but do that only for methods that require a body (bug #14740) - } else { - - if (in_array($this->_method, $this->_bodyRequired)) { - $request .= "Content-Length: 0\r\n"; - } - $request .= "\r\n"; - } - - return $request; - } - - /** - * Helper function to change the (probably multidimensional) associative array - * into the simple one. - * - * @param string name for item - * @param mixed item's values - * @return array array with the following items: array('item name', 'item value'); - * @access private - */ - function _flattenArray($name, $values) - { - if (!is_array($values)) { - return array(array($name, $values)); - } else { - $ret = array(); - foreach ($values as $k => $v) { - if (empty($name)) { - $newName = $k; - } elseif ($this->_useBrackets) { - $newName = $name . '[' . $k . ']'; - } else { - $newName = $name; - } - $ret = array_merge($ret, $this->_flattenArray($newName, $v)); - } - return $ret; - } - } - - - /** - * Adds a Listener to the list of listeners that are notified of - * the object's events - * - * Events sent by HTTP_Request object - * - 'connect': on connection to server - * - 'sentRequest': after the request was sent - * - 'disconnect': on disconnection from server - * - * Events sent by HTTP_Response object - * - 'gotHeaders': after receiving response headers (headers are passed in $data) - * - 'tick': on receiving a part of response body (the part is passed in $data) - * - 'gzTick': on receiving a gzip-encoded part of response body (ditto) - * - 'gotBody': after receiving the response body (passes the decoded body in $data if it was gzipped) - * - * @param HTTP_Request_Listener listener to attach - * @return boolean whether the listener was successfully attached - * @access public - */ - function attach(&$listener) - { - if (!is_a($listener, 'HTTP_Request_Listener')) { - return false; - } - $this->_listeners[$listener->getId()] =& $listener; - return true; - } - - - /** - * Removes a Listener from the list of listeners - * - * @param HTTP_Request_Listener listener to detach - * @return boolean whether the listener was successfully detached - * @access public - */ - function detach(&$listener) - { - if (!is_a($listener, 'HTTP_Request_Listener') || - !isset($this->_listeners[$listener->getId()])) { - return false; - } - unset($this->_listeners[$listener->getId()]); - return true; - } - - - /** - * Notifies all registered listeners of an event. - * - * @param string Event name - * @param mixed Additional data - * @access private - * @see HTTP_Request::attach() - */ - function _notify($event, $data = null) - { - foreach (array_keys($this->_listeners) as $id) { - $this->_listeners[$id]->update($this, $event, $data); - } - } -} - - -/** - * Response class to complement the Request class - * - * @category HTTP - * @package HTTP_Request - * @author Richard Heyes - * @author Alexey Borzov - * @version Release: 1.4.4 - */ -class HTTP_Response -{ - /** - * Socket object - * @var Net_Socket - */ - var $_sock; - - /** - * Protocol - * @var string - */ - var $_protocol; - - /** - * Return code - * @var string - */ - var $_code; - - /** - * Response reason phrase - * @var string - */ - var $_reason; - - /** - * Response headers - * @var array - */ - var $_headers; - - /** - * Cookies set in response - * @var array - */ - var $_cookies; - - /** - * Response body - * @var string - */ - var $_body = ''; - - /** - * Used by _readChunked(): remaining length of the current chunk - * @var string - */ - var $_chunkLength = 0; - - /** - * Attached listeners - * @var array - */ - var $_listeners = array(); - - /** - * Bytes left to read from message-body - * @var null|int - */ - var $_toRead; - - /** - * Constructor - * - * @param Net_Socket socket to read the response from - * @param array listeners attached to request - */ - function HTTP_Response(&$sock, &$listeners) - { - $this->_sock =& $sock; - $this->_listeners =& $listeners; - } - - - /** - * Processes a HTTP response - * - * This extracts response code, headers, cookies and decodes body if it - * was encoded in some way - * - * @access public - * @param bool Whether to store response body in object property, set - * this to false if downloading a LARGE file and using a Listener. - * This is assumed to be true if body is gzip-encoded. - * @param bool Whether the response can actually have a message-body. - * Will be set to false for HEAD requests. - * @throws PEAR_Error - * @return mixed true on success, PEAR_Error in case of malformed response - */ - function process($saveBody = true, $canHaveBody = true) - { - do { - $line = $this->_sock->readLine(); - if (!preg_match('!^(HTTP/\d\.\d) (\d{3})(?: (.+))?!', $line, $s)) { - return PEAR::raiseError('Malformed response', HTTP_REQUEST_ERROR_RESPONSE); - } else { - $this->_protocol = $s[1]; - $this->_code = intval($s[2]); - $this->_reason = empty($s[3])? null: $s[3]; - } - while ('' !== ($header = $this->_sock->readLine())) { - $this->_processHeader($header); - } - } while (100 == $this->_code); - - $this->_notify('gotHeaders', $this->_headers); - - // RFC 2616, section 4.4: - // 1. Any response message which "MUST NOT" include a message-body ... - // is always terminated by the first empty line after the header fields - // 3. ... If a message is received with both a - // Transfer-Encoding header field and a Content-Length header field, - // the latter MUST be ignored. - $canHaveBody = $canHaveBody && $this->_code >= 200 && - $this->_code != 204 && $this->_code != 304; - - // If response body is present, read it and decode - $chunked = isset($this->_headers['transfer-encoding']) && ('chunked' == $this->_headers['transfer-encoding']); - $gzipped = isset($this->_headers['content-encoding']) && ('gzip' == $this->_headers['content-encoding']); - $hasBody = false; - if ($canHaveBody && ($chunked || !isset($this->_headers['content-length']) || - 0 != $this->_headers['content-length'])) - { - if ($chunked || !isset($this->_headers['content-length'])) { - $this->_toRead = null; - } else { - $this->_toRead = $this->_headers['content-length']; - } - while (!$this->_sock->eof() && (is_null($this->_toRead) || 0 < $this->_toRead)) { - if ($chunked) { - $data = $this->_readChunked(); - } elseif (is_null($this->_toRead)) { - $data = $this->_sock->read(4096); - } else { - $data = $this->_sock->read(min(4096, $this->_toRead)); - $this->_toRead -= HTTP_REQUEST_MBSTRING? mb_strlen($data, 'iso-8859-1'): strlen($data); - } - if ('' == $data && (!$this->_chunkLength || $this->_sock->eof())) { - break; - } else { - $hasBody = true; - if ($saveBody || $gzipped) { - $this->_body .= $data; - } - $this->_notify($gzipped? 'gzTick': 'tick', $data); - } - } - } - - if ($hasBody) { - // Uncompress the body if needed - if ($gzipped) { - $body = $this->_decodeGzip($this->_body); - if (PEAR::isError($body)) { - return $body; - } - $this->_body = $body; - $this->_notify('gotBody', $this->_body); - } else { - $this->_notify('gotBody'); - } - } - return true; - } - - - /** - * Processes the response header - * - * @access private - * @param string HTTP header - */ - function _processHeader($header) - { - if (false === strpos($header, ':')) { - return; - } - list($headername, $headervalue) = explode(':', $header, 2); - $headername = strtolower($headername); - $headervalue = ltrim($headervalue); - - if ('set-cookie' != $headername) { - if (isset($this->_headers[$headername])) { - $this->_headers[$headername] .= ',' . $headervalue; - } else { - $this->_headers[$headername] = $headervalue; - } - } else { - $this->_parseCookie($headervalue); - } - } - - - /** - * Parse a Set-Cookie header to fill $_cookies array - * - * @access private - * @param string value of Set-Cookie header - */ - function _parseCookie($headervalue) - { - $cookie = array( - 'expires' => null, - 'domain' => null, - 'path' => null, - 'secure' => false - ); - - // Only a name=value pair - if (!strpos($headervalue, ';')) { - $pos = strpos($headervalue, '='); - $cookie['name'] = trim(substr($headervalue, 0, $pos)); - $cookie['value'] = trim(substr($headervalue, $pos + 1)); - - // Some optional parameters are supplied - } else { - $elements = explode(';', $headervalue); - $pos = strpos($elements[0], '='); - $cookie['name'] = trim(substr($elements[0], 0, $pos)); - $cookie['value'] = trim(substr($elements[0], $pos + 1)); - - for ($i = 1; $i < count($elements); $i++) { - if (false === strpos($elements[$i], '=')) { - $elName = trim($elements[$i]); - $elValue = null; - } else { - list ($elName, $elValue) = array_map('trim', explode('=', $elements[$i])); - } - $elName = strtolower($elName); - if ('secure' == $elName) { - $cookie['secure'] = true; - } elseif ('expires' == $elName) { - $cookie['expires'] = str_replace('"', '', $elValue); - } elseif ('path' == $elName || 'domain' == $elName) { - $cookie[$elName] = urldecode($elValue); - } else { - $cookie[$elName] = $elValue; - } - } - } - $this->_cookies[] = $cookie; - } - - - /** - * Read a part of response body encoded with chunked Transfer-Encoding - * - * @access private - * @return string - */ - function _readChunked() - { - // at start of the next chunk? - if (0 == $this->_chunkLength) { - $line = $this->_sock->readLine(); - if (preg_match('/^([0-9a-f]+)/i', $line, $matches)) { - $this->_chunkLength = hexdec($matches[1]); - // Chunk with zero length indicates the end - if (0 == $this->_chunkLength) { - $this->_sock->readLine(); // make this an eof() - return ''; - } - } else { - return ''; - } - } - $data = $this->_sock->read($this->_chunkLength); - $this->_chunkLength -= HTTP_REQUEST_MBSTRING? mb_strlen($data, 'iso-8859-1'): strlen($data); - if (0 == $this->_chunkLength) { - $this->_sock->readLine(); // Trailing CRLF - } - return $data; - } - - - /** - * Notifies all registered listeners of an event. - * - * @param string Event name - * @param mixed Additional data - * @access private - * @see HTTP_Request::_notify() - */ - function _notify($event, $data = null) - { - foreach (array_keys($this->_listeners) as $id) { - $this->_listeners[$id]->update($this, $event, $data); - } - } - - - /** - * Decodes the message-body encoded by gzip - * - * The real decoding work is done by gzinflate() built-in function, this - * method only parses the header and checks data for compliance with - * RFC 1952 - * - * @access private - * @param string gzip-encoded data - * @return string decoded data - */ - function _decodeGzip($data) - { - if (HTTP_REQUEST_MBSTRING) { - $oldEncoding = mb_internal_encoding(); - mb_internal_encoding('iso-8859-1'); - } - $length = strlen($data); - // If it doesn't look like gzip-encoded data, don't bother - if (18 > $length || strcmp(substr($data, 0, 2), "\x1f\x8b")) { - return $data; - } - $method = ord(substr($data, 2, 1)); - if (8 != $method) { - return PEAR::raiseError('_decodeGzip(): unknown compression method', HTTP_REQUEST_ERROR_GZIP_METHOD); - } - $flags = ord(substr($data, 3, 1)); - if ($flags & 224) { - return PEAR::raiseError('_decodeGzip(): reserved bits are set', HTTP_REQUEST_ERROR_GZIP_DATA); - } - - // header is 10 bytes minimum. may be longer, though. - $headerLength = 10; - // extra fields, need to skip 'em - if ($flags & 4) { - if ($length - $headerLength - 2 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $extraLength = unpack('v', substr($data, 10, 2)); - if ($length - $headerLength - 2 - $extraLength[1] < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $headerLength += $extraLength[1] + 2; - } - // file name, need to skip that - if ($flags & 8) { - if ($length - $headerLength - 1 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $filenameLength = strpos(substr($data, $headerLength), chr(0)); - if (false === $filenameLength || $length - $headerLength - $filenameLength - 1 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $headerLength += $filenameLength + 1; - } - // comment, need to skip that also - if ($flags & 16) { - if ($length - $headerLength - 1 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $commentLength = strpos(substr($data, $headerLength), chr(0)); - if (false === $commentLength || $length - $headerLength - $commentLength - 1 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $headerLength += $commentLength + 1; - } - // have a CRC for header. let's check - if ($flags & 1) { - if ($length - $headerLength - 2 < 8) { - return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); - } - $crcReal = 0xffff & crc32(substr($data, 0, $headerLength)); - $crcStored = unpack('v', substr($data, $headerLength, 2)); - if ($crcReal != $crcStored[1]) { - return PEAR::raiseError('_decodeGzip(): header CRC check failed', HTTP_REQUEST_ERROR_GZIP_CRC); - } - $headerLength += 2; - } - // unpacked data CRC and size at the end of encoded data - $tmp = unpack('V2', substr($data, -8)); - $dataCrc = $tmp[1]; - $dataSize = $tmp[2]; - - // finally, call the gzinflate() function - // don't pass $dataSize to gzinflate, see bugs #13135, #14370 - $unpacked = gzinflate(substr($data, $headerLength, -8)); - if (false === $unpacked) { - return PEAR::raiseError('_decodeGzip(): gzinflate() call failed', HTTP_REQUEST_ERROR_GZIP_READ); - } elseif ($dataSize != strlen($unpacked)) { - return PEAR::raiseError('_decodeGzip(): data size check failed', HTTP_REQUEST_ERROR_GZIP_READ); - } elseif ((0xffffffff & $dataCrc) != (0xffffffff & crc32($unpacked))) { - return PEAR::raiseError('_decodeGzip(): data CRC check failed', HTTP_REQUEST_ERROR_GZIP_CRC); - } - if (HTTP_REQUEST_MBSTRING) { - mb_internal_encoding($oldEncoding); - } - return $unpacked; - } -} // End class HTTP_Response -?> + + * @author Alexey Borzov + * @copyright 2002-2007 Richard Heyes + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: Request.php,v 1.63 2008/10/11 11:07:10 avb Exp $ + * @link http://pear.php.net/package/HTTP_Request/ + */ + +/** + * PEAR and PEAR_Error classes (for error handling) + */ +require_once 'PEAR.php'; +/** + * Socket class + */ +require_once 'Net/Socket.php'; +/** + * URL handling class + */ +require_once 'Net/URL.php'; + +/**#@+ + * Constants for HTTP request methods + */ +define('HTTP_REQUEST_METHOD_GET', 'GET', true); +define('HTTP_REQUEST_METHOD_HEAD', 'HEAD', true); +define('HTTP_REQUEST_METHOD_POST', 'POST', true); +define('HTTP_REQUEST_METHOD_PUT', 'PUT', true); +define('HTTP_REQUEST_METHOD_DELETE', 'DELETE', true); +define('HTTP_REQUEST_METHOD_OPTIONS', 'OPTIONS', true); +define('HTTP_REQUEST_METHOD_TRACE', 'TRACE', true); +/**#@-*/ + +/**#@+ + * Constants for HTTP request error codes + */ +define('HTTP_REQUEST_ERROR_FILE', 1); +define('HTTP_REQUEST_ERROR_URL', 2); +define('HTTP_REQUEST_ERROR_PROXY', 4); +define('HTTP_REQUEST_ERROR_REDIRECTS', 8); +define('HTTP_REQUEST_ERROR_RESPONSE', 16); +define('HTTP_REQUEST_ERROR_GZIP_METHOD', 32); +define('HTTP_REQUEST_ERROR_GZIP_READ', 64); +define('HTTP_REQUEST_ERROR_GZIP_DATA', 128); +define('HTTP_REQUEST_ERROR_GZIP_CRC', 256); +/**#@-*/ + +/**#@+ + * Constants for HTTP protocol versions + */ +define('HTTP_REQUEST_HTTP_VER_1_0', '1.0', true); +define('HTTP_REQUEST_HTTP_VER_1_1', '1.1', true); +/**#@-*/ + +if (extension_loaded('mbstring') && (2 & ini_get('mbstring.func_overload'))) { + /** + * Whether string functions are overloaded by their mbstring equivalents + */ + define('HTTP_REQUEST_MBSTRING', true); +} else { + /** + * @ignore + */ + define('HTTP_REQUEST_MBSTRING', false); +} + +/** + * Class for performing HTTP requests + * + * Simple example (fetches yahoo.com and displays it): + * + * $a = &new HTTP_Request('http://www.yahoo.com/'); + * $a->sendRequest(); + * echo $a->getResponseBody(); + * + * + * @category HTTP + * @package HTTP_Request + * @author Richard Heyes + * @author Alexey Borzov + * @version Release: 1.4.4 + */ +class HTTP_Request +{ + /**#@+ + * @access private + */ + /** + * Instance of Net_URL + * @var Net_URL + */ + var $_url; + + /** + * Type of request + * @var string + */ + var $_method; + + /** + * HTTP Version + * @var string + */ + var $_http; + + /** + * Request headers + * @var array + */ + var $_requestHeaders; + + /** + * Basic Auth Username + * @var string + */ + var $_user; + + /** + * Basic Auth Password + * @var string + */ + var $_pass; + + /** + * Socket object + * @var Net_Socket + */ + var $_sock; + + /** + * Proxy server + * @var string + */ + var $_proxy_host; + + /** + * Proxy port + * @var integer + */ + var $_proxy_port; + + /** + * Proxy username + * @var string + */ + var $_proxy_user; + + /** + * Proxy password + * @var string + */ + var $_proxy_pass; + + /** + * Post data + * @var array + */ + var $_postData; + + /** + * Request body + * @var string + */ + var $_body; + + /** + * A list of methods that MUST NOT have a request body, per RFC 2616 + * @var array + */ + var $_bodyDisallowed = array('TRACE'); + + /** + * Methods having defined semantics for request body + * + * Content-Length header (indicating that the body follows, section 4.3 of + * RFC 2616) will be sent for these methods even if no body was added + * + * @var array + */ + var $_bodyRequired = array('POST', 'PUT'); + + /** + * Files to post + * @var array + */ + var $_postFiles = array(); + + /** + * Connection timeout. + * @var float + */ + var $_timeout; + + /** + * HTTP_Response object + * @var HTTP_Response + */ + var $_response; + + /** + * Whether to allow redirects + * @var boolean + */ + var $_allowRedirects; + + /** + * Maximum redirects allowed + * @var integer + */ + var $_maxRedirects; + + /** + * Current number of redirects + * @var integer + */ + var $_redirects; + + /** + * Whether to append brackets [] to array variables + * @var bool + */ + var $_useBrackets = true; + + /** + * Attached listeners + * @var array + */ + var $_listeners = array(); + + /** + * Whether to save response body in response object property + * @var bool + */ + var $_saveBody = true; + + /** + * Timeout for reading from socket (array(seconds, microseconds)) + * @var array + */ + var $_readTimeout = null; + + /** + * Options to pass to Net_Socket::connect. See stream_context_create + * @var array + */ + var $_socketOptions = null; + /**#@-*/ + + /** + * Constructor + * + * Sets up the object + * @param string The url to fetch/access + * @param array Associative array of parameters which can have the following keys: + *
    + *
  • method - Method to use, GET, POST etc (string)
  • + *
  • http - HTTP Version to use, 1.0 or 1.1 (string)
  • + *
  • user - Basic Auth username (string)
  • + *
  • pass - Basic Auth password (string)
  • + *
  • proxy_host - Proxy server host (string)
  • + *
  • proxy_port - Proxy server port (integer)
  • + *
  • proxy_user - Proxy auth username (string)
  • + *
  • proxy_pass - Proxy auth password (string)
  • + *
  • timeout - Connection timeout in seconds (float)
  • + *
  • allowRedirects - Whether to follow redirects or not (bool)
  • + *
  • maxRedirects - Max number of redirects to follow (integer)
  • + *
  • useBrackets - Whether to append [] to array variable names (bool)
  • + *
  • saveBody - Whether to save response body in response object property (bool)
  • + *
  • readTimeout - Timeout for reading / writing data over the socket (array (seconds, microseconds))
  • + *
  • socketOptions - Options to pass to Net_Socket object (array)
  • + *
+ * @access public + */ + function HTTP_Request($url = '', $params = array()) + { + $this->_method = HTTP_REQUEST_METHOD_GET; + $this->_http = HTTP_REQUEST_HTTP_VER_1_1; + $this->_requestHeaders = array(); + $this->_postData = array(); + $this->_body = null; + + $this->_user = null; + $this->_pass = null; + + $this->_proxy_host = null; + $this->_proxy_port = null; + $this->_proxy_user = null; + $this->_proxy_pass = null; + + $this->_allowRedirects = false; + $this->_maxRedirects = 3; + $this->_redirects = 0; + + $this->_timeout = null; + $this->_response = null; + + foreach ($params as $key => $value) { + $this->{'_' . $key} = $value; + } + + if (!empty($url)) { + $this->setURL($url); + } + + // Default useragent + $this->addHeader('User-Agent', 'PEAR HTTP_Request class ( http://pear.php.net/ )'); + + // We don't do keep-alives by default + $this->addHeader('Connection', 'close'); + + // Basic authentication + if (!empty($this->_user)) { + $this->addHeader('Authorization', 'Basic ' . base64_encode($this->_user . ':' . $this->_pass)); + } + + // Proxy authentication (see bug #5913) + if (!empty($this->_proxy_user)) { + $this->addHeader('Proxy-Authorization', 'Basic ' . base64_encode($this->_proxy_user . ':' . $this->_proxy_pass)); + } + + // Use gzip encoding if possible + if (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http && extension_loaded('zlib')) { + $this->addHeader('Accept-Encoding', 'gzip'); + } + } + + /** + * Generates a Host header for HTTP/1.1 requests + * + * @access private + * @return string + */ + function _generateHostHeader() + { + if ($this->_url->port != 80 AND strcasecmp($this->_url->protocol, 'http') == 0) { + $host = $this->_url->host . ':' . $this->_url->port; + + } elseif ($this->_url->port != 443 AND strcasecmp($this->_url->protocol, 'https') == 0) { + $host = $this->_url->host . ':' . $this->_url->port; + + } elseif ($this->_url->port == 443 AND strcasecmp($this->_url->protocol, 'https') == 0 AND strpos($this->_url->url, ':443') !== false) { + $host = $this->_url->host . ':' . $this->_url->port; + + } else { + $host = $this->_url->host; + } + + return $host; + } + + /** + * Resets the object to its initial state (DEPRECATED). + * Takes the same parameters as the constructor. + * + * @param string $url The url to be requested + * @param array $params Associative array of parameters + * (see constructor for details) + * @access public + * @deprecated deprecated since 1.2, call the constructor if this is necessary + */ + function reset($url, $params = array()) + { + $this->HTTP_Request($url, $params); + } + + /** + * Sets the URL to be requested + * + * @param string The url to be requested + * @access public + */ + function setURL($url) + { + $this->_url = new Net_URL($url, $this->_useBrackets); + + if (!empty($this->_url->user) || !empty($this->_url->pass)) { + $this->setBasicAuth($this->_url->user, $this->_url->pass); + } + + if (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http) { + $this->addHeader('Host', $this->_generateHostHeader()); + } + + // set '/' instead of empty path rather than check later (see bug #8662) + if (empty($this->_url->path)) { + $this->_url->path = '/'; + } + } + + /** + * Returns the current request URL + * + * @return string Current request URL + * @access public + */ + function getUrl() + { + return empty($this->_url)? '': $this->_url->getUrl(); + } + + /** + * Sets a proxy to be used + * + * @param string Proxy host + * @param int Proxy port + * @param string Proxy username + * @param string Proxy password + * @access public + */ + function setProxy($host, $port = 8080, $user = null, $pass = null) + { + $this->_proxy_host = $host; + $this->_proxy_port = $port; + $this->_proxy_user = $user; + $this->_proxy_pass = $pass; + + if (!empty($user)) { + $this->addHeader('Proxy-Authorization', 'Basic ' . base64_encode($user . ':' . $pass)); + } + } + + /** + * Sets basic authentication parameters + * + * @param string Username + * @param string Password + */ + function setBasicAuth($user, $pass) + { + $this->_user = $user; + $this->_pass = $pass; + + $this->addHeader('Authorization', 'Basic ' . base64_encode($user . ':' . $pass)); + } + + /** + * Sets the method to be used, GET, POST etc. + * + * @param string Method to use. Use the defined constants for this + * @access public + */ + function setMethod($method) + { + $this->_method = $method; + } + + /** + * Sets the HTTP version to use, 1.0 or 1.1 + * + * @param string Version to use. Use the defined constants for this + * @access public + */ + function setHttpVer($http) + { + $this->_http = $http; + } + + /** + * Adds a request header + * + * @param string Header name + * @param string Header value + * @access public + */ + function addHeader($name, $value) + { + $this->_requestHeaders[strtolower($name)] = $value; + } + + /** + * Removes a request header + * + * @param string Header name to remove + * @access public + */ + function removeHeader($name) + { + if (isset($this->_requestHeaders[strtolower($name)])) { + unset($this->_requestHeaders[strtolower($name)]); + } + } + + /** + * Adds a querystring parameter + * + * @param string Querystring parameter name + * @param string Querystring parameter value + * @param bool Whether the value is already urlencoded or not, default = not + * @access public + */ + function addQueryString($name, $value, $preencoded = false) + { + $this->_url->addQueryString($name, $value, $preencoded); + } + + /** + * Sets the querystring to literally what you supply + * + * @param string The querystring data. Should be of the format foo=bar&x=y etc + * @param bool Whether data is already urlencoded or not, default = already encoded + * @access public + */ + function addRawQueryString($querystring, $preencoded = true) + { + $this->_url->addRawQueryString($querystring, $preencoded); + } + + /** + * Adds postdata items + * + * @param string Post data name + * @param string Post data value + * @param bool Whether data is already urlencoded or not, default = not + * @access public + */ + function addPostData($name, $value, $preencoded = false) + { + if ($preencoded) { + $this->_postData[$name] = $value; + } else { + $this->_postData[$name] = $this->_arrayMapRecursive('urlencode', $value); + } + } + + /** + * Recursively applies the callback function to the value + * + * @param mixed Callback function + * @param mixed Value to process + * @access private + * @return mixed Processed value + */ + function _arrayMapRecursive($callback, $value) + { + if (!is_array($value)) { + return call_user_func($callback, $value); + } else { + $map = array(); + foreach ($value as $k => $v) { + $map[$k] = $this->_arrayMapRecursive($callback, $v); + } + return $map; + } + } + + /** + * Adds a file to form-based file upload + * + * Used to emulate file upload via a HTML form. The method also sets + * Content-Type of HTTP request to 'multipart/form-data'. + * + * If you just want to send the contents of a file as the body of HTTP + * request you should use setBody() method. + * + * @access public + * @param string name of file-upload field + * @param mixed file name(s) + * @param mixed content-type(s) of file(s) being uploaded + * @return bool true on success + * @throws PEAR_Error + */ + function addFile($inputName, $fileName, $contentType = 'application/octet-stream') + { + if (!is_array($fileName) && !is_readable($fileName)) { + return PEAR::raiseError("File '{$fileName}' is not readable", HTTP_REQUEST_ERROR_FILE); + } elseif (is_array($fileName)) { + foreach ($fileName as $name) { + if (!is_readable($name)) { + return PEAR::raiseError("File '{$name}' is not readable", HTTP_REQUEST_ERROR_FILE); + } + } + } + $this->addHeader('Content-Type', 'multipart/form-data'); + $this->_postFiles[$inputName] = array( + 'name' => $fileName, + 'type' => $contentType + ); + return true; + } + + /** + * Adds raw postdata (DEPRECATED) + * + * @param string The data + * @param bool Whether data is preencoded or not, default = already encoded + * @access public + * @deprecated deprecated since 1.3.0, method setBody() should be used instead + */ + function addRawPostData($postdata, $preencoded = true) + { + $this->_body = $preencoded ? $postdata : urlencode($postdata); + } + + /** + * Sets the request body (for POST, PUT and similar requests) + * + * @param string Request body + * @access public + */ + function setBody($body) + { + $this->_body = $body; + } + + /** + * Clears any postdata that has been added (DEPRECATED). + * + * Useful for multiple request scenarios. + * + * @access public + * @deprecated deprecated since 1.2 + */ + function clearPostData() + { + $this->_postData = null; + } + + /** + * Appends a cookie to "Cookie:" header + * + * @param string $name cookie name + * @param string $value cookie value + * @access public + */ + function addCookie($name, $value) + { + $cookies = isset($this->_requestHeaders['cookie']) ? $this->_requestHeaders['cookie']. '; ' : ''; + $this->addHeader('Cookie', $cookies . $name . '=' . $value); + } + + /** + * Clears any cookies that have been added (DEPRECATED). + * + * Useful for multiple request scenarios + * + * @access public + * @deprecated deprecated since 1.2 + */ + function clearCookies() + { + $this->removeHeader('Cookie'); + } + + /** + * Sends the request + * + * @access public + * @param bool Whether to store response body in Response object property, + * set this to false if downloading a LARGE file and using a Listener + * @return mixed PEAR error on error, true otherwise + */ + function sendRequest($saveBody = true) + { + if (!$this->_url instanceof Net_Url) { + return PEAR::raiseError('No URL given', HTTP_REQUEST_ERROR_URL); + } + + $host = isset($this->_proxy_host) ? $this->_proxy_host : $this->_url->host; + $port = isset($this->_proxy_port) ? $this->_proxy_port : $this->_url->port; + + if (strcasecmp($this->_url->protocol, 'https') == 0) { + // Bug #14127, don't try connecting to HTTPS sites without OpenSSL + if (version_compare(PHP_VERSION, '4.3.0', '<') || !extension_loaded('openssl')) { + return PEAR::raiseError('Need PHP 4.3.0 or later with OpenSSL support for https:// requests', + HTTP_REQUEST_ERROR_URL); + } elseif (isset($this->_proxy_host)) { + return PEAR::raiseError('HTTPS proxies are not supported', HTTP_REQUEST_ERROR_PROXY); + } + $host = 'ssl://' . $host; + } + + // magic quotes may fuck up file uploads and chunked response processing + $magicQuotes = ini_get('magic_quotes_runtime'); + ini_set('magic_quotes_runtime', false); + + // RFC 2068, section 19.7.1: A client MUST NOT send the Keep-Alive + // connection token to a proxy server... + if (isset($this->_proxy_host) && !empty($this->_requestHeaders['connection']) && + 'Keep-Alive' == $this->_requestHeaders['connection']) + { + $this->removeHeader('connection'); + } + + $keepAlive = (HTTP_REQUEST_HTTP_VER_1_1 == $this->_http && empty($this->_requestHeaders['connection'])) || + (!empty($this->_requestHeaders['connection']) && 'Keep-Alive' == $this->_requestHeaders['connection']); + $sockets = &PEAR::getStaticProperty('HTTP_Request', 'sockets'); + $sockKey = $host . ':' . $port; + unset($this->_sock); + + // There is a connected socket in the "static" property? + if ($keepAlive && !empty($sockets[$sockKey]) && + !empty($sockets[$sockKey]->fp)) + { + $this->_sock =& $sockets[$sockKey]; + $err = null; + } else { + $this->_notify('connect'); + $this->_sock = new Net_Socket(); + $err = $this->_sock->connect($host, $port, null, $this->_timeout, $this->_socketOptions); + } + PEAR::isError($err) or $err = $this->_sock->write($this->_buildRequest()); + + if (!PEAR::isError($err)) { + if (!empty($this->_readTimeout)) { + $this->_sock->setTimeout($this->_readTimeout[0], $this->_readTimeout[1]); + } + + $this->_notify('sentRequest'); + + // Read the response + $this->_response = new HTTP_Response($this->_sock, $this->_listeners); + $err = $this->_response->process( + $this->_saveBody && $saveBody, + HTTP_REQUEST_METHOD_HEAD != $this->_method + ); + + if ($keepAlive) { + $keepAlive = (isset($this->_response->_headers['content-length']) + || (isset($this->_response->_headers['transfer-encoding']) + && strtolower($this->_response->_headers['transfer-encoding']) == 'chunked')); + if ($keepAlive) { + if (isset($this->_response->_headers['connection'])) { + $keepAlive = strtolower($this->_response->_headers['connection']) == 'keep-alive'; + } else { + $keepAlive = 'HTTP/'.HTTP_REQUEST_HTTP_VER_1_1 == $this->_response->_protocol; + } + } + } + } + + ini_set('magic_quotes_runtime', $magicQuotes); + + if (PEAR::isError($err)) { + return $err; + } + + if (!$keepAlive) { + $this->disconnect(); + // Store the connected socket in "static" property + } elseif (empty($sockets[$sockKey]) || empty($sockets[$sockKey]->fp)) { + $sockets[$sockKey] =& $this->_sock; + } + + // Check for redirection + if ( $this->_allowRedirects + AND $this->_redirects <= $this->_maxRedirects + AND $this->getResponseCode() > 300 + AND $this->getResponseCode() < 399 + AND !empty($this->_response->_headers['location'])) { + + + $redirect = $this->_response->_headers['location']; + + // Absolute URL + if (preg_match('/^https?:\/\//i', $redirect)) { + $this->_url = new Net_URL($redirect); + $this->addHeader('Host', $this->_generateHostHeader()); + // Absolute path + } elseif ($redirect{0} == '/') { + $this->_url->path = $redirect; + + // Relative path + } elseif (substr($redirect, 0, 3) == '../' OR substr($redirect, 0, 2) == './') { + if (substr($this->_url->path, -1) == '/') { + $redirect = $this->_url->path . $redirect; + } else { + $redirect = dirname($this->_url->path) . '/' . $redirect; + } + $redirect = Net_URL::resolvePath($redirect); + $this->_url->path = $redirect; + + // Filename, no path + } else { + if (substr($this->_url->path, -1) == '/') { + $redirect = $this->_url->path . $redirect; + } else { + $redirect = dirname($this->_url->path) . '/' . $redirect; + } + $this->_url->path = $redirect; + } + + $this->_redirects++; + return $this->sendRequest($saveBody); + + // Too many redirects + } elseif ($this->_allowRedirects AND $this->_redirects > $this->_maxRedirects) { + return PEAR::raiseError('Too many redirects', HTTP_REQUEST_ERROR_REDIRECTS); + } + + return true; + } + + /** + * Disconnect the socket, if connected. Only useful if using Keep-Alive. + * + * @access public + */ + function disconnect() + { + if (!empty($this->_sock) && !empty($this->_sock->fp)) { + $this->_notify('disconnect'); + $this->_sock->disconnect(); + } + } + + /** + * Returns the response code + * + * @access public + * @return mixed Response code, false if not set + */ + function getResponseCode() + { + return isset($this->_response->_code) ? $this->_response->_code : false; + } + + /** + * Returns the response reason phrase + * + * @access public + * @return mixed Response reason phrase, false if not set + */ + function getResponseReason() + { + return isset($this->_response->_reason) ? $this->_response->_reason : false; + } + + /** + * Returns either the named header or all if no name given + * + * @access public + * @param string The header name to return, do not set to get all headers + * @return mixed either the value of $headername (false if header is not present) + * or an array of all headers + */ + function getResponseHeader($headername = null) + { + if (!isset($headername)) { + return isset($this->_response->_headers)? $this->_response->_headers: array(); + } else { + $headername = strtolower($headername); + return isset($this->_response->_headers[$headername]) ? $this->_response->_headers[$headername] : false; + } + } + + /** + * Returns the body of the response + * + * @access public + * @return mixed response body, false if not set + */ + function getResponseBody() + { + return isset($this->_response->_body) ? $this->_response->_body : false; + } + + /** + * Returns cookies set in response + * + * @access public + * @return mixed array of response cookies, false if none are present + */ + function getResponseCookies() + { + return isset($this->_response->_cookies) ? $this->_response->_cookies : false; + } + + /** + * Builds the request string + * + * @access private + * @return string The request string + */ + function _buildRequest() + { + $separator = ini_get('arg_separator.output'); + ini_set('arg_separator.output', '&'); + $querystring = ($querystring = $this->_url->getQueryString()) ? '?' . $querystring : ''; + ini_set('arg_separator.output', $separator); + + $host = isset($this->_proxy_host) ? $this->_url->protocol . '://' . $this->_url->host : ''; + $port = (isset($this->_proxy_host) AND $this->_url->port != 80) ? ':' . $this->_url->port : ''; + $path = $this->_url->path . $querystring; + $url = $host . $port . $path; + + if (!strlen($url)) { + $url = '/'; + } + + $request = $this->_method . ' ' . $url . ' HTTP/' . $this->_http . "\r\n"; + + if (in_array($this->_method, $this->_bodyDisallowed) || + (0 == strlen($this->_body) && (HTTP_REQUEST_METHOD_POST != $this->_method || + (empty($this->_postData) && empty($this->_postFiles))))) + { + $this->removeHeader('Content-Type'); + } else { + if (empty($this->_requestHeaders['content-type'])) { + // Add default content-type + $this->addHeader('Content-Type', 'application/x-www-form-urlencoded'); + } elseif ('multipart/form-data' == $this->_requestHeaders['content-type']) { + $boundary = 'HTTP_Request_' . md5(uniqid('request') . microtime()); + $this->addHeader('Content-Type', 'multipart/form-data; boundary=' . $boundary); + } + } + + // Request Headers + if (!empty($this->_requestHeaders)) { + foreach ($this->_requestHeaders as $name => $value) { + $canonicalName = implode('-', array_map('ucfirst', explode('-', $name))); + $request .= $canonicalName . ': ' . $value . "\r\n"; + } + } + + // Method does not allow a body, simply add a final CRLF + if (in_array($this->_method, $this->_bodyDisallowed)) { + + $request .= "\r\n"; + + // Post data if it's an array + } elseif (HTTP_REQUEST_METHOD_POST == $this->_method && + (!empty($this->_postData) || !empty($this->_postFiles))) { + + // "normal" POST request + if (!isset($boundary)) { + $postdata = implode('&', array_map( + create_function('$a', 'return $a[0] . \'=\' . $a[1];'), + $this->_flattenArray('', $this->_postData) + )); + + // multipart request, probably with file uploads + } else { + $postdata = ''; + if (!empty($this->_postData)) { + $flatData = $this->_flattenArray('', $this->_postData); + foreach ($flatData as $item) { + $postdata .= '--' . $boundary . "\r\n"; + $postdata .= 'Content-Disposition: form-data; name="' . $item[0] . '"'; + $postdata .= "\r\n\r\n" . urldecode($item[1]) . "\r\n"; + } + } + foreach ($this->_postFiles as $name => $value) { + if (is_array($value['name'])) { + $varname = $name . ($this->_useBrackets? '[]': ''); + } else { + $varname = $name; + $value['name'] = array($value['name']); + } + foreach ($value['name'] as $key => $filename) { + $fp = fopen($filename, 'r'); + $basename = basename($filename); + $type = is_array($value['type'])? @$value['type'][$key]: $value['type']; + + $postdata .= '--' . $boundary . "\r\n"; + $postdata .= 'Content-Disposition: form-data; name="' . $varname . '"; filename="' . $basename . '"'; + $postdata .= "\r\nContent-Type: " . $type; + $postdata .= "\r\n\r\n" . fread($fp, filesize($filename)) . "\r\n"; + fclose($fp); + } + } + $postdata .= '--' . $boundary . "--\r\n"; + } + $request .= 'Content-Length: ' . + (HTTP_REQUEST_MBSTRING? mb_strlen($postdata, 'iso-8859-1'): strlen($postdata)) . + "\r\n\r\n"; + $request .= $postdata; + + // Explicitly set request body + } elseif (0 < strlen($this->_body)) { + + $request .= 'Content-Length: ' . + (HTTP_REQUEST_MBSTRING? mb_strlen($this->_body, 'iso-8859-1'): strlen($this->_body)) . + "\r\n\r\n"; + $request .= $this->_body; + + // No body: send a Content-Length header nonetheless (request #12900), + // but do that only for methods that require a body (bug #14740) + } else { + + if (in_array($this->_method, $this->_bodyRequired)) { + $request .= "Content-Length: 0\r\n"; + } + $request .= "\r\n"; + } + + return $request; + } + + /** + * Helper function to change the (probably multidimensional) associative array + * into the simple one. + * + * @param string name for item + * @param mixed item's values + * @return array array with the following items: array('item name', 'item value'); + * @access private + */ + function _flattenArray($name, $values) + { + if (!is_array($values)) { + return array(array($name, $values)); + } else { + $ret = array(); + foreach ($values as $k => $v) { + if (empty($name)) { + $newName = $k; + } elseif ($this->_useBrackets) { + $newName = $name . '[' . $k . ']'; + } else { + $newName = $name; + } + $ret = array_merge($ret, $this->_flattenArray($newName, $v)); + } + return $ret; + } + } + + + /** + * Adds a Listener to the list of listeners that are notified of + * the object's events + * + * Events sent by HTTP_Request object + * - 'connect': on connection to server + * - 'sentRequest': after the request was sent + * - 'disconnect': on disconnection from server + * + * Events sent by HTTP_Response object + * - 'gotHeaders': after receiving response headers (headers are passed in $data) + * - 'tick': on receiving a part of response body (the part is passed in $data) + * - 'gzTick': on receiving a gzip-encoded part of response body (ditto) + * - 'gotBody': after receiving the response body (passes the decoded body in $data if it was gzipped) + * + * @param HTTP_Request_Listener listener to attach + * @return boolean whether the listener was successfully attached + * @access public + */ + function attach(&$listener) + { + if (!is_a($listener, 'HTTP_Request_Listener')) { + return false; + } + $this->_listeners[$listener->getId()] =& $listener; + return true; + } + + + /** + * Removes a Listener from the list of listeners + * + * @param HTTP_Request_Listener listener to detach + * @return boolean whether the listener was successfully detached + * @access public + */ + function detach(&$listener) + { + if (!is_a($listener, 'HTTP_Request_Listener') || + !isset($this->_listeners[$listener->getId()])) { + return false; + } + unset($this->_listeners[$listener->getId()]); + return true; + } + + + /** + * Notifies all registered listeners of an event. + * + * @param string Event name + * @param mixed Additional data + * @access private + * @see HTTP_Request::attach() + */ + function _notify($event, $data = null) + { + foreach (array_keys($this->_listeners) as $id) { + $this->_listeners[$id]->update($this, $event, $data); + } + } +} + + +/** + * Response class to complement the Request class + * + * @category HTTP + * @package HTTP_Request + * @author Richard Heyes + * @author Alexey Borzov + * @version Release: 1.4.4 + */ +class HTTP_Response +{ + /** + * Socket object + * @var Net_Socket + */ + var $_sock; + + /** + * Protocol + * @var string + */ + var $_protocol; + + /** + * Return code + * @var string + */ + var $_code; + + /** + * Response reason phrase + * @var string + */ + var $_reason; + + /** + * Response headers + * @var array + */ + var $_headers; + + /** + * Cookies set in response + * @var array + */ + var $_cookies; + + /** + * Response body + * @var string + */ + var $_body = ''; + + /** + * Used by _readChunked(): remaining length of the current chunk + * @var string + */ + var $_chunkLength = 0; + + /** + * Attached listeners + * @var array + */ + var $_listeners = array(); + + /** + * Bytes left to read from message-body + * @var null|int + */ + var $_toRead; + + /** + * Constructor + * + * @param Net_Socket socket to read the response from + * @param array listeners attached to request + */ + function HTTP_Response(&$sock, &$listeners) + { + $this->_sock =& $sock; + $this->_listeners =& $listeners; + } + + + /** + * Processes a HTTP response + * + * This extracts response code, headers, cookies and decodes body if it + * was encoded in some way + * + * @access public + * @param bool Whether to store response body in object property, set + * this to false if downloading a LARGE file and using a Listener. + * This is assumed to be true if body is gzip-encoded. + * @param bool Whether the response can actually have a message-body. + * Will be set to false for HEAD requests. + * @throws PEAR_Error + * @return mixed true on success, PEAR_Error in case of malformed response + */ + function process($saveBody = true, $canHaveBody = true) + { + do { + $line = $this->_sock->readLine(); + if (!preg_match('!^(HTTP/\d\.\d) (\d{3})(?: (.+))?!', $line, $s)) { + return PEAR::raiseError('Malformed response', HTTP_REQUEST_ERROR_RESPONSE); + } else { + $this->_protocol = $s[1]; + $this->_code = intval($s[2]); + $this->_reason = empty($s[3])? null: $s[3]; + } + while ('' !== ($header = $this->_sock->readLine())) { + $this->_processHeader($header); + } + } while (100 == $this->_code); + + $this->_notify('gotHeaders', $this->_headers); + + // RFC 2616, section 4.4: + // 1. Any response message which "MUST NOT" include a message-body ... + // is always terminated by the first empty line after the header fields + // 3. ... If a message is received with both a + // Transfer-Encoding header field and a Content-Length header field, + // the latter MUST be ignored. + $canHaveBody = $canHaveBody && $this->_code >= 200 && + $this->_code != 204 && $this->_code != 304; + + // If response body is present, read it and decode + $chunked = isset($this->_headers['transfer-encoding']) && ('chunked' == $this->_headers['transfer-encoding']); + $gzipped = isset($this->_headers['content-encoding']) && ('gzip' == $this->_headers['content-encoding']); + $hasBody = false; + if ($canHaveBody && ($chunked || !isset($this->_headers['content-length']) || + 0 != $this->_headers['content-length'])) + { + if ($chunked || !isset($this->_headers['content-length'])) { + $this->_toRead = null; + } else { + $this->_toRead = $this->_headers['content-length']; + } + while (!$this->_sock->eof() && (is_null($this->_toRead) || 0 < $this->_toRead)) { + if ($chunked) { + $data = $this->_readChunked(); + } elseif (is_null($this->_toRead)) { + $data = $this->_sock->read(4096); + } else { + $data = $this->_sock->read(min(4096, $this->_toRead)); + $this->_toRead -= HTTP_REQUEST_MBSTRING? mb_strlen($data, 'iso-8859-1'): strlen($data); + } + if ('' == $data && (!$this->_chunkLength || $this->_sock->eof())) { + break; + } else { + $hasBody = true; + if ($saveBody || $gzipped) { + $this->_body .= $data; + } + $this->_notify($gzipped? 'gzTick': 'tick', $data); + } + } + } + + if ($hasBody) { + // Uncompress the body if needed + if ($gzipped) { + $body = $this->_decodeGzip($this->_body); + if (PEAR::isError($body)) { + return $body; + } + $this->_body = $body; + $this->_notify('gotBody', $this->_body); + } else { + $this->_notify('gotBody'); + } + } + return true; + } + + + /** + * Processes the response header + * + * @access private + * @param string HTTP header + */ + function _processHeader($header) + { + if (false === strpos($header, ':')) { + return; + } + list($headername, $headervalue) = explode(':', $header, 2); + $headername = strtolower($headername); + $headervalue = ltrim($headervalue); + + if ('set-cookie' != $headername) { + if (isset($this->_headers[$headername])) { + $this->_headers[$headername] .= ',' . $headervalue; + } else { + $this->_headers[$headername] = $headervalue; + } + } else { + $this->_parseCookie($headervalue); + } + } + + + /** + * Parse a Set-Cookie header to fill $_cookies array + * + * @access private + * @param string value of Set-Cookie header + */ + function _parseCookie($headervalue) + { + $cookie = array( + 'expires' => null, + 'domain' => null, + 'path' => null, + 'secure' => false + ); + + // Only a name=value pair + if (!strpos($headervalue, ';')) { + $pos = strpos($headervalue, '='); + $cookie['name'] = trim(substr($headervalue, 0, $pos)); + $cookie['value'] = trim(substr($headervalue, $pos + 1)); + + // Some optional parameters are supplied + } else { + $elements = explode(';', $headervalue); + $pos = strpos($elements[0], '='); + $cookie['name'] = trim(substr($elements[0], 0, $pos)); + $cookie['value'] = trim(substr($elements[0], $pos + 1)); + + for ($i = 1; $i < count($elements); $i++) { + if (false === strpos($elements[$i], '=')) { + $elName = trim($elements[$i]); + $elValue = null; + } else { + list ($elName, $elValue) = array_map('trim', explode('=', $elements[$i])); + } + $elName = strtolower($elName); + if ('secure' == $elName) { + $cookie['secure'] = true; + } elseif ('expires' == $elName) { + $cookie['expires'] = str_replace('"', '', $elValue); + } elseif ('path' == $elName || 'domain' == $elName) { + $cookie[$elName] = urldecode($elValue); + } else { + $cookie[$elName] = $elValue; + } + } + } + $this->_cookies[] = $cookie; + } + + + /** + * Read a part of response body encoded with chunked Transfer-Encoding + * + * @access private + * @return string + */ + function _readChunked() + { + // at start of the next chunk? + if (0 == $this->_chunkLength) { + $line = $this->_sock->readLine(); + if (preg_match('/^([0-9a-f]+)/i', $line, $matches)) { + $this->_chunkLength = hexdec($matches[1]); + // Chunk with zero length indicates the end + if (0 == $this->_chunkLength) { + $this->_sock->readLine(); // make this an eof() + return ''; + } + } else { + return ''; + } + } + $data = $this->_sock->read($this->_chunkLength); + $this->_chunkLength -= HTTP_REQUEST_MBSTRING? mb_strlen($data, 'iso-8859-1'): strlen($data); + if (0 == $this->_chunkLength) { + $this->_sock->readLine(); // Trailing CRLF + } + return $data; + } + + + /** + * Notifies all registered listeners of an event. + * + * @param string Event name + * @param mixed Additional data + * @access private + * @see HTTP_Request::_notify() + */ + function _notify($event, $data = null) + { + foreach (array_keys($this->_listeners) as $id) { + $this->_listeners[$id]->update($this, $event, $data); + } + } + + + /** + * Decodes the message-body encoded by gzip + * + * The real decoding work is done by gzinflate() built-in function, this + * method only parses the header and checks data for compliance with + * RFC 1952 + * + * @access private + * @param string gzip-encoded data + * @return string decoded data + */ + function _decodeGzip($data) + { + if (HTTP_REQUEST_MBSTRING) { + $oldEncoding = mb_internal_encoding(); + mb_internal_encoding('iso-8859-1'); + } + $length = strlen($data); + // If it doesn't look like gzip-encoded data, don't bother + if (18 > $length || strcmp(substr($data, 0, 2), "\x1f\x8b")) { + return $data; + } + $method = ord(substr($data, 2, 1)); + if (8 != $method) { + return PEAR::raiseError('_decodeGzip(): unknown compression method', HTTP_REQUEST_ERROR_GZIP_METHOD); + } + $flags = ord(substr($data, 3, 1)); + if ($flags & 224) { + return PEAR::raiseError('_decodeGzip(): reserved bits are set', HTTP_REQUEST_ERROR_GZIP_DATA); + } + + // header is 10 bytes minimum. may be longer, though. + $headerLength = 10; + // extra fields, need to skip 'em + if ($flags & 4) { + if ($length - $headerLength - 2 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $extraLength = unpack('v', substr($data, 10, 2)); + if ($length - $headerLength - 2 - $extraLength[1] < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $headerLength += $extraLength[1] + 2; + } + // file name, need to skip that + if ($flags & 8) { + if ($length - $headerLength - 1 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $filenameLength = strpos(substr($data, $headerLength), chr(0)); + if (false === $filenameLength || $length - $headerLength - $filenameLength - 1 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $headerLength += $filenameLength + 1; + } + // comment, need to skip that also + if ($flags & 16) { + if ($length - $headerLength - 1 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $commentLength = strpos(substr($data, $headerLength), chr(0)); + if (false === $commentLength || $length - $headerLength - $commentLength - 1 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $headerLength += $commentLength + 1; + } + // have a CRC for header. let's check + if ($flags & 1) { + if ($length - $headerLength - 2 < 8) { + return PEAR::raiseError('_decodeGzip(): data too short', HTTP_REQUEST_ERROR_GZIP_DATA); + } + $crcReal = 0xffff & crc32(substr($data, 0, $headerLength)); + $crcStored = unpack('v', substr($data, $headerLength, 2)); + if ($crcReal != $crcStored[1]) { + return PEAR::raiseError('_decodeGzip(): header CRC check failed', HTTP_REQUEST_ERROR_GZIP_CRC); + } + $headerLength += 2; + } + // unpacked data CRC and size at the end of encoded data + $tmp = unpack('V2', substr($data, -8)); + $dataCrc = $tmp[1]; + $dataSize = $tmp[2]; + + // finally, call the gzinflate() function + // don't pass $dataSize to gzinflate, see bugs #13135, #14370 + $unpacked = gzinflate(substr($data, $headerLength, -8)); + if (false === $unpacked) { + return PEAR::raiseError('_decodeGzip(): gzinflate() call failed', HTTP_REQUEST_ERROR_GZIP_READ); + } elseif ($dataSize != strlen($unpacked)) { + return PEAR::raiseError('_decodeGzip(): data size check failed', HTTP_REQUEST_ERROR_GZIP_READ); + } elseif ((0xffffffff & $dataCrc) != (0xffffffff & crc32($unpacked))) { + return PEAR::raiseError('_decodeGzip(): data CRC check failed', HTTP_REQUEST_ERROR_GZIP_CRC); + } + if (HTTP_REQUEST_MBSTRING) { + mb_internal_encoding($oldEncoding); + } + return $unpacked; + } +} // End class HTTP_Response +?> diff --git a/lib/PEAR/HTTP/Request/Listener.php b/lib/PEAR/HTTP/Request/Listener.php index b4fe444b35d2e..c9095ebc90289 100644 --- a/lib/PEAR/HTTP/Request/Listener.php +++ b/lib/PEAR/HTTP/Request/Listener.php @@ -1,106 +1,106 @@ - - * @copyright 2002-2007 Richard Heyes - * @license http://opensource.org/licenses/bsd-license.php New BSD License - * @version CVS: $Id: Listener.php,v 1.3 2007/05/18 10:33:31 avb Exp $ - * @link http://pear.php.net/package/HTTP_Request/ - */ - -/** - * Listener for HTTP_Request and HTTP_Response objects - * - * This class implements the Observer part of a Subject-Observer - * design pattern. - * - * @category HTTP - * @package HTTP_Request - * @author Alexey Borzov - * @version Release: 1.4.4 - */ -class HTTP_Request_Listener -{ - /** - * A listener's identifier - * @var string - */ - var $_id; - - /** - * Constructor, sets the object's identifier - * - * @access public - */ - function HTTP_Request_Listener() - { - $this->_id = md5(uniqid('http_request_', 1)); - } - - - /** - * Returns the listener's identifier - * - * @access public - * @return string - */ - function getId() - { - return $this->_id; - } - - - /** - * This method is called when Listener is notified of an event - * - * @access public - * @param object an object the listener is attached to - * @param string Event name - * @param mixed Additional data - * @abstract - */ - function update(&$subject, $event, $data = null) - { - echo "Notified of event: '$event'\n"; - if (null !== $data) { - echo "Additional data: "; - var_dump($data); - } - } -} -?> + + * @copyright 2002-2007 Richard Heyes + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: Listener.php,v 1.3 2007/05/18 10:33:31 avb Exp $ + * @link http://pear.php.net/package/HTTP_Request/ + */ + +/** + * Listener for HTTP_Request and HTTP_Response objects + * + * This class implements the Observer part of a Subject-Observer + * design pattern. + * + * @category HTTP + * @package HTTP_Request + * @author Alexey Borzov + * @version Release: 1.4.4 + */ +class HTTP_Request_Listener +{ + /** + * A listener's identifier + * @var string + */ + var $_id; + + /** + * Constructor, sets the object's identifier + * + * @access public + */ + function HTTP_Request_Listener() + { + $this->_id = md5(uniqid('http_request_', 1)); + } + + + /** + * Returns the listener's identifier + * + * @access public + * @return string + */ + function getId() + { + return $this->_id; + } + + + /** + * This method is called when Listener is notified of an event + * + * @access public + * @param object an object the listener is attached to + * @param string Event name + * @param mixed Additional data + * @abstract + */ + function update(&$subject, $event, $data = null) + { + echo "Notified of event: '$event'\n"; + if (null !== $data) { + echo "Additional data: "; + var_dump($data); + } + } +} +?> diff --git a/lib/PEAR/Mail/xmail.dtd b/lib/PEAR/Mail/xmail.dtd index 9779796167eed..9f42ca8b3312f 100644 --- a/lib/PEAR/Mail/xmail.dtd +++ b/lib/PEAR/Mail/xmail.dtd @@ -1,19 +1,19 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + diff --git a/lib/PEAR/Mail/xmail.xsl b/lib/PEAR/Mail/xmail.xsl index 0e4ffe680dede..0b948913f84d4 100644 --- a/lib/PEAR/Mail/xmail.xsl +++ b/lib/PEAR/Mail/xmail.xsl @@ -1,70 +1,70 @@ - - - - - - - - - - - - - - - - - - - - - - - : - - - - - - - - ; - - =" - - " - - - - - - - - - - - - - - - - - - - - -- - - - - ---- - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + : + + + + + + + + ; + + =" + + " + + + + + + + + + + + + + + + + + + + + -- + + + + ---- + + + + + + + + + + \ No newline at end of file diff --git a/lib/Varien/Data/Form/Element/Abstract.php b/lib/Varien/Data/Form/Element/Abstract.php index 0321330920f03..779545b29dedb 100644 --- a/lib/Varien/Data/Form/Element/Abstract.php +++ b/lib/Varien/Data/Form/Element/Abstract.php @@ -172,10 +172,21 @@ public function getRenderer() return $this->_renderer; } + protected function _getUiId($suffix = null) + { + if ($this->_renderer instanceof Mage_Core_Block_Abstract) { + return $this->_renderer->getUiId($this->getType(), $this->getName(), $suffix); + } else { + return ' data-ui-id="form-element-' . $this->getName() . ($suffix ? : '') . '"'; + } + } + public function getElementHtml() { - $html = 'serialize($this->getHtmlAttributes()).'/>'."\n"; + + $html = '_getUiId() + . ' value="' . $this->getEscapedValue() . '" ' . $this->serialize($this->getHtmlAttributes()) . '/>' . "\n"; $html.= $this->getAfterElementHtml(); return $html; } @@ -194,8 +205,9 @@ public function getAfterElementHtml() public function getLabelHtml($idSuffix = '') { if (!is_null($this->getLabel())) { - $html = '' . "\n"; + $html = '' . "\n"; } else { $html = ''; } diff --git a/lib/Varien/Data/Form/Element/Date.php b/lib/Varien/Data/Form/Element/Date.php index ffbc18681ecdc..1ee9c1e714b96 100644 --- a/lib/Varien/Data/Form/Element/Date.php +++ b/lib/Varien/Data/Form/Element/Date.php @@ -49,7 +49,7 @@ public function __construct($attributes=array()) } /** - * If script executes on x64 system, converts large + * If script executes on x64 system, converts large * numeric values to timestamp limit */ protected function _toTimestamp($value) @@ -62,7 +62,7 @@ protected function _toTimestamp($value) return $value; } - + /** * Set date value @@ -155,8 +155,8 @@ public function getElementHtml() $this->addClass('input-text'); $html = sprintf( - '' - .' ', + '_getUiId('hidden') . '/>' + .' _getUiId('calendar-button') . '/>', $this->getName(), $this->getHtmlId(), $this->_escape($this->getValue()), $this->serialize($this->getHtmlAttributes()), $this->getImage(), $this->getHtmlId(), 'Select Date', ($this->getDisabled() ? 'display:none;' : '') ); diff --git a/lib/Varien/Data/Form/Element/Editor.php b/lib/Varien/Data/Form/Element/Editor.php index 35ef45b4b2747..11ce3dbf2c577 100644 --- a/lib/Varien/Data/Form/Element/Editor.php +++ b/lib/Varien/Data/Form/Element/Editor.php @@ -101,7 +101,7 @@ public function getElementHtml() } $html = $this->_getButtonsHtml() - . '' diff --git a/lib/Varien/Data/Form/Element/Fieldset.php b/lib/Varien/Data/Form/Element/Fieldset.php index ee576188b223b..4f76e76959ba0 100644 --- a/lib/Varien/Data/Form/Element/Fieldset.php +++ b/lib/Varien/Data/Form/Element/Fieldset.php @@ -67,9 +67,9 @@ public function __construct($attributes=array()) */ public function getElementHtml() { - $html = '
serialize(array('class')).'>'."\n"; + $html = '
serialize(array('class')) . $this->_getUiId() . '>'."\n"; if ($this->getLegend()) { - $html.= ''.$this->getLegend().''."\n"; + $html.= '_getUiId('legend') . '>'.$this->getLegend().''."\n"; } $html.= $this->getChildrenHtml(); $html.= '
'."\n"; diff --git a/lib/Varien/Data/Form/Element/Gallery.php b/lib/Varien/Data/Form/Element/Gallery.php index 4bf3f6c4caab2..a8346813ed590 100644 --- a/lib/Varien/Data/Form/Element/Gallery.php +++ b/lib/Varien/Data/Form/Element/Gallery.php @@ -70,12 +70,12 @@ public function getElementHtml() foreach ($this->getValue()->getAttributeBackend()->getImageTypes() as $type) { $url = $image->setType($type)->getSourceUrl(); $html .= ''; - $html .= ' + $html .= '_getUiId('image-' . $image->getValueId()) . '> '.$image->getValue().'
'; - $html .= ''; + $html .= '_getUiId('file') . ' >'; } - $html .= ''; - $html .= ''; + $html .= '_getUiId('position-' . $image->getValueId()) . '/>'; + $html .= '_getUiId('delete-button-' . $image->getValueId()) . '/>'; $html .= ''; } } diff --git a/lib/Varien/Data/Form/Element/Image.php b/lib/Varien/Data/Form/Element/Image.php index 705b1f7dd0794..f3f1fb09e512e 100644 --- a/lib/Varien/Data/Form/Element/Image.php +++ b/lib/Varien/Data/Form/Element/Image.php @@ -61,9 +61,9 @@ public function getElementHtml() } $html = '' + . ' onclick="imagePreview(\'' . $this->getHtmlId() . '_image\'); return false;" ' . $this->_getUiId('link') . '>' . '' . $this->getValue() . '' + . ' alt="' . $this->getValue() . '" height="22" width="22" class="small-image-preview v-middle" ' . $this->_getUiId() . ' />' . ' '; } $this->setClass('input-file'); diff --git a/lib/Varien/Data/Form/Element/Link.php b/lib/Varien/Data/Form/Element/Link.php index b268069665d6c..761abc98d2ca0 100644 --- a/lib/Varien/Data/Form/Element/Link.php +++ b/lib/Varien/Data/Form/Element/Link.php @@ -46,9 +46,10 @@ public function __construct($attributes=array()) */ public function getElementHtml() { - $html = $this->getBeforeElementHtml(); - $html .= 'serialize($this->getHtmlAttributes()).'>'. $this->getEscapedValue() . "\n"; - $html .= $this->getAfterElementHtml(); + $html = $this->getBeforeElementHtml() + . 'serialize($this->getHtmlAttributes()) + . $this->_getUiId() . '>' . $this->getEscapedValue() . "\n" + . $this->getAfterElementHtml(); return $html; } diff --git a/lib/Varien/Data/Form/Element/Multiline.php b/lib/Varien/Data/Form/Element/Multiline.php index f1edc0e2de0da..3d25878889f56 100644 --- a/lib/Varien/Data/Form/Element/Multiline.php +++ b/lib/Varien/Data/Form/Element/Multiline.php @@ -66,7 +66,7 @@ public function getElementHtml() } $html .= '
serialize($this->getHtmlAttributes()) . ' />' . "\n"; + . $this->serialize($this->getHtmlAttributes()) . ' ' . $this->_getUiId($i) . '/>' . "\n"; if ($i==0) { $html .= $this->getAfterElementHtml(); } diff --git a/lib/Varien/Data/Form/Element/Multiselect.php b/lib/Varien/Data/Form/Element/Multiselect.php index e0d1373bf35bf..a4b0b168eaf48 100644 --- a/lib/Varien/Data/Form/Element/Multiselect.php +++ b/lib/Varien/Data/Form/Element/Multiselect.php @@ -58,7 +58,7 @@ public function getElementHtml() $html .= ''; } $html .= 'serialize($this->getHtmlAttributes()).'>'."\n"; + $html = '"; $html .= $this->getAfterElementHtml(); diff --git a/lib/Varien/Data/Form/Element/Time.php b/lib/Varien/Data/Form/Element/Time.php index f5ff2b90e421e..4e4209940f5b2 100644 --- a/lib/Varien/Data/Form/Element/Time.php +++ b/lib/Varien/Data/Form/Element/Time.php @@ -65,22 +65,22 @@ public function getElementHtml() } } - $html = ''; - $html .= '_getUiId() . '/>'; + $html .= ''."\n"; - $html.= ' : serialize($this->getHtmlAttributes()).' style="width:40px" ' . $this->_getUiId('minute') . '>'."\n"; for( $i=0;$i<60;$i++ ) { $hour = str_pad($i, 2, '0', STR_PAD_LEFT); $html.= ''; } $html.= ''."\n"; - $html.= ' : serialize($this->getHtmlAttributes()).' style="width:40px" ' . $this->_getUiId('second') . '>'."\n"; for( $i=0;$i<60;$i++ ) { $hour = str_pad($i, 2, '0', STR_PAD_LEFT); $html.= ''; diff --git a/lib/Varien/Db/Adapter/Interface.php b/lib/Varien/Db/Adapter/Interface.php index 0811780ee215d..a1fbd2ee7756b 100644 --- a/lib/Varien/Db/Adapter/Interface.php +++ b/lib/Varien/Db/Adapter/Interface.php @@ -63,6 +63,21 @@ interface Varien_Db_Adapter_Interface */ const ERROR_DDL_MESSAGE = 'DDL statements are not allowed in transactions'; + /** + * Error message for unfinished rollBack transaction + */ + const ERROR_ROLLBACK_INCOMPLETE_MESSAGE = 'Rolled back transaction has not been completed correctly.'; + + /** + * Error message for asymmetric transaction rollback + */ + const ERROR_ASYMMETRIC_ROLLBACK_MESSAGE = 'Asymmetric transaction rollback.'; + + /** + * Error message for asymmetric transaction commit + */ + const ERROR_ASYMMETRIC_COMMIT_MESSAGE = 'Asymmetric transaction commit.'; + /** * Begin new DB transaction for connection * diff --git a/lib/Varien/Db/Adapter/Pdo/Mysql.php b/lib/Varien/Db/Adapter/Pdo/Mysql.php index 6dcab28bfbe05..d2c1f66759fed 100644 --- a/lib/Varien/Db/Adapter/Pdo/Mysql.php +++ b/lib/Varien/Db/Adapter/Pdo/Mysql.php @@ -72,6 +72,13 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V */ protected $_transactionLevel = 0; + /** + * Whether transaction was rolled back or not + * + * @var bool + */ + protected $_isRolledBack = false; + /** * Set attribute to connection flag * @@ -219,6 +226,9 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V */ public function beginTransaction() { + if ($this->_isRolledBack) { + throw new Exception(Varien_Db_Adapter_Interface::ERROR_ROLLBACK_INCOMPLETE_MESSAGE); + } if ($this->_transactionLevel === 0) { $this->_debugTimer(); parent::beginTransaction(); @@ -235,12 +245,14 @@ public function beginTransaction() */ public function commit() { - if ($this->_transactionLevel === 1) { + if ($this->_transactionLevel === 1 && !$this->_isRolledBack) { $this->_debugTimer(); parent::commit(); $this->_debugStat(self::DEBUG_TRANSACTION, 'COMMIT'); } elseif ($this->_transactionLevel === 0) { - throw new Exception('Asymmetric transaction commit.'); + throw new Exception(Varien_Db_Adapter_Interface::ERROR_ASYMMETRIC_COMMIT_MESSAGE); + } elseif ($this->_isRolledBack) { + throw new Exception(Varien_Db_Adapter_Interface::ERROR_ROLLBACK_INCOMPLETE_MESSAGE); } --$this->_transactionLevel; return $this; @@ -251,14 +263,17 @@ public function commit() * * @return Varien_Db_Adapter_Pdo_Mysql */ - public function rollback() + public function rollBack() { if ($this->_transactionLevel === 1) { $this->_debugTimer(); - parent::rollback(); + parent::rollBack(); + $this->_isRolledBack = false; $this->_debugStat(self::DEBUG_TRANSACTION, 'ROLLBACK'); } elseif ($this->_transactionLevel === 0) { - throw new Exception('Asymmetric transaction rollback.'); + throw new Exception(Varien_Db_Adapter_Interface::ERROR_ASYMMETRIC_ROLLBACK_MESSAGE); + } else { + $this->_isRolledBack = true; } --$this->_transactionLevel; return $this; diff --git a/lib/Zend/Application/Resource/Useragent.php b/lib/Zend/Application/Resource/Useragent.php index f134d17346deb..ccfb72b939a61 100644 --- a/lib/Zend/Application/Resource/Useragent.php +++ b/lib/Zend/Application/Resource/Useragent.php @@ -1,72 +1,72 @@ -getUserAgent(); - - // Optionally seed the UserAgent view helper - $bootstrap = $this->getBootstrap(); - if ($bootstrap->hasResource('view') || $bootstrap->hasPluginResource('view')) { - $bootstrap->bootstrap('view'); - $view = $bootstrap->getResource('view'); - if (null !== $view) { - $view->userAgent($userAgent); - } - } - - return $userAgent; - } - - /** - * Get UserAgent instance - * - * @return Zend_Http_UserAgent - */ - public function getUserAgent() - { - if (null === $this->_userAgent) { - $options = $this->getOptions(); - $this->_userAgent = new Zend_Http_UserAgent($options); - } - - return $this->_userAgent; - } -} +getUserAgent(); + + // Optionally seed the UserAgent view helper + $bootstrap = $this->getBootstrap(); + if ($bootstrap->hasResource('view') || $bootstrap->hasPluginResource('view')) { + $bootstrap->bootstrap('view'); + $view = $bootstrap->getResource('view'); + if (null !== $view) { + $view->userAgent($userAgent); + } + } + + return $userAgent; + } + + /** + * Get UserAgent instance + * + * @return Zend_Http_UserAgent + */ + public function getUserAgent() + { + if (null === $this->_userAgent) { + $options = $this->getOptions(); + $this->_userAgent = new Zend_Http_UserAgent($options); + } + + return $this->_userAgent; + } +} diff --git a/lib/Zend/Cloud/DocumentService/Adapter/SimpleDb.php b/lib/Zend/Cloud/DocumentService/Adapter/SimpleDb.php index 130229ff64b6c..0298d997eab57 100644 --- a/lib/Zend/Cloud/DocumentService/Adapter/SimpleDb.php +++ b/lib/Zend/Cloud/DocumentService/Adapter/SimpleDb.php @@ -1,468 +1,468 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid options provided to constructor'); - } - - $this->_simpleDb = new Zend_Service_Amazon_SimpleDb( - $options[self::AWS_ACCESS_KEY], $options[self::AWS_SECRET_KEY] - ); - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_sqs->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - - if (isset($options[self::DOCUMENT_CLASS])) { - $this->setDocumentClass($options[self::DOCUMENT_CLASS]); - } - - if (isset($options[self::DOCUMENTSET_CLASS])) { - $this->setDocumentSetClass($options[self::DOCUMENTSET_CLASS]); - } - - if (isset($options[self::QUERY_CLASS])) { - $this->setQueryClass($options[self::QUERY_CLASS]); - } - } - - /** - * Create collection. - * - * @param string $name - * @param array $options - * @return void - */ - public function createCollection($name, $options = null) - { - try { - $this->_simpleDb->createDomain($name); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on domain creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete collection. - * - * @param string $name - * @param array $options - * @return void - */ - public function deleteCollection($name, $options = null) - { - try { - $this->_simpleDb->deleteDomain($name); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * List collections. - * - * @param array $options - * @return array - */ - public function listCollections($options = null) - { - try { - // TODO package this in Pages - $domains = $this->_simpleDb->listDomains()->getData(); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); - } - - return $domains; - } - - /** - * List documents - * - * Returns a key/value array of document names to document objects. - * - * @param string $collectionName Name of collection for which to list documents - * @param array|null $options - * @return Zend_Cloud_DocumentService_DocumentSet - */ - public function listDocuments($collectionName, array $options = null) - { - $query = $this->select('*')->from($collectionName); - $items = $this->query($collectionName, $query, $options); - return $items; - } - - /** - * Insert document - * - * @param string $collectionName Collection into which to insert document - * @param array|Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return void - */ - public function insertDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - try { - $this->_simpleDb->putAttributes( - $collectionName, - $document->getID(), - $this->_makeAttributes($document->getID(), $document->getFields()) - ); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document insertion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Replace an existing document with a new version - * - * @param string $collectionName - * @param array|Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return void - */ - public function replaceDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - // Delete document first, then insert. PutAttributes always keeps any - // fields not referenced in the payload, but present in the document - $documentId = $document->getId(); - $fields = $document->getFields(); - $docClass = get_class($document); - $this->deleteDocument($collectionName, $document, $options); - - $document = new $docClass($fields, $documentId); - $this->insertDocument($collectionName, $document); - } - - /** - * Update document. The new document replaces the existing document. - * - * Option 'merge' specifies to add all attributes (if true) or - * specific attributes ("attr" => true) instead of replacing them. - * By default, attributes are replaced. - * - * @param string $collectionName - * @param mixed|Zend_Cloud_DocumentService_Document $documentId Document ID, adapter-dependent - * @param array|Zend_Cloud_DocumentService_Document $fieldset Set of fields to update - * @param array $options - * @return boolean - */ - public function updateDocument($collectionName, $documentId, $fieldset = null, $options = null) - { - if (null === $fieldset && $documentId instanceof Zend_Cloud_DocumentService_Document) { - $fieldset = $documentId->getFields(); - if (empty($documentId)) { - $documentId = $documentId->getId(); - } - } elseif ($fieldset instanceof Zend_Cloud_DocumentService_Document) { - if (empty($documentId)) { - $documentId = $fieldset->getId(); - } - $fieldset = $fieldset->getFields(); - } - - $replace = array(); - if (empty($options[self::MERGE_OPTION])) { - // no merge option - we replace all - foreach ($fieldset as $key => $value) { - $replace[$key] = true; - } - } elseif (is_array($options[self::MERGE_OPTION])) { - foreach ($fieldset as $key => $value) { - if (empty($options[self::MERGE_OPTION][$key])) { - // if there's merge key, we add it, otherwise we replace it - $replace[$key] = true; - } - } - } // otherwise $replace is empty - all is merged - - try { - $this->_simpleDb->putAttributes( - $collectionName, - $documentId, - $this->_makeAttributes($documentId, $fieldset), - $replace - ); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document update: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Delete document. - * - * @param string $collectionName Collection from which to delete document - * @param mixed $document Document ID or Document object. - * @param array $options - * @return boolean - */ - public function deleteDocument($collectionName, $document, $options = null) - { - if ($document instanceof Zend_Cloud_DocumentService_Document) { - $document = $document->getId(); - } - try { - $this->_simpleDb->deleteAttributes($collectionName, $document); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document deletion: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Fetch single document by ID - * - * @param string $collectionName Collection name - * @param mixed $documentId Document ID, adapter-dependent - * @param array $options - * @return Zend_Cloud_DocumentService_Document - */ - public function fetchDocument($collectionName, $documentId, $options = null) - { - try { - $attributes = $this->_simpleDb->getAttributes($collectionName, $documentId); - if ($attributes == false || count($attributes) == 0) { - return false; - } - return $this->_resolveAttributes($attributes, true); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on fetching document: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Query for documents stored in the document service. If a string is passed in - * $query, the query string will be passed directly to the service. - * - * @param string $collectionName Collection name - * @param string $query - * @param array $options - * @return array Zend_Cloud_DocumentService_DocumentSet - */ - public function query($collectionName, $query, $options = null) - { - $returnDocs = isset($options[self::RETURN_DOCUMENTS]) - ? (bool) $options[self::RETURN_DOCUMENTS] - : true; - - try { - if ($query instanceof Zend_Cloud_DocumentService_Adapter_SimpleDb_Query) { - $query = $query->assemble($collectionName); - } - $result = $this->_simpleDb->select($query); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document query: '.$e->getMessage(), $e->getCode(), $e); - } - - return $this->_getDocumentSetFromResultSet($result, $returnDocs); - } - - /** - * Create query statement - * - * @param string $fields - * @return Zend_Cloud_DocumentService_Adapter_SimpleDb_Query - */ - public function select($fields = null) - { - $queryClass = $this->getQueryClass(); - if (!class_exists($queryClass)) { - #require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($queryClass); - } - - $query = new $queryClass($this); - $defaultClass = self::DEFAULT_QUERY_CLASS; - if (!$query instanceof $defaultClass) { - throw new Zend_Cloud_DocumentService_Exception('Query class must extend ' . self::DEFAULT_QUERY_CLASS); - } - - $query->select($fields); - return $query; - } - - /** - * Get the concrete service client - * - * @return Zend_Service_Amazon_SimpleDb - */ - public function getClient() - { - return $this->_simpleDb; - } - - /** - * Convert array of key-value pairs to array of Amazon attributes - * - * @param string $name - * @param array $attributes - * @return array - */ - protected function _makeAttributes($name, $attributes) - { - $result = array(); - foreach ($attributes as $key => $attr) { - $result[] = new Zend_Service_Amazon_SimpleDb_Attribute($name, $key, $attr); - } - return $result; - } - - /** - * Convert array of Amazon attributes to array of key-value pairs - * - * @param array $attributes - * @return array - */ - protected function _resolveAttributes($attributes, $returnDocument = false) - { - $result = array(); - foreach ($attributes as $attr) { - $value = $attr->getValues(); - if (count($value) == 0) { - $value = null; - } elseif (count($value) == 1) { - $value = $value[0]; - } - $result[$attr->getName()] = $value; - } - - // Return as document object? - if ($returnDocument) { - $documentClass = $this->getDocumentClass(); - return new $documentClass($result, $attr->getItemName()); - } - - return $result; - } - - /** - * Create suitable document from array of fields - * - * @param array $document - * @return Zend_Cloud_DocumentService_Document - */ - protected function _getDocumentFromArray($document) - { - if (!isset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD])) { - if (isset($document[self::ITEM_NAME])) { - $key = $document[self::ITEM_NAME]; - unset($document[self::ITEM_NAME]); - } else { - throw new Zend_Cloud_DocumentService_Exception('Fields array should contain the key field '.Zend_Cloud_DocumentService_Document::KEY_FIELD); - } - } else { - $key = $document[Zend_Cloud_DocumentService_Document::KEY_FIELD]; - unset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD]); - } - - $documentClass = $this->getDocumentClass(); - return new $documentClass($document, $key); - } - - /** - * Create a DocumentSet from a SimpleDb resultset - * - * @param Zend_Service_Amazon_SimpleDb_Page $resultSet - * @param bool $returnDocs - * @return Zend_Cloud_DocumentService_DocumentSet - */ - protected function _getDocumentSetFromResultSet(Zend_Service_Amazon_SimpleDb_Page $resultSet, $returnDocs = true) - { - $docs = array(); - foreach ($resultSet->getData() as $item) { - $docs[] = $this->_resolveAttributes($item, $returnDocs); - } - - $setClass = $this->getDocumentSetClass(); - return new $setClass($docs); - } -} +toArray(); + } + + if (!is_array($options)) { + throw new Zend_Cloud_DocumentService_Exception('Invalid options provided to constructor'); + } + + $this->_simpleDb = new Zend_Service_Amazon_SimpleDb( + $options[self::AWS_ACCESS_KEY], $options[self::AWS_SECRET_KEY] + ); + + if (isset($options[self::HTTP_ADAPTER])) { + $this->_sqs->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); + } + + if (isset($options[self::DOCUMENT_CLASS])) { + $this->setDocumentClass($options[self::DOCUMENT_CLASS]); + } + + if (isset($options[self::DOCUMENTSET_CLASS])) { + $this->setDocumentSetClass($options[self::DOCUMENTSET_CLASS]); + } + + if (isset($options[self::QUERY_CLASS])) { + $this->setQueryClass($options[self::QUERY_CLASS]); + } + } + + /** + * Create collection. + * + * @param string $name + * @param array $options + * @return void + */ + public function createCollection($name, $options = null) + { + try { + $this->_simpleDb->createDomain($name); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on domain creation: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Delete collection. + * + * @param string $name + * @param array $options + * @return void + */ + public function deleteCollection($name, $options = null) + { + try { + $this->_simpleDb->deleteDomain($name); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * List collections. + * + * @param array $options + * @return array + */ + public function listCollections($options = null) + { + try { + // TODO package this in Pages + $domains = $this->_simpleDb->listDomains()->getData(); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); + } + + return $domains; + } + + /** + * List documents + * + * Returns a key/value array of document names to document objects. + * + * @param string $collectionName Name of collection for which to list documents + * @param array|null $options + * @return Zend_Cloud_DocumentService_DocumentSet + */ + public function listDocuments($collectionName, array $options = null) + { + $query = $this->select('*')->from($collectionName); + $items = $this->query($collectionName, $query, $options); + return $items; + } + + /** + * Insert document + * + * @param string $collectionName Collection into which to insert document + * @param array|Zend_Cloud_DocumentService_Document $document + * @param array $options + * @return void + */ + public function insertDocument($collectionName, $document, $options = null) + { + if (is_array($document)) { + $document = $this->_getDocumentFromArray($document); + } + + if (!$document instanceof Zend_Cloud_DocumentService_Document) { + throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); + } + + try { + $this->_simpleDb->putAttributes( + $collectionName, + $document->getID(), + $this->_makeAttributes($document->getID(), $document->getFields()) + ); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on document insertion: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Replace an existing document with a new version + * + * @param string $collectionName + * @param array|Zend_Cloud_DocumentService_Document $document + * @param array $options + * @return void + */ + public function replaceDocument($collectionName, $document, $options = null) + { + if (is_array($document)) { + $document = $this->_getDocumentFromArray($document); + } + + if (!$document instanceof Zend_Cloud_DocumentService_Document) { + throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); + } + + // Delete document first, then insert. PutAttributes always keeps any + // fields not referenced in the payload, but present in the document + $documentId = $document->getId(); + $fields = $document->getFields(); + $docClass = get_class($document); + $this->deleteDocument($collectionName, $document, $options); + + $document = new $docClass($fields, $documentId); + $this->insertDocument($collectionName, $document); + } + + /** + * Update document. The new document replaces the existing document. + * + * Option 'merge' specifies to add all attributes (if true) or + * specific attributes ("attr" => true) instead of replacing them. + * By default, attributes are replaced. + * + * @param string $collectionName + * @param mixed|Zend_Cloud_DocumentService_Document $documentId Document ID, adapter-dependent + * @param array|Zend_Cloud_DocumentService_Document $fieldset Set of fields to update + * @param array $options + * @return boolean + */ + public function updateDocument($collectionName, $documentId, $fieldset = null, $options = null) + { + if (null === $fieldset && $documentId instanceof Zend_Cloud_DocumentService_Document) { + $fieldset = $documentId->getFields(); + if (empty($documentId)) { + $documentId = $documentId->getId(); + } + } elseif ($fieldset instanceof Zend_Cloud_DocumentService_Document) { + if (empty($documentId)) { + $documentId = $fieldset->getId(); + } + $fieldset = $fieldset->getFields(); + } + + $replace = array(); + if (empty($options[self::MERGE_OPTION])) { + // no merge option - we replace all + foreach ($fieldset as $key => $value) { + $replace[$key] = true; + } + } elseif (is_array($options[self::MERGE_OPTION])) { + foreach ($fieldset as $key => $value) { + if (empty($options[self::MERGE_OPTION][$key])) { + // if there's merge key, we add it, otherwise we replace it + $replace[$key] = true; + } + } + } // otherwise $replace is empty - all is merged + + try { + $this->_simpleDb->putAttributes( + $collectionName, + $documentId, + $this->_makeAttributes($documentId, $fieldset), + $replace + ); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on document update: '.$e->getMessage(), $e->getCode(), $e); + } + return true; + } + + /** + * Delete document. + * + * @param string $collectionName Collection from which to delete document + * @param mixed $document Document ID or Document object. + * @param array $options + * @return boolean + */ + public function deleteDocument($collectionName, $document, $options = null) + { + if ($document instanceof Zend_Cloud_DocumentService_Document) { + $document = $document->getId(); + } + try { + $this->_simpleDb->deleteAttributes($collectionName, $document); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on document deletion: '.$e->getMessage(), $e->getCode(), $e); + } + return true; + } + + /** + * Fetch single document by ID + * + * @param string $collectionName Collection name + * @param mixed $documentId Document ID, adapter-dependent + * @param array $options + * @return Zend_Cloud_DocumentService_Document + */ + public function fetchDocument($collectionName, $documentId, $options = null) + { + try { + $attributes = $this->_simpleDb->getAttributes($collectionName, $documentId); + if ($attributes == false || count($attributes) == 0) { + return false; + } + return $this->_resolveAttributes($attributes, true); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on fetching document: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Query for documents stored in the document service. If a string is passed in + * $query, the query string will be passed directly to the service. + * + * @param string $collectionName Collection name + * @param string $query + * @param array $options + * @return array Zend_Cloud_DocumentService_DocumentSet + */ + public function query($collectionName, $query, $options = null) + { + $returnDocs = isset($options[self::RETURN_DOCUMENTS]) + ? (bool) $options[self::RETURN_DOCUMENTS] + : true; + + try { + if ($query instanceof Zend_Cloud_DocumentService_Adapter_SimpleDb_Query) { + $query = $query->assemble($collectionName); + } + $result = $this->_simpleDb->select($query); + } catch(Zend_Service_Amazon_Exception $e) { + throw new Zend_Cloud_DocumentService_Exception('Error on document query: '.$e->getMessage(), $e->getCode(), $e); + } + + return $this->_getDocumentSetFromResultSet($result, $returnDocs); + } + + /** + * Create query statement + * + * @param string $fields + * @return Zend_Cloud_DocumentService_Adapter_SimpleDb_Query + */ + public function select($fields = null) + { + $queryClass = $this->getQueryClass(); + if (!class_exists($queryClass)) { + #require_once 'Zend/Loader.php'; + Zend_Loader::loadClass($queryClass); + } + + $query = new $queryClass($this); + $defaultClass = self::DEFAULT_QUERY_CLASS; + if (!$query instanceof $defaultClass) { + throw new Zend_Cloud_DocumentService_Exception('Query class must extend ' . self::DEFAULT_QUERY_CLASS); + } + + $query->select($fields); + return $query; + } + + /** + * Get the concrete service client + * + * @return Zend_Service_Amazon_SimpleDb + */ + public function getClient() + { + return $this->_simpleDb; + } + + /** + * Convert array of key-value pairs to array of Amazon attributes + * + * @param string $name + * @param array $attributes + * @return array + */ + protected function _makeAttributes($name, $attributes) + { + $result = array(); + foreach ($attributes as $key => $attr) { + $result[] = new Zend_Service_Amazon_SimpleDb_Attribute($name, $key, $attr); + } + return $result; + } + + /** + * Convert array of Amazon attributes to array of key-value pairs + * + * @param array $attributes + * @return array + */ + protected function _resolveAttributes($attributes, $returnDocument = false) + { + $result = array(); + foreach ($attributes as $attr) { + $value = $attr->getValues(); + if (count($value) == 0) { + $value = null; + } elseif (count($value) == 1) { + $value = $value[0]; + } + $result[$attr->getName()] = $value; + } + + // Return as document object? + if ($returnDocument) { + $documentClass = $this->getDocumentClass(); + return new $documentClass($result, $attr->getItemName()); + } + + return $result; + } + + /** + * Create suitable document from array of fields + * + * @param array $document + * @return Zend_Cloud_DocumentService_Document + */ + protected function _getDocumentFromArray($document) + { + if (!isset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD])) { + if (isset($document[self::ITEM_NAME])) { + $key = $document[self::ITEM_NAME]; + unset($document[self::ITEM_NAME]); + } else { + throw new Zend_Cloud_DocumentService_Exception('Fields array should contain the key field '.Zend_Cloud_DocumentService_Document::KEY_FIELD); + } + } else { + $key = $document[Zend_Cloud_DocumentService_Document::KEY_FIELD]; + unset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD]); + } + + $documentClass = $this->getDocumentClass(); + return new $documentClass($document, $key); + } + + /** + * Create a DocumentSet from a SimpleDb resultset + * + * @param Zend_Service_Amazon_SimpleDb_Page $resultSet + * @param bool $returnDocs + * @return Zend_Cloud_DocumentService_DocumentSet + */ + protected function _getDocumentSetFromResultSet(Zend_Service_Amazon_SimpleDb_Page $resultSet, $returnDocs = true) + { + $docs = array(); + foreach ($resultSet->getData() as $item) { + $docs[] = $this->_resolveAttributes($item, $returnDocs); + } + + $setClass = $this->getDocumentSetClass(); + return new $setClass($docs); + } +} diff --git a/lib/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php b/lib/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php index 84fa2566b04bd..ec5110bd40007 100755 --- a/lib/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php +++ b/lib/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php @@ -1,171 +1,171 @@ -_azureSelect = $select; - } - - /** - * SELECT clause (fields to be selected) - * - * Does nothing for Azure. - * - * @param string $select - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function select($select) - { - return $this; - } - - /** - * FROM clause (table name) - * - * @param string $from - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function from($from) - { - $this->_azureSelect->from($from); - return $this; - } - - /** - * WHERE clause (conditions to be used) - * - * @param string $where - * @param mixed $value Value or array of values to be inserted instead of ? - * @param string $op Operation to use to join where clauses (AND/OR) - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function where($where, $value = null, $op = 'and') - { - if (!empty($value) && !is_array($value)) { - // fix buglet in Azure - numeric values are quoted unless passed as an array - $value = array($value); - } - $this->_azureSelect->where($where, $value, $op); - return $this; - } - - /** - * WHERE clause for item ID - * - * This one should be used when fetching specific rows since some adapters - * have special syntax for primary keys - * - * @param array $value Row ID for the document (PartitionKey, RowKey) - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function whereId($value) - { - if (!is_array($value)) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception('Invalid document key'); - } - $this->_azureSelect->wherePartitionKey($value[0])->whereRowKey($value[1]); - return $this; - } - - /** - * LIMIT clause (how many rows to return) - * - * @param int $limit - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function limit($limit) - { - $this->_azureSelect->top($limit); - return $this; - } - - /** - * ORDER BY clause (sorting) - * - * @todo Azure service doesn't seem to support this yet; emulate? - * @param string $sort Column to sort by - * @param string $direction Direction - asc/desc - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - * @throws Zend_Cloud_OperationNotAvailableException - */ - public function order($sort, $direction = 'asc') - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('No support for sorting for Azure yet'); - } - - /** - * Get Azure select query - * - * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery - */ - public function getAzureSelect() - { - return $this->_azureSelect; - } - - /** - * Assemble query - * - * Simply return the WindowsAzure table entity query object - * - * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery - */ - public function assemble() - { - return $this->getAzureSelect(); - } -} +_azureSelect = $select; + } + + /** + * SELECT clause (fields to be selected) + * + * Does nothing for Azure. + * + * @param string $select + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + */ + public function select($select) + { + return $this; + } + + /** + * FROM clause (table name) + * + * @param string $from + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + */ + public function from($from) + { + $this->_azureSelect->from($from); + return $this; + } + + /** + * WHERE clause (conditions to be used) + * + * @param string $where + * @param mixed $value Value or array of values to be inserted instead of ? + * @param string $op Operation to use to join where clauses (AND/OR) + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + */ + public function where($where, $value = null, $op = 'and') + { + if (!empty($value) && !is_array($value)) { + // fix buglet in Azure - numeric values are quoted unless passed as an array + $value = array($value); + } + $this->_azureSelect->where($where, $value, $op); + return $this; + } + + /** + * WHERE clause for item ID + * + * This one should be used when fetching specific rows since some adapters + * have special syntax for primary keys + * + * @param array $value Row ID for the document (PartitionKey, RowKey) + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + */ + public function whereId($value) + { + if (!is_array($value)) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception('Invalid document key'); + } + $this->_azureSelect->wherePartitionKey($value[0])->whereRowKey($value[1]); + return $this; + } + + /** + * LIMIT clause (how many rows to return) + * + * @param int $limit + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + */ + public function limit($limit) + { + $this->_azureSelect->top($limit); + return $this; + } + + /** + * ORDER BY clause (sorting) + * + * @todo Azure service doesn't seem to support this yet; emulate? + * @param string $sort Column to sort by + * @param string $direction Direction - asc/desc + * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query + * @throws Zend_Cloud_OperationNotAvailableException + */ + public function order($sort, $direction = 'asc') + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('No support for sorting for Azure yet'); + } + + /** + * Get Azure select query + * + * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery + */ + public function getAzureSelect() + { + return $this->_azureSelect; + } + + /** + * Assemble query + * + * Simply return the WindowsAzure table entity query object + * + * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery + */ + public function assemble() + { + return $this->getAzureSelect(); + } +} diff --git a/lib/Zend/Cloud/DocumentService/Document.php b/lib/Zend/Cloud/DocumentService/Document.php index 8ee32fa63727e..97e938e14ef1a 100644 --- a/lib/Zend/Cloud/DocumentService/Document.php +++ b/lib/Zend/Cloud/DocumentService/Document.php @@ -1,248 +1,248 @@ -_fields = $fields; - $this->setId($id); - } - - /** - * Set document identifier - * - * @param mixed $id - * @return Zend_Cloud_DocumentService_Document - */ - public function setId($id) - { - $this->_id = $id; - return $this; - } - - /** - * Get ID name. - * - * @return string - */ - public function getId() - { - return $this->_id; - } - - /** - * Get fields as array. - * - * @return array - */ - public function getFields() - { - return $this->_fields; - } - - /** - * Get field by name. - * - * @param string $name - * @return mixed - */ - public function getField($name) - { - if (isset($this->_fields[$name])) { - return $this->_fields[$name]; - } - return null; - } - - /** - * Set field by name. - * - * @param string $name - * @param mixed $value - * @return Zend_Cloud_DocumentService_Document - */ - public function setField($name, $value) - { - $this->_fields[$name] = $value; - return $this; - } - - /** - * Overloading: get value - * - * @param string $name - * @return mixed - */ - public function __get($name) - { - return $this->getField($name); - } - - /** - * Overloading: set field - * - * @param string $name - * @param mixed $value - * @return void - */ - public function __set($name, $value) - { - $this->setField($name, $value); - } - - /** - * ArrayAccess: does field exist? - * - * @param string $name - * @return bool - */ - public function offsetExists($name) - { - return isset($this->_fields[$name]); - } - - /** - * ArrayAccess: get field by name - * - * @param string $name - * @return mixed - */ - public function offsetGet($name) - { - return $this->getField($name); - } - - /** - * ArrayAccess: set field to value - * - * @param string $name - * @param mixed $value - * @return void - */ - public function offsetSet($name, $value) - { - $this->setField($name, $value); - } - - /** - * ArrayAccess: remove field from document - * - * @param string $name - * @return void - */ - public function offsetUnset($name) - { - if ($this->offsetExists($name)) { - unset($this->_fields[$name]); - } - } - - /** - * Overloading: retrieve and set fields by name - * - * @param string $name - * @param mixed $args - * @return mixed - */ - public function __call($name, $args) - { - $prefix = substr($name, 0, 3); - if ($prefix == 'get') { - // Get value - $option = substr($name, 3); - return $this->getField($option); - } elseif ($prefix == 'set') { - // set value - $option = substr($name, 3); - return $this->setField($option, $args[0]); - } - - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException("Unknown operation $name"); - } - - /** - * Countable: return count of fields in document - * - * @return int - */ - public function count() - { - return count($this->_fields); - } - - /** - * IteratorAggregate: return iterator for iterating over fields - * - * @return Iterator - */ - public function getIterator() - { - return new ArrayIterator($this->_fields); - } -} +_fields = $fields; + $this->setId($id); + } + + /** + * Set document identifier + * + * @param mixed $id + * @return Zend_Cloud_DocumentService_Document + */ + public function setId($id) + { + $this->_id = $id; + return $this; + } + + /** + * Get ID name. + * + * @return string + */ + public function getId() + { + return $this->_id; + } + + /** + * Get fields as array. + * + * @return array + */ + public function getFields() + { + return $this->_fields; + } + + /** + * Get field by name. + * + * @param string $name + * @return mixed + */ + public function getField($name) + { + if (isset($this->_fields[$name])) { + return $this->_fields[$name]; + } + return null; + } + + /** + * Set field by name. + * + * @param string $name + * @param mixed $value + * @return Zend_Cloud_DocumentService_Document + */ + public function setField($name, $value) + { + $this->_fields[$name] = $value; + return $this; + } + + /** + * Overloading: get value + * + * @param string $name + * @return mixed + */ + public function __get($name) + { + return $this->getField($name); + } + + /** + * Overloading: set field + * + * @param string $name + * @param mixed $value + * @return void + */ + public function __set($name, $value) + { + $this->setField($name, $value); + } + + /** + * ArrayAccess: does field exist? + * + * @param string $name + * @return bool + */ + public function offsetExists($name) + { + return isset($this->_fields[$name]); + } + + /** + * ArrayAccess: get field by name + * + * @param string $name + * @return mixed + */ + public function offsetGet($name) + { + return $this->getField($name); + } + + /** + * ArrayAccess: set field to value + * + * @param string $name + * @param mixed $value + * @return void + */ + public function offsetSet($name, $value) + { + $this->setField($name, $value); + } + + /** + * ArrayAccess: remove field from document + * + * @param string $name + * @return void + */ + public function offsetUnset($name) + { + if ($this->offsetExists($name)) { + unset($this->_fields[$name]); + } + } + + /** + * Overloading: retrieve and set fields by name + * + * @param string $name + * @param mixed $args + * @return mixed + */ + public function __call($name, $args) + { + $prefix = substr($name, 0, 3); + if ($prefix == 'get') { + // Get value + $option = substr($name, 3); + return $this->getField($option); + } elseif ($prefix == 'set') { + // set value + $option = substr($name, 3); + return $this->setField($option, $args[0]); + } + + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException("Unknown operation $name"); + } + + /** + * Countable: return count of fields in document + * + * @return int + */ + public function count() + { + return count($this->_fields); + } + + /** + * IteratorAggregate: return iterator for iterating over fields + * + * @return Iterator + */ + public function getIterator() + { + return new ArrayIterator($this->_fields); + } +} diff --git a/lib/Zend/Cloud/DocumentService/Exception.php b/lib/Zend/Cloud/DocumentService/Exception.php index 275d2494c55cf..a83a7987858d2 100644 --- a/lib/Zend/Cloud/DocumentService/Exception.php +++ b/lib/Zend/Cloud/DocumentService/Exception.php @@ -1,38 +1,38 @@ -foo('bar') - * but concrete adapters should be able to recognise it - * - * The call will be iterpreted as clause 'foo' with argument 'bar' - * - * @param string $name Clause/method name - * @param mixed $args - * @return Zend_Cloud_DocumentService_Query - */ - public function __call($name, $args) - { - $this->_clauses[] = array(strtolower($name), $args); - return $this; - } - - /** - * SELECT clause (fields to be selected) - * - * @param null|string|array $select - * @return Zend_Cloud_DocumentService_Query - */ - public function select($select) - { - if (empty($select)) { - return $this; - } - if (!is_string($select) && !is_array($select)) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("SELECT argument must be a string or an array of strings"); - } - $this->_clauses[] = array(self::QUERY_SELECT, $select); - return $this; - } - - /** - * FROM clause - * - * @param string $name Field names - * @return Zend_Cloud_DocumentService_Query - */ - public function from($name) - { - if(!is_string($name)) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("FROM argument must be a string"); - } - $this->_clauses[] = array(self::QUERY_FROM, $name); - return $this; - } - - /** - * WHERE query - * - * @param string $cond Condition - * @param array $args Arguments to substitute instead of ?'s in condition - * @param string $op relation to other clauses - and/or - * @return Zend_Cloud_DocumentService_Query - */ - public function where($cond, $value = null, $op = 'and') - { - if (!is_string($cond)) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("WHERE argument must be a string"); - } - $this->_clauses[] = array(self::QUERY_WHERE, array($cond, $value, $op)); - return $this; - } - - /** - * Select record or fields by ID - * - * @param string|int $value Identifier to select by - * @return Zend_Cloud_DocumentService_Query - */ - public function whereId($value) - { - if (!is_scalar($value)) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("WHEREID argument must be a scalar"); - } - $this->_clauses[] = array(self::QUERY_WHEREID, $value); - return $this; - } - - /** - * LIMIT clause (how many items to return) - * - * @param int $limit - * @return Zend_Cloud_DocumentService_Query - */ - public function limit($limit) - { - if ($limit != (int) $limit) { - #require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("LIMIT argument must be an integer"); - } - $this->_clauses[] = array(self::QUERY_LIMIT, $limit); - return $this; - } - - /** - * ORDER clause; field or fields to sort by, and direction to sort - * - * @param string|int|array $sort - * @param string $direction - * @return Zend_Cloud_DocumentService_Query - */ - public function order($sort, $direction = 'asc') - { - $this->_clauses[] = array(self::QUERY_ORDER, array($sort, $direction)); - return $this; - } - - /** - * "Assemble" the query - * - * Simply returns the clauses present. - * - * @return array - */ - public function assemble() - { - return $this->getClauses(); - } - - /** - * Return query clauses as an array - * - * @return array Clauses in the query - */ - public function getClauses() - { - return $this->_clauses; - } -} +foo('bar') + * but concrete adapters should be able to recognise it + * + * The call will be iterpreted as clause 'foo' with argument 'bar' + * + * @param string $name Clause/method name + * @param mixed $args + * @return Zend_Cloud_DocumentService_Query + */ + public function __call($name, $args) + { + $this->_clauses[] = array(strtolower($name), $args); + return $this; + } + + /** + * SELECT clause (fields to be selected) + * + * @param null|string|array $select + * @return Zend_Cloud_DocumentService_Query + */ + public function select($select) + { + if (empty($select)) { + return $this; + } + if (!is_string($select) && !is_array($select)) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception("SELECT argument must be a string or an array of strings"); + } + $this->_clauses[] = array(self::QUERY_SELECT, $select); + return $this; + } + + /** + * FROM clause + * + * @param string $name Field names + * @return Zend_Cloud_DocumentService_Query + */ + public function from($name) + { + if(!is_string($name)) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception("FROM argument must be a string"); + } + $this->_clauses[] = array(self::QUERY_FROM, $name); + return $this; + } + + /** + * WHERE query + * + * @param string $cond Condition + * @param array $args Arguments to substitute instead of ?'s in condition + * @param string $op relation to other clauses - and/or + * @return Zend_Cloud_DocumentService_Query + */ + public function where($cond, $value = null, $op = 'and') + { + if (!is_string($cond)) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception("WHERE argument must be a string"); + } + $this->_clauses[] = array(self::QUERY_WHERE, array($cond, $value, $op)); + return $this; + } + + /** + * Select record or fields by ID + * + * @param string|int $value Identifier to select by + * @return Zend_Cloud_DocumentService_Query + */ + public function whereId($value) + { + if (!is_scalar($value)) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception("WHEREID argument must be a scalar"); + } + $this->_clauses[] = array(self::QUERY_WHEREID, $value); + return $this; + } + + /** + * LIMIT clause (how many items to return) + * + * @param int $limit + * @return Zend_Cloud_DocumentService_Query + */ + public function limit($limit) + { + if ($limit != (int) $limit) { + #require_once 'Zend/Cloud/DocumentService/Exception.php'; + throw new Zend_Cloud_DocumentService_Exception("LIMIT argument must be an integer"); + } + $this->_clauses[] = array(self::QUERY_LIMIT, $limit); + return $this; + } + + /** + * ORDER clause; field or fields to sort by, and direction to sort + * + * @param string|int|array $sort + * @param string $direction + * @return Zend_Cloud_DocumentService_Query + */ + public function order($sort, $direction = 'asc') + { + $this->_clauses[] = array(self::QUERY_ORDER, array($sort, $direction)); + return $this; + } + + /** + * "Assemble" the query + * + * Simply returns the clauses present. + * + * @return array + */ + public function assemble() + { + return $this->getClauses(); + } + + /** + * Return query clauses as an array + * + * @return array Clauses in the query + */ + public function getClauses() + { + return $this->_clauses; + } +} diff --git a/lib/Zend/Cloud/DocumentService/QueryAdapter.php b/lib/Zend/Cloud/DocumentService/QueryAdapter.php index dcc443e597c6b..7baab907262e9 100644 --- a/lib/Zend/Cloud/DocumentService/QueryAdapter.php +++ b/lib/Zend/Cloud/DocumentService/QueryAdapter.php @@ -1,102 +1,102 @@ -_clientException = $clientException; - parent::__construct($message, $code, $clientException); - } - - public function getClientException() { - return $this->_getPrevious(); - } -} - +_clientException = $clientException; + parent::__construct($message, $code, $clientException); + } + + public function getClientException() { + return $this->_getPrevious(); + } +} + diff --git a/lib/Zend/Cloud/OperationNotAvailableException.php b/lib/Zend/Cloud/OperationNotAvailableException.php index 7be3df9f0ba70..1c8ff3ca1217e 100644 --- a/lib/Zend/Cloud/OperationNotAvailableException.php +++ b/lib/Zend/Cloud/OperationNotAvailableException.php @@ -1,34 +1,34 @@ -_body = $body; - $this->_clientMessage = $message; - } - - /** - * Get the message body - * @return string - */ - public function getBody() - { - return $this->_body; - } - - /** - * Get the original adapter-specific message - */ - public function getMessage() - { - return $this->_clientMessage; - } -} +_body = $body; + $this->_clientMessage = $message; + } + + /** + * Get the message body + * @return string + */ + public function getBody() + { + return $this->_body; + } + + /** + * Get the original adapter-specific message + */ + public function getMessage() + { + return $this->_clientMessage; + } +} diff --git a/lib/Zend/Cloud/StorageService/Adapter/FileSystem.php b/lib/Zend/Cloud/StorageService/Adapter/FileSystem.php index 8b559c71c6df1..5bcf657d7be71 100644 --- a/lib/Zend/Cloud/StorageService/Adapter/FileSystem.php +++ b/lib/Zend/Cloud/StorageService/Adapter/FileSystem.php @@ -1,267 +1,267 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - if (isset($options[self::LOCAL_DIRECTORY])) { - $this->_directory = $options[self::LOCAL_DIRECTORY]; - } else { - $this->_directory = realpath(sys_get_temp_dir()); - } - } - - /** - * Get an item from the storage service. - * - * TODO: Support streaming - * - * @param string $path - * @param array $options - * @return false|string - */ - public function fetchItem($path, $options = array()) - { - $filepath = $this->_getFullPath($path); - $path = realpath($filepath); - - if (!$path) { - return false; - } - - return file_get_contents($path); - } - - /** - * Store an item in the storage service. - * - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * - * @TODO Support streams - * - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = array()) - { - $path = $this->_getFullPath($destinationPath); - file_put_contents($path, $data); - chmod($path, 0777); - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = array()) - { - if (!isset($path)) { - return; - } - - $filepath = $this->_getFullPath($path); - if (file_exists($filepath)) { - unlink($filepath); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = array()) - { - copy($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); - } - - /** - * Move an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support moving an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = array()) - { - rename($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - rename( - $this->_getFullPath($path), - dirname($this->_getFullPath($path)) . DIRECTORY_SEPARATOR . $name - ); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - $listing = scandir($this->_getFullPath($path)); - - // Remove the hidden navigation directories - $listing = array_diff($listing, array('.', '..')); - - return $listing; - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = array()) - { - $fullPath = $this->_getFullPath($path); - $metadata = null; - if (file_exists($fullPath)) { - $metadata = stat(realpath($fullPath)); - } - - return isset($metadata) ? $metadata : false; - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = array()) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Storing metadata not implemented'); - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not implemented'); - } - - /** - * Return the full path for the file. - * - * @param string $path - * @return string - */ - private function _getFullPath($path) - { - return $this->_directory . DIRECTORY_SEPARATOR . $path; - } - - /** - * Get the concrete client. - * @return strings - */ - public function getClient() - { - return $this->_directory; - } -} +toArray(); + } + + if (!is_array($options)) { + throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); + } + + if (isset($options[self::LOCAL_DIRECTORY])) { + $this->_directory = $options[self::LOCAL_DIRECTORY]; + } else { + $this->_directory = realpath(sys_get_temp_dir()); + } + } + + /** + * Get an item from the storage service. + * + * TODO: Support streaming + * + * @param string $path + * @param array $options + * @return false|string + */ + public function fetchItem($path, $options = array()) + { + $filepath = $this->_getFullPath($path); + $path = realpath($filepath); + + if (!$path) { + return false; + } + + return file_get_contents($path); + } + + /** + * Store an item in the storage service. + * + * WARNING: This operation overwrites any item that is located at + * $destinationPath. + * + * @TODO Support streams + * + * @param string $destinationPath + * @param mixed $data + * @param array $options + * @return void + */ + public function storeItem($destinationPath, $data, $options = array()) + { + $path = $this->_getFullPath($destinationPath); + file_put_contents($path, $data); + chmod($path, 0777); + } + + /** + * Delete an item in the storage service. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteItem($path, $options = array()) + { + if (!isset($path)) { + return; + } + + $filepath = $this->_getFullPath($path); + if (file_exists($filepath)) { + unlink($filepath); + } + } + + /** + * Copy an item in the storage service to a given path. + * + * WARNING: This operation is *very* expensive for services that do not + * support copying an item natively. + * + * @TODO Support streams for those services that don't support natively + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function copyItem($sourcePath, $destinationPath, $options = array()) + { + copy($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); + } + + /** + * Move an item in the storage service to a given path. + * + * WARNING: This operation is *very* expensive for services that do not + * support moving an item natively. + * + * @TODO Support streams for those services that don't support natively + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function moveItem($sourcePath, $destinationPath, $options = array()) + { + rename($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); + } + + /** + * Rename an item in the storage service to a given name. + * + * + * @param string $path + * @param string $name + * @param array $options + * @return void + */ + public function renameItem($path, $name, $options = null) + { + rename( + $this->_getFullPath($path), + dirname($this->_getFullPath($path)) . DIRECTORY_SEPARATOR . $name + ); + } + + /** + * List items in the given directory in the storage service + * + * The $path must be a directory + * + * + * @param string $path Must be a directory + * @param array $options + * @return array A list of item names + */ + public function listItems($path, $options = null) + { + $listing = scandir($this->_getFullPath($path)); + + // Remove the hidden navigation directories + $listing = array_diff($listing, array('.', '..')); + + return $listing; + } + + /** + * Get a key/value array of metadata for the given path. + * + * @param string $path + * @param array $options + * @return array + */ + public function fetchMetadata($path, $options = array()) + { + $fullPath = $this->_getFullPath($path); + $metadata = null; + if (file_exists($fullPath)) { + $metadata = stat(realpath($fullPath)); + } + + return isset($metadata) ? $metadata : false; + } + + /** + * Store a key/value array of metadata at the given path. + * WARNING: This operation overwrites any metadata that is located at + * $destinationPath. + * + * @param string $destinationPath + * @param array $options + * @return void + */ + public function storeMetadata($destinationPath, $metadata, $options = array()) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Storing metadata not implemented'); + } + + /** + * Delete a key/value array of metadata at the given path. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteMetadata($path) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not implemented'); + } + + /** + * Return the full path for the file. + * + * @param string $path + * @return string + */ + private function _getFullPath($path) + { + return $this->_directory . DIRECTORY_SEPARATOR . $path; + } + + /** + * Get the concrete client. + * @return strings + */ + public function getClient() + { + return $this->_directory; + } +} diff --git a/lib/Zend/Cloud/StorageService/Adapter/Nirvanix.php b/lib/Zend/Cloud/StorageService/Adapter/Nirvanix.php index 6c56436cc433b..7909e9d07c675 100644 --- a/lib/Zend/Cloud/StorageService/Adapter/Nirvanix.php +++ b/lib/Zend/Cloud/StorageService/Adapter/Nirvanix.php @@ -1,399 +1,399 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - $auth = array( - 'username' => $options[self::USERNAME], - 'password' => $options[self::PASSWORD], - 'appKey' => $options[self::APP_KEY], - ); - $nirvanix_options = array(); - if (isset($options[self::HTTP_ADAPTER])) { - $httpc = new Zend_Http_Client(); - $httpc->setAdapter($options[self::HTTP_ADAPTER]); - $nirvanix_options['httpClient'] = $httpc; - } - try { - $this->_nirvanix = new Zend_Service_Nirvanix($auth, $nirvanix_options); - $this->_remoteDirectory = $options[self::REMOTE_DIRECTORY]; - $this->_imfNs = $this->_nirvanix->getService('IMFS'); - $this->_metadataNs = $this->_nirvanix->getService('Metadata'); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get an item from the storage service. - * - * @param string $path - * @param array $options - * @return mixed - */ - public function fetchItem($path, $options = null) - { - $path = $this->_getFullPath($path); - try { - $item = $this->_imfNs->getContents($path); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - return $item; - } - - /** - * Store an item in the storage service. - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = null) - { - try { - $path = $this->_getFullPath($destinationPath); - $this->_imfNs->putContents($path, $data); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = null) - { - try { - $path = $this->_getFullPath($path); - $this->_imfNs->unlink($path); - } catch(Zend_Service_Nirvanix_Exception $e) { -// if (trim(strtoupper($e->getMessage())) != 'INVALID PATH') { -// // TODO Differentiate among errors in the Nirvanix adapter - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = null) - { - try { - $sourcePath = $this->_getFullPath($sourcePath); - $destinationPath = $this->_getFullPath($destinationPath); - $this->_imfNs->CopyFiles(array('srcFilePath' => $sourcePath, - 'destFolderPath' => $destinationPath)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * WARNING: This operation is *very* expensive for services that do not - * support moving an item natively. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = null) - { - try { - $sourcePath = $this->_getFullPath($sourcePath); - $destinationPath = $this->_getFullPath($destinationPath); - $this->_imfNs->RenameFile(array('filePath' => $sourcePath, - 'newFileName' => $destinationPath)); - // $this->_imfNs->MoveFiles(array('srcFilePath' => $sourcePath, - // 'destFolderPath' => $destinationPath)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Renaming not implemented'); - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array An associative array of key/value pairs specifying the metadata for this object. - * If no metadata exists, an empty array is returned. - */ - public function fetchMetadata($path, $options = null) - { - $path = $this->_getFullPath($path); - try { - $metadataNode = $this->_metadataNs->getMetadata(array('path' => $path)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetching metadata: '.$e->getMessage(), $e->getCode(), $e); - } - - $metadata = array(); - $length = count($metadataNode->Metadata); - - // Need to special case this as Nirvanix returns an array if there is - // more than one, but doesn't return an array if there is only one. - if ($length == 1) - { - $metadata[(string)$metadataNode->Metadata->Type->value] = (string)$metadataNode->Metadata->Value; - } - else if ($length > 1) - { - for ($i=0; $i<$length; $i++) - { - $metadata[(string)$metadataNode->Metadata[$i]->Type] = (string)$metadataNode->Metadata[$i]->Value; - } - } - return $metadata; - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param array $metadata - An associative array specifying the key/value pairs for the metadata. - * @param $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = null) - { - $destinationPath = $this->_getFullPath($destinationPath); - if ($metadata != null) { - try { - foreach ($metadata AS $key=>$value) { - $metadataString = $key . ":" . $value; - $this->_metadataNs->SetMetadata(array( - 'path' => $destinationPath, - 'metadata' => $metadataString, - )); - } - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on storing metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $metadata - An associative array specifying the key/value pairs for the metadata - * to be deleted. If null, all metadata associated with the object will - * be deleted. - * @param array $options - * @return void - */ - public function deleteMetadata($path, $metadata = null, $options = null) - { - $path = $this->_getFullPath($path); - try { - if ($metadata == null) { - $this->_metadataNs->DeleteAllMetadata(array('path' => $path)); - } else { - foreach ($metadata AS $key=>$value) { - $this->_metadataNs->DeleteMetadata(array( - 'path' => $path, - 'metadata' => $key, - )); - } - } - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on deleting metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /* - * Recursively traverse all the folders and build an array that contains - * the path names for each folder. - * - * @param $path - The folder path to get the list of folders from. - * @param &$resultArray - reference to the array that contains the path names - * for each folder. - */ - private function getAllFolders($path, &$resultArray) - { - $response = $this->_imfNs->ListFolder(array( - 'folderPath' => $path, - 'pageNumber' => 1, - 'pageSize' => $this->maxPageSize, - )); - $numFolders = $response->ListFolder->TotalFolderCount; - if ($numFolders == 0) { - return; - } else { - //Need to special case this as Nirvanix returns an array if there is - //more than one, but doesn't return an array if there is only one. - if ($numFolders == 1) { - $folderPath = $response->ListFolder->Folder->Path; - array_push($resultArray, $folderPath); - $this->getAllFolders('/' . $folderPath, $resultArray); - } else { - foreach ($response->ListFolder->Folder as $arrayElem) { - $folderPath = $arrayElem->Path; - array_push($resultArray, $folderPath); - $this->getAllFolders('/' . $folderPath, $resultArray); - } - } - } - } - - /** - * Return an array of the items contained in the given path. The items - * returned are the files or objects that in the specified path. - * - * @param string $path - * @param array $options - * @return array - */ - public function listItems($path, $options = null) - { - $path = $this->_getFullPath($path); - $resultArray = array(); - - if (!isset($path)) { - return false; - } else { - try { - $response = $this->_imfNs->ListFolder(array( - 'folderPath' => $path, - 'pageNumber' => 1, - 'pageSize' => $this->maxPageSize, - )); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - - $numFiles = $response->ListFolder->TotalFileCount; - - //Add the file names to the array - if ($numFiles != 0) { - //Need to special case this as Nirvanix returns an array if there is - //more than one, but doesn't return an array if there is only one. - if ($numFiles == 1) { - $resultArray[] = (string)$response->ListFolder->File->Name; - } - else { - foreach ($response->ListFolder->File as $arrayElem) { - $resultArray[] = (string) $arrayElem->Name; - } - } - } - } - - return $resultArray; - } - - /** - * Get full path to an object - * - * @param string $path - * @return string - */ - private function _getFullPath($path) - { - return $this->_remoteDirectory . $path; - } - - /** - * Get the concrete client. - * @return Zend_Service_Nirvanix - */ - public function getClient() - { - return $this->_nirvanix; - } -} +toArray(); + } + + if (!is_array($options)) { + throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); + } + + $auth = array( + 'username' => $options[self::USERNAME], + 'password' => $options[self::PASSWORD], + 'appKey' => $options[self::APP_KEY], + ); + $nirvanix_options = array(); + if (isset($options[self::HTTP_ADAPTER])) { + $httpc = new Zend_Http_Client(); + $httpc->setAdapter($options[self::HTTP_ADAPTER]); + $nirvanix_options['httpClient'] = $httpc; + } + try { + $this->_nirvanix = new Zend_Service_Nirvanix($auth, $nirvanix_options); + $this->_remoteDirectory = $options[self::REMOTE_DIRECTORY]; + $this->_imfNs = $this->_nirvanix->getService('IMFS'); + $this->_metadataNs = $this->_nirvanix->getService('Metadata'); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Get an item from the storage service. + * + * @param string $path + * @param array $options + * @return mixed + */ + public function fetchItem($path, $options = null) + { + $path = $this->_getFullPath($path); + try { + $item = $this->_imfNs->getContents($path); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); + } + return $item; + } + + /** + * Store an item in the storage service. + * WARNING: This operation overwrites any item that is located at + * $destinationPath. + * @param string $destinationPath + * @param mixed $data + * @param array $options + * @return void + */ + public function storeItem($destinationPath, $data, $options = null) + { + try { + $path = $this->_getFullPath($destinationPath); + $this->_imfNs->putContents($path, $data); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); + } + return true; + } + + /** + * Delete an item in the storage service. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteItem($path, $options = null) + { + try { + $path = $this->_getFullPath($path); + $this->_imfNs->unlink($path); + } catch(Zend_Service_Nirvanix_Exception $e) { +// if (trim(strtoupper($e->getMessage())) != 'INVALID PATH') { +// // TODO Differentiate among errors in the Nirvanix adapter + throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Copy an item in the storage service to a given path. + * WARNING: This operation is *very* expensive for services that do not + * support copying an item natively. + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function copyItem($sourcePath, $destinationPath, $options = null) + { + try { + $sourcePath = $this->_getFullPath($sourcePath); + $destinationPath = $this->_getFullPath($destinationPath); + $this->_imfNs->CopyFiles(array('srcFilePath' => $sourcePath, + 'destFolderPath' => $destinationPath)); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Move an item in the storage service to a given path. + * WARNING: This operation is *very* expensive for services that do not + * support moving an item natively. + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function moveItem($sourcePath, $destinationPath, $options = null) + { + try { + $sourcePath = $this->_getFullPath($sourcePath); + $destinationPath = $this->_getFullPath($destinationPath); + $this->_imfNs->RenameFile(array('filePath' => $sourcePath, + 'newFileName' => $destinationPath)); + // $this->_imfNs->MoveFiles(array('srcFilePath' => $sourcePath, + // 'destFolderPath' => $destinationPath)); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Rename an item in the storage service to a given name. + * + * + * @param string $path + * @param string $name + * @param array $options + * @return void + */ + public function renameItem($path, $name, $options = null) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Renaming not implemented'); + } + + /** + * Get a key/value array of metadata for the given path. + * + * @param string $path + * @param array $options + * @return array An associative array of key/value pairs specifying the metadata for this object. + * If no metadata exists, an empty array is returned. + */ + public function fetchMetadata($path, $options = null) + { + $path = $this->_getFullPath($path); + try { + $metadataNode = $this->_metadataNs->getMetadata(array('path' => $path)); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on fetching metadata: '.$e->getMessage(), $e->getCode(), $e); + } + + $metadata = array(); + $length = count($metadataNode->Metadata); + + // Need to special case this as Nirvanix returns an array if there is + // more than one, but doesn't return an array if there is only one. + if ($length == 1) + { + $metadata[(string)$metadataNode->Metadata->Type->value] = (string)$metadataNode->Metadata->Value; + } + else if ($length > 1) + { + for ($i=0; $i<$length; $i++) + { + $metadata[(string)$metadataNode->Metadata[$i]->Type] = (string)$metadataNode->Metadata[$i]->Value; + } + } + return $metadata; + } + + /** + * Store a key/value array of metadata at the given path. + * WARNING: This operation overwrites any metadata that is located at + * $destinationPath. + * + * @param array $metadata - An associative array specifying the key/value pairs for the metadata. + * @param $destinationPath + * @param array $options + * @return void + */ + public function storeMetadata($destinationPath, $metadata, $options = null) + { + $destinationPath = $this->_getFullPath($destinationPath); + if ($metadata != null) { + try { + foreach ($metadata AS $key=>$value) { + $metadataString = $key . ":" . $value; + $this->_metadataNs->SetMetadata(array( + 'path' => $destinationPath, + 'metadata' => $metadataString, + )); + } + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on storing metadata: '.$e->getMessage(), $e->getCode(), $e); + } + } + } + + /** + * Delete a key/value array of metadata at the given path. + * + * @param string $path + * @param array $metadata - An associative array specifying the key/value pairs for the metadata + * to be deleted. If null, all metadata associated with the object will + * be deleted. + * @param array $options + * @return void + */ + public function deleteMetadata($path, $metadata = null, $options = null) + { + $path = $this->_getFullPath($path); + try { + if ($metadata == null) { + $this->_metadataNs->DeleteAllMetadata(array('path' => $path)); + } else { + foreach ($metadata AS $key=>$value) { + $this->_metadataNs->DeleteMetadata(array( + 'path' => $path, + 'metadata' => $key, + )); + } + } + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on deleting metadata: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /* + * Recursively traverse all the folders and build an array that contains + * the path names for each folder. + * + * @param $path - The folder path to get the list of folders from. + * @param &$resultArray - reference to the array that contains the path names + * for each folder. + */ + private function getAllFolders($path, &$resultArray) + { + $response = $this->_imfNs->ListFolder(array( + 'folderPath' => $path, + 'pageNumber' => 1, + 'pageSize' => $this->maxPageSize, + )); + $numFolders = $response->ListFolder->TotalFolderCount; + if ($numFolders == 0) { + return; + } else { + //Need to special case this as Nirvanix returns an array if there is + //more than one, but doesn't return an array if there is only one. + if ($numFolders == 1) { + $folderPath = $response->ListFolder->Folder->Path; + array_push($resultArray, $folderPath); + $this->getAllFolders('/' . $folderPath, $resultArray); + } else { + foreach ($response->ListFolder->Folder as $arrayElem) { + $folderPath = $arrayElem->Path; + array_push($resultArray, $folderPath); + $this->getAllFolders('/' . $folderPath, $resultArray); + } + } + } + } + + /** + * Return an array of the items contained in the given path. The items + * returned are the files or objects that in the specified path. + * + * @param string $path + * @param array $options + * @return array + */ + public function listItems($path, $options = null) + { + $path = $this->_getFullPath($path); + $resultArray = array(); + + if (!isset($path)) { + return false; + } else { + try { + $response = $this->_imfNs->ListFolder(array( + 'folderPath' => $path, + 'pageNumber' => 1, + 'pageSize' => $this->maxPageSize, + )); + } catch (Zend_Service_Nirvanix_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); + } + + $numFiles = $response->ListFolder->TotalFileCount; + + //Add the file names to the array + if ($numFiles != 0) { + //Need to special case this as Nirvanix returns an array if there is + //more than one, but doesn't return an array if there is only one. + if ($numFiles == 1) { + $resultArray[] = (string)$response->ListFolder->File->Name; + } + else { + foreach ($response->ListFolder->File as $arrayElem) { + $resultArray[] = (string) $arrayElem->Name; + } + } + } + } + + return $resultArray; + } + + /** + * Get full path to an object + * + * @param string $path + * @return string + */ + private function _getFullPath($path) + { + return $this->_remoteDirectory . $path; + } + + /** + * Get the concrete client. + * @return Zend_Service_Nirvanix + */ + public function getClient() + { + return $this->_nirvanix; + } +} diff --git a/lib/Zend/Cloud/StorageService/Adapter/S3.php b/lib/Zend/Cloud/StorageService/Adapter/S3.php index 99e7dac2dc333..2167bbae98917 100644 --- a/lib/Zend/Cloud/StorageService/Adapter/S3.php +++ b/lib/Zend/Cloud/StorageService/Adapter/S3.php @@ -1,327 +1,327 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - if (!isset($options[self::AWS_ACCESS_KEY]) || !isset($options[self::AWS_SECRET_KEY])) { - throw new Zend_Cloud_StorageService_Exception('AWS keys not specified!'); - } - - try { - $this->_s3 = new Zend_Service_Amazon_S3($options[self::AWS_ACCESS_KEY], - $options[self::AWS_SECRET_KEY]); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_s3->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - - if (isset($options[self::BUCKET_NAME])) { - $this->_defaultBucketName = $options[self::BUCKET_NAME]; - } - - if (isset($options[self::BUCKET_AS_DOMAIN])) { - $this->_defaultBucketAsDomain = $options[self::BUCKET_AS_DOMAIN]; - } - } - - /** - * Get an item from the storage service. - * - * @TODO Support streams - * - * @param string $path - * @param array $options - * @return string - */ - public function fetchItem($path, $options = array()) - { - $fullPath = $this->_getFullPath($path, $options); - try { - if (!empty($options[self::FETCH_STREAM])) { - return $this->_s3->getObjectStream($fullPath, $options[self::FETCH_STREAM]); - } else { - return $this->_s3->getObject($fullPath); - } - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store an item in the storage service. - * - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * - * @TODO Support streams - * - * @param string $destinationPath - * @param string|resource $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = array()) - { - try { - $fullPath = $this->_getFullPath($destinationPath, $options); - return $this->_s3->putObject( - $fullPath, - $data, - empty($options[self::METADATA]) ? null : $options[self::METADATA] - ); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = array()) - { - try { - $this->_s3->removeObject($this->_getFullPath($path, $options)); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = array()) - { - try { - // TODO We *really* need to add support for object copying in the S3 adapter - $item = $this->fetch($_getFullPath(sourcePath), $options); - $this->storeItem($item, $destinationPath, $options); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = array()) - { - try { - $fullSourcePath = $this->_getFullPath($sourcePath, $options); - $fullDestPath = $this->_getFullPath($destinationPath, $options); - return $this->_s3->moveObject( - $fullSourcePath, - $fullDestPath, - empty($options[self::METADATA]) ? null : $options[self::METADATA] - ); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Rename not implemented'); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - try { - // TODO Support 'prefix' parameter for Zend_Service_Amazon_S3::getObjectsByBucket() - return $this->_s3->getObjectsByBucket($this->_defaultBucketName); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = array()) - { - try { - return $this->_s3->getInfo($this->_getFullPath($path, $options)); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = array()) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Storing separate metadata is not supported, use storeItem() with \'metadata\' option key'); - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path) - { - #require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not supported'); - } - - /** - * Get full path, including bucket, for an object - * - * @param string $path - * @param array $options - * @return void - */ - protected function _getFullPath($path, $options) - { - if (isset($options[self::BUCKET_NAME])) { - $bucket = $options[self::BUCKET_NAME]; - } else if (isset($this->_defaultBucketName)) { - $bucket = $this->_defaultBucketName; - } else { - #require_once 'Zend/Cloud/StorageService/Exception.php'; - throw new Zend_Cloud_StorageService_Exception('Bucket name must be specified for S3 adapter.'); - } - - if (isset($options[self::BUCKET_AS_DOMAIN])) { - // TODO: support bucket domain names - #require_once 'Zend/Cloud/StorageService/Exception.php'; - throw new Zend_Cloud_StorageService_Exception('The S3 adapter does not currently support buckets in domain names.'); - } - - return trim($bucket) . '/' . trim($path); - } - - /** - * Get the concrete client. - * @return Zend_Service_Amazon_S3 - */ - public function getClient() - { - return $this->_s3; - } -} +toArray(); + } + + if (!is_array($options)) { + throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); + } + + if (!isset($options[self::AWS_ACCESS_KEY]) || !isset($options[self::AWS_SECRET_KEY])) { + throw new Zend_Cloud_StorageService_Exception('AWS keys not specified!'); + } + + try { + $this->_s3 = new Zend_Service_Amazon_S3($options[self::AWS_ACCESS_KEY], + $options[self::AWS_SECRET_KEY]); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); + } + + if (isset($options[self::HTTP_ADAPTER])) { + $this->_s3->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); + } + + if (isset($options[self::BUCKET_NAME])) { + $this->_defaultBucketName = $options[self::BUCKET_NAME]; + } + + if (isset($options[self::BUCKET_AS_DOMAIN])) { + $this->_defaultBucketAsDomain = $options[self::BUCKET_AS_DOMAIN]; + } + } + + /** + * Get an item from the storage service. + * + * @TODO Support streams + * + * @param string $path + * @param array $options + * @return string + */ + public function fetchItem($path, $options = array()) + { + $fullPath = $this->_getFullPath($path, $options); + try { + if (!empty($options[self::FETCH_STREAM])) { + return $this->_s3->getObjectStream($fullPath, $options[self::FETCH_STREAM]); + } else { + return $this->_s3->getObject($fullPath); + } + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Store an item in the storage service. + * + * WARNING: This operation overwrites any item that is located at + * $destinationPath. + * + * @TODO Support streams + * + * @param string $destinationPath + * @param string|resource $data + * @param array $options + * @return void + */ + public function storeItem($destinationPath, $data, $options = array()) + { + try { + $fullPath = $this->_getFullPath($destinationPath, $options); + return $this->_s3->putObject( + $fullPath, + $data, + empty($options[self::METADATA]) ? null : $options[self::METADATA] + ); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Delete an item in the storage service. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteItem($path, $options = array()) + { + try { + $this->_s3->removeObject($this->_getFullPath($path, $options)); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Copy an item in the storage service to a given path. + * + * WARNING: This operation is *very* expensive for services that do not + * support copying an item natively. + * + * @TODO Support streams for those services that don't support natively + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function copyItem($sourcePath, $destinationPath, $options = array()) + { + try { + // TODO We *really* need to add support for object copying in the S3 adapter + $item = $this->fetch($_getFullPath(sourcePath), $options); + $this->storeItem($item, $destinationPath, $options); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Move an item in the storage service to a given path. + * + * @TODO Support streams for those services that don't support natively + * + * @param string $sourcePath + * @param string $destination path + * @param array $options + * @return void + */ + public function moveItem($sourcePath, $destinationPath, $options = array()) + { + try { + $fullSourcePath = $this->_getFullPath($sourcePath, $options); + $fullDestPath = $this->_getFullPath($destinationPath, $options); + return $this->_s3->moveObject( + $fullSourcePath, + $fullDestPath, + empty($options[self::METADATA]) ? null : $options[self::METADATA] + ); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Rename an item in the storage service to a given name. + * + * + * @param string $path + * @param string $name + * @param array $options + * @return void + */ + public function renameItem($path, $name, $options = null) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Rename not implemented'); + } + + /** + * List items in the given directory in the storage service + * + * The $path must be a directory + * + * + * @param string $path Must be a directory + * @param array $options + * @return array A list of item names + */ + public function listItems($path, $options = null) + { + try { + // TODO Support 'prefix' parameter for Zend_Service_Amazon_S3::getObjectsByBucket() + return $this->_s3->getObjectsByBucket($this->_defaultBucketName); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Get a key/value array of metadata for the given path. + * + * @param string $path + * @param array $options + * @return array + */ + public function fetchMetadata($path, $options = array()) + { + try { + return $this->_s3->getInfo($this->_getFullPath($path, $options)); + } catch (Zend_Service_Amazon_S3_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Store a key/value array of metadata at the given path. + * WARNING: This operation overwrites any metadata that is located at + * $destinationPath. + * + * @param string $destinationPath + * @param array $options + * @return void + */ + public function storeMetadata($destinationPath, $metadata, $options = array()) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Storing separate metadata is not supported, use storeItem() with \'metadata\' option key'); + } + + /** + * Delete a key/value array of metadata at the given path. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteMetadata($path) + { + #require_once 'Zend/Cloud/OperationNotAvailableException.php'; + throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not supported'); + } + + /** + * Get full path, including bucket, for an object + * + * @param string $path + * @param array $options + * @return void + */ + protected function _getFullPath($path, $options) + { + if (isset($options[self::BUCKET_NAME])) { + $bucket = $options[self::BUCKET_NAME]; + } else if (isset($this->_defaultBucketName)) { + $bucket = $this->_defaultBucketName; + } else { + #require_once 'Zend/Cloud/StorageService/Exception.php'; + throw new Zend_Cloud_StorageService_Exception('Bucket name must be specified for S3 adapter.'); + } + + if (isset($options[self::BUCKET_AS_DOMAIN])) { + // TODO: support bucket domain names + #require_once 'Zend/Cloud/StorageService/Exception.php'; + throw new Zend_Cloud_StorageService_Exception('The S3 adapter does not currently support buckets in domain names.'); + } + + return trim($bucket) . '/' . trim($path); + } + + /** + * Get the concrete client. + * @return Zend_Service_Amazon_S3 + */ + public function getClient() + { + return $this->_s3; + } +} diff --git a/lib/Zend/Cloud/StorageService/Adapter/WindowsAzure.php b/lib/Zend/Cloud/StorageService/Adapter/WindowsAzure.php index 1c9c9372d646b..51cd880db2fe9 100644 --- a/lib/Zend/Cloud/StorageService/Adapter/WindowsAzure.php +++ b/lib/Zend/Cloud/StorageService/Adapter/WindowsAzure.php @@ -1,443 +1,443 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - // Build Zend_Service_WindowsAzure_Storage_Blob instance - if (!isset($options[self::HOST])) { - $host = self::DEFAULT_HOST; - } else { - $host = $options[self::HOST]; - } - - if (!isset($options[self::ACCOUNT_NAME])) { - throw new Zend_Cloud_StorageService_Exception('No Windows Azure account name provided.'); - } - if (!isset($options[self::ACCOUNT_KEY])) { - throw new Zend_Cloud_StorageService_Exception('No Windows Azure account key provided.'); - } - - $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Blob($host, - $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]); - - // Parse other options - if (!empty($options[self::PROXY_HOST])) { - $proxyHost = $options[self::PROXY_HOST]; - $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080; - $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : ''; - - $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_storageClient->setHttpClientChannel($options[self::HTTP_ADAPTER]); - } - - // Set container - $this->_container = $options[self::CONTAINER]; - - // Make sure the container exists - if (!$this->_storageClient->containerExists($this->_container)) { - $this->_storageClient->createContainer($this->_container); - } - } - - /** - * Get an item from the storage service. - * - * @param string $path - * @param array $options - * @return mixed - */ - public function fetchItem($path, $options = null) - { - // Options - $returnType = self::RETURN_STRING; - $returnPath = tempnam('', 'azr'); - $openMode = 'r'; - - // Parse options - if (is_array($options)) { - if (isset($options[self::RETURN_TYPE])) { - $returnType = $options[self::RETURN_TYPE]; - } - - if (isset($options[self::RETURN_PATHNAME])) { - $returnPath = $options[self::RETURN_PATHNAME]; - } - - if (isset($options[self::RETURN_OPENMODE])) { - $openMode = $options[self::RETURN_OPENMODE]; - } - } - - // Fetch the blob - try { - $this->_storageClient->getBlob( - $this->_container, - $path, - $returnPath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "does not exist") !== false) { - return false; - } - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - - // Return value - if ($returnType == self::RETURN_PATH) { - return $returnPath; - } - if ($returnType == self::RETURN_STRING) { - return file_get_contents($returnPath); - } - if ($returnType == self::RETURN_STREAM) { - return fopen($returnPath, $openMode); - } - } - - /** - * Store an item in the storage service. - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return boolean - */ - public function storeItem($destinationPath, $data, $options = null) - { - // Create a temporary file that will be uploaded - $temporaryFilePath = ''; - $removeTemporaryFilePath = false; - - if (is_resource($data)) { - $temporaryFilePath = tempnam('', 'azr'); - $fpDestination = fopen($temporaryFilePath, 'w'); - - $fpSource = $data; - rewind($fpSource); - while (!feof($fpSource)) { - fwrite($fpDestination, fread($fpSource, 8192)); - } - - fclose($fpDestination); - - $removeTemporaryFilePath = true; - } elseif (file_exists($data)) { - $temporaryFilePath = $data; - $removeTemporaryFilePath = false; - } else { - $temporaryFilePath = tempnam('', 'azr'); - file_put_contents($temporaryFilePath, $data); - $removeTemporaryFilePath = true; - } - - try { - // Upload data - $this->_storageClient->putBlob( - $this->_container, - $destinationPath, - $temporaryFilePath - ); - } catch(Zend_Service_WindowsAzure_Exception $e) { - @unlink($temporaryFilePath); - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - if ($removeTemporaryFilePath) { - @unlink($temporaryFilePath); - } - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = null) - { - try { - $this->_storageClient->deleteBlob( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * @param string $sourcePath - * @param string $destinationPath - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = null) - { - try { - $this->_storageClient->copyBlob( - $this->_container, - $sourcePath, - $this->_container, - $destinationPath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * - * @param string $sourcePath - * @param string $destinationPath - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = null) - { - try { - $this->_storageClient->copyBlob( - $this->_container, - $sourcePath, - $this->_container, - $destinationPath - ); - - $this->_storageClient->deleteBlob( - $this->_container, - $sourcePath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - return $this->moveItem($path, $name, $options); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - // Options - $returnType = self::RETURN_NAMES; // 1: return list of paths, 2: return raw output from underlying provider - - // Parse options - if (is_array($options)&& isset($options[self::RETURN_TYPE])) { - $returnType = $options[self::RETURN_TYPE]; - } - - try { - // Fetch list - $blobList = $this->_storageClient->listBlobs( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - - // Return - if ($returnType == self::RETURN_LIST) { - return $blobList; - } - - $returnValue = array(); - foreach ($blobList as $blob) { - $returnValue[] = $blob->Name; - } - - return $returnValue; - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = null) - { - try { - return $this->_storageClient->getBlobMetaData( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") !== false) { - return false; - } - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = null) - { - try { - $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, $metadata); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") === false) { - throw new Zend_Cloud_StorageService_Exception('Error on store metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path, $options = null) - { - try { - $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, array()); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") === false) { - throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete container - * - * @return void - */ - public function deleteContainer() - { - try { - $this->_storageClient->deleteContainer($this->_container); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get the concrete adapter. - * @return Zend_Service_Azure_Storage_Blob - */ - public function getClient() - { - return $this->_storageClient; - } -} +toArray(); + } + + if (!is_array($options)) { + throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); + } + + // Build Zend_Service_WindowsAzure_Storage_Blob instance + if (!isset($options[self::HOST])) { + $host = self::DEFAULT_HOST; + } else { + $host = $options[self::HOST]; + } + + if (!isset($options[self::ACCOUNT_NAME])) { + throw new Zend_Cloud_StorageService_Exception('No Windows Azure account name provided.'); + } + if (!isset($options[self::ACCOUNT_KEY])) { + throw new Zend_Cloud_StorageService_Exception('No Windows Azure account key provided.'); + } + + $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Blob($host, + $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]); + + // Parse other options + if (!empty($options[self::PROXY_HOST])) { + $proxyHost = $options[self::PROXY_HOST]; + $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080; + $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : ''; + + $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials); + } + + if (isset($options[self::HTTP_ADAPTER])) { + $this->_storageClient->setHttpClientChannel($options[self::HTTP_ADAPTER]); + } + + // Set container + $this->_container = $options[self::CONTAINER]; + + // Make sure the container exists + if (!$this->_storageClient->containerExists($this->_container)) { + $this->_storageClient->createContainer($this->_container); + } + } + + /** + * Get an item from the storage service. + * + * @param string $path + * @param array $options + * @return mixed + */ + public function fetchItem($path, $options = null) + { + // Options + $returnType = self::RETURN_STRING; + $returnPath = tempnam('', 'azr'); + $openMode = 'r'; + + // Parse options + if (is_array($options)) { + if (isset($options[self::RETURN_TYPE])) { + $returnType = $options[self::RETURN_TYPE]; + } + + if (isset($options[self::RETURN_PATHNAME])) { + $returnPath = $options[self::RETURN_PATHNAME]; + } + + if (isset($options[self::RETURN_OPENMODE])) { + $openMode = $options[self::RETURN_OPENMODE]; + } + } + + // Fetch the blob + try { + $this->_storageClient->getBlob( + $this->_container, + $path, + $returnPath + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + if (strpos($e->getMessage(), "does not exist") !== false) { + return false; + } + throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); + } + + // Return value + if ($returnType == self::RETURN_PATH) { + return $returnPath; + } + if ($returnType == self::RETURN_STRING) { + return file_get_contents($returnPath); + } + if ($returnType == self::RETURN_STREAM) { + return fopen($returnPath, $openMode); + } + } + + /** + * Store an item in the storage service. + * WARNING: This operation overwrites any item that is located at + * $destinationPath. + * @param string $destinationPath + * @param mixed $data + * @param array $options + * @return boolean + */ + public function storeItem($destinationPath, $data, $options = null) + { + // Create a temporary file that will be uploaded + $temporaryFilePath = ''; + $removeTemporaryFilePath = false; + + if (is_resource($data)) { + $temporaryFilePath = tempnam('', 'azr'); + $fpDestination = fopen($temporaryFilePath, 'w'); + + $fpSource = $data; + rewind($fpSource); + while (!feof($fpSource)) { + fwrite($fpDestination, fread($fpSource, 8192)); + } + + fclose($fpDestination); + + $removeTemporaryFilePath = true; + } elseif (file_exists($data)) { + $temporaryFilePath = $data; + $removeTemporaryFilePath = false; + } else { + $temporaryFilePath = tempnam('', 'azr'); + file_put_contents($temporaryFilePath, $data); + $removeTemporaryFilePath = true; + } + + try { + // Upload data + $this->_storageClient->putBlob( + $this->_container, + $destinationPath, + $temporaryFilePath + ); + } catch(Zend_Service_WindowsAzure_Exception $e) { + @unlink($temporaryFilePath); + throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); + } + if ($removeTemporaryFilePath) { + @unlink($temporaryFilePath); + } + } + + /** + * Delete an item in the storage service. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteItem($path, $options = null) + { + try { + $this->_storageClient->deleteBlob( + $this->_container, + $path + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Copy an item in the storage service to a given path. + * + * @param string $sourcePath + * @param string $destinationPath + * @param array $options + * @return void + */ + public function copyItem($sourcePath, $destinationPath, $options = null) + { + try { + $this->_storageClient->copyBlob( + $this->_container, + $sourcePath, + $this->_container, + $destinationPath + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Move an item in the storage service to a given path. + * + * @param string $sourcePath + * @param string $destinationPath + * @param array $options + * @return void + */ + public function moveItem($sourcePath, $destinationPath, $options = null) + { + try { + $this->_storageClient->copyBlob( + $this->_container, + $sourcePath, + $this->_container, + $destinationPath + ); + + $this->_storageClient->deleteBlob( + $this->_container, + $sourcePath + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); + } + + } + + /** + * Rename an item in the storage service to a given name. + * + * + * @param string $path + * @param string $name + * @param array $options + * @return void + */ + public function renameItem($path, $name, $options = null) + { + return $this->moveItem($path, $name, $options); + } + + /** + * List items in the given directory in the storage service + * + * The $path must be a directory + * + * + * @param string $path Must be a directory + * @param array $options + * @return array A list of item names + */ + public function listItems($path, $options = null) + { + // Options + $returnType = self::RETURN_NAMES; // 1: return list of paths, 2: return raw output from underlying provider + + // Parse options + if (is_array($options)&& isset($options[self::RETURN_TYPE])) { + $returnType = $options[self::RETURN_TYPE]; + } + + try { + // Fetch list + $blobList = $this->_storageClient->listBlobs( + $this->_container, + $path + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); + } + + // Return + if ($returnType == self::RETURN_LIST) { + return $blobList; + } + + $returnValue = array(); + foreach ($blobList as $blob) { + $returnValue[] = $blob->Name; + } + + return $returnValue; + } + + /** + * Get a key/value array of metadata for the given path. + * + * @param string $path + * @param array $options + * @return array + */ + public function fetchMetadata($path, $options = null) + { + try { + return $this->_storageClient->getBlobMetaData( + $this->_container, + $path + ); + } catch (Zend_Service_WindowsAzure_Exception $e) { + if (strpos($e->getMessage(), "could not be accessed") !== false) { + return false; + } + throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Store a key/value array of metadata at the given path. + * WARNING: This operation overwrites any metadata that is located at + * $destinationPath. + * + * @param string $destinationPath + * @param array $options + * @return void + */ + public function storeMetadata($destinationPath, $metadata, $options = null) + { + try { + $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, $metadata); + } catch (Zend_Service_WindowsAzure_Exception $e) { + if (strpos($e->getMessage(), "could not be accessed") === false) { + throw new Zend_Cloud_StorageService_Exception('Error on store metadata: '.$e->getMessage(), $e->getCode(), $e); + } + } + } + + /** + * Delete a key/value array of metadata at the given path. + * + * @param string $path + * @param array $options + * @return void + */ + public function deleteMetadata($path, $options = null) + { + try { + $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, array()); + } catch (Zend_Service_WindowsAzure_Exception $e) { + if (strpos($e->getMessage(), "could not be accessed") === false) { + throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage(), $e->getCode(), $e); + } + } + } + + /** + * Delete container + * + * @return void + */ + public function deleteContainer() + { + try { + $this->_storageClient->deleteContainer($this->_container); + } catch (Zend_Service_WindowsAzure_Exception $e) { + throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); + } + } + + /** + * Get the concrete adapter. + * @return Zend_Service_Azure_Storage_Blob + */ + public function getClient() + { + return $this->_storageClient; + } +} diff --git a/lib/Zend/Cloud/StorageService/Exception.php b/lib/Zend/Cloud/StorageService/Exception.php index 2b21561a0dde2..f8022865d02d0 100644 --- a/lib/Zend/Cloud/StorageService/Exception.php +++ b/lib/Zend/Cloud/StorageService/Exception.php @@ -1,38 +1,38 @@ -setFeature('is_wireless_device', false, 'product_info'); - - parent::_defineFeatures(); - - if (isset($this->_aFeatures["mobile_browser"])) { - $this->setFeature("browser_name", $this->_aFeatures["mobile_browser"]); - $this->_browser = $this->_aFeatures["mobile_browser"]; - } - if (isset($this->_aFeatures["mobile_browser_version"])) { - $this->setFeature("browser_version", $this->_aFeatures["mobile_browser_version"]); - $this->_browserVersion = $this->_aFeatures["mobile_browser_version"]; - } - - // markup - if ($this->getFeature('device_os') == 'iPhone OS' - || $this->getFeature('device_os_token') == 'iPhone OS' - ) { - $this->setFeature('markup', 'iphone'); - } else { - $this->setFeature('markup', $this->getMarkupLanguage($this->getFeature('preferred_markup'))); - } - - // image format - $this->_images = array(); - - if ($this->getFeature('png')) { - $this->_images[] = 'png'; - } - if ($this->getFeature('jpg')) { - $this->_images[] = 'jpg'; - } - if ($this->getFeature('gif')) { - $this->_images[] = 'gif'; - } - if ($this->getFeature('wbmp')) { - $this->_images[] = 'wbmp'; - } - - return $this->_aFeatures; - } - - /** - * Determine markup language expected - * - * @access public - * @return __TYPE__ - */ - public function getMarkupLanguage($preferredMarkup = null) - { - $return = ''; - switch ($preferredMarkup) { - case 'wml_1_1': - case 'wml_1_2': - case 'wml_1_3': - $return = 'wml'; //text/vnd.wap.wml encoding="ISO-8859-15" - case 'html_wi_imode_compact_generic': - case 'html_wi_imode_html_1': - case 'html_wi_imode_html_2': - case 'html_wi_imode_html_3': - case 'html_wi_imode_html_4': - case 'html_wi_imode_html_5': - $return = 'chtml'; //text/html - case 'html_wi_oma_xhtmlmp_1_0': //application/vnd.wap.xhtml+xml - case 'html_wi_w3_xhtmlbasic': //application/xhtml+xml DTD XHTML Basic 1.0 - $return = 'xhtml'; - case 'html_web_3_2': //text/html DTD Html 3.2 Final - case 'html_web_4_0': //text/html DTD Html 4.01 Transitional - $return = ''; - } - return $return; - } - - /** - * Determine image format support - * - * @return array - */ - public function getImageFormatSupport() - { - return $this->_images; - } - - /** - * Determine maximum image height supported - * - * @return int - */ - public function getMaxImageHeight() - { - return $this->getFeature('max_image_height'); - } - - /** - * Determine maximum image width supported - * - * @return int - */ - public function getMaxImageWidth() - { - return $this->getFeature('max_image_width'); - } - - /** - * Determine physical screen height - * - * @return int - */ - public function getPhysicalScreenHeight() - { - return $this->getFeature('physical_screen_height'); - } - - /** - * Determine physical screen width - * - * @return int - */ - public function getPhysicalScreenWidth() - { - return $this->getFeature('physical_screen_width'); - } - - /** - * Determine preferred markup - * - * @return string - */ - public function getPreferredMarkup() - { - return $this->getFeature("markup"); - } - - /** - * Determine X/HTML support level - * - * @return int - */ - public function getXhtmlSupportLevel() - { - return $this->getFeature('xhtml_support_level'); - } - - /** - * Does the device support Flash? - * - * @return bool - */ - public function hasFlashSupport() - { - return $this->getFeature('fl_browser'); - } - - /** - * Does the device support PDF? - * - * @return bool - */ - public function hasPdfSupport() - { - return $this->getFeature('pdf_support'); - } - - /** - * Does the device have an associated phone number? - * - * @return bool - */ - public function hasPhoneNumber() - { - return $this->getFeature('can_assign_phone_number'); - } - - /** - * Does the device support HTTPS? - * - * @return bool - */ - public function httpsSupport() - { - return ($this->getFeature('https_support') == 'supported'); - } -} +setFeature('is_wireless_device', false, 'product_info'); + + parent::_defineFeatures(); + + if (isset($this->_aFeatures["mobile_browser"])) { + $this->setFeature("browser_name", $this->_aFeatures["mobile_browser"]); + $this->_browser = $this->_aFeatures["mobile_browser"]; + } + if (isset($this->_aFeatures["mobile_browser_version"])) { + $this->setFeature("browser_version", $this->_aFeatures["mobile_browser_version"]); + $this->_browserVersion = $this->_aFeatures["mobile_browser_version"]; + } + + // markup + if ($this->getFeature('device_os') == 'iPhone OS' + || $this->getFeature('device_os_token') == 'iPhone OS' + ) { + $this->setFeature('markup', 'iphone'); + } else { + $this->setFeature('markup', $this->getMarkupLanguage($this->getFeature('preferred_markup'))); + } + + // image format + $this->_images = array(); + + if ($this->getFeature('png')) { + $this->_images[] = 'png'; + } + if ($this->getFeature('jpg')) { + $this->_images[] = 'jpg'; + } + if ($this->getFeature('gif')) { + $this->_images[] = 'gif'; + } + if ($this->getFeature('wbmp')) { + $this->_images[] = 'wbmp'; + } + + return $this->_aFeatures; + } + + /** + * Determine markup language expected + * + * @access public + * @return __TYPE__ + */ + public function getMarkupLanguage($preferredMarkup = null) + { + $return = ''; + switch ($preferredMarkup) { + case 'wml_1_1': + case 'wml_1_2': + case 'wml_1_3': + $return = 'wml'; //text/vnd.wap.wml encoding="ISO-8859-15" + case 'html_wi_imode_compact_generic': + case 'html_wi_imode_html_1': + case 'html_wi_imode_html_2': + case 'html_wi_imode_html_3': + case 'html_wi_imode_html_4': + case 'html_wi_imode_html_5': + $return = 'chtml'; //text/html + case 'html_wi_oma_xhtmlmp_1_0': //application/vnd.wap.xhtml+xml + case 'html_wi_w3_xhtmlbasic': //application/xhtml+xml DTD XHTML Basic 1.0 + $return = 'xhtml'; + case 'html_web_3_2': //text/html DTD Html 3.2 Final + case 'html_web_4_0': //text/html DTD Html 4.01 Transitional + $return = ''; + } + return $return; + } + + /** + * Determine image format support + * + * @return array + */ + public function getImageFormatSupport() + { + return $this->_images; + } + + /** + * Determine maximum image height supported + * + * @return int + */ + public function getMaxImageHeight() + { + return $this->getFeature('max_image_height'); + } + + /** + * Determine maximum image width supported + * + * @return int + */ + public function getMaxImageWidth() + { + return $this->getFeature('max_image_width'); + } + + /** + * Determine physical screen height + * + * @return int + */ + public function getPhysicalScreenHeight() + { + return $this->getFeature('physical_screen_height'); + } + + /** + * Determine physical screen width + * + * @return int + */ + public function getPhysicalScreenWidth() + { + return $this->getFeature('physical_screen_width'); + } + + /** + * Determine preferred markup + * + * @return string + */ + public function getPreferredMarkup() + { + return $this->getFeature("markup"); + } + + /** + * Determine X/HTML support level + * + * @return int + */ + public function getXhtmlSupportLevel() + { + return $this->getFeature('xhtml_support_level'); + } + + /** + * Does the device support Flash? + * + * @return bool + */ + public function hasFlashSupport() + { + return $this->getFeature('fl_browser'); + } + + /** + * Does the device support PDF? + * + * @return bool + */ + public function hasPdfSupport() + { + return $this->getFeature('pdf_support'); + } + + /** + * Does the device have an associated phone number? + * + * @return bool + */ + public function hasPhoneNumber() + { + return $this->getFeature('can_assign_phone_number'); + } + + /** + * Does the device support HTTPS? + * + * @return bool + */ + public function httpsSupport() + { + return ($this->getFeature('https_support') == 'supported'); + } +} diff --git a/lib/Zend/Queue/Adapter/Db/postgresql.sql b/lib/Zend/Queue/Adapter/Db/postgresql.sql index 333790f3a172a..eeccea5942fdb 100644 --- a/lib/Zend/Queue/Adapter/Db/postgresql.sql +++ b/lib/Zend/Queue/Adapter/Db/postgresql.sql @@ -1,49 +1,49 @@ -/* -Sample grant for PostgreSQL - -CREATE ROLE queue LOGIN - PASSWORD '[CHANGE ME]' - NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE; - -*/ - --- --- Table structure for table `queue` --- - -DROP TABLE IF EXISTS queue; - -CREATE TABLE queue -( - queue_id serial NOT NULL, - queue_name character varying(100) NOT NULL, - timeout smallint NOT NULL DEFAULT 30, - CONSTRAINT queue_pk PRIMARY KEY (queue_id) -) -WITH (OIDS=FALSE); -ALTER TABLE queue OWNER TO queue; - - --- -------------------------------------------------------- --- --- Table structure for table `message` --- - -DROP TABLE IF EXISTS message; - -CREATE TABLE message -( - message_id bigserial NOT NULL, - queue_id integer, - handle character(32), - body character varying(8192) NOT NULL, - md5 character(32) NOT NULL, - timeout real, - created integer, - CONSTRAINT message_pk PRIMARY KEY (message_id), - CONSTRAINT message_ibfk_1 FOREIGN KEY (queue_id) - REFERENCES queue (queue_id) MATCH SIMPLE - ON UPDATE CASCADE ON DELETE CASCADE -) -WITH (OIDS=FALSE); +/* +Sample grant for PostgreSQL + +CREATE ROLE queue LOGIN + PASSWORD '[CHANGE ME]' + NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE; + +*/ + +-- +-- Table structure for table `queue` +-- + +DROP TABLE IF EXISTS queue; + +CREATE TABLE queue +( + queue_id serial NOT NULL, + queue_name character varying(100) NOT NULL, + timeout smallint NOT NULL DEFAULT 30, + CONSTRAINT queue_pk PRIMARY KEY (queue_id) +) +WITH (OIDS=FALSE); +ALTER TABLE queue OWNER TO queue; + + +-- -------------------------------------------------------- +-- +-- Table structure for table `message` +-- + +DROP TABLE IF EXISTS message; + +CREATE TABLE message +( + message_id bigserial NOT NULL, + queue_id integer, + handle character(32), + body character varying(8192) NOT NULL, + md5 character(32) NOT NULL, + timeout real, + created integer, + CONSTRAINT message_pk PRIMARY KEY (message_id), + CONSTRAINT message_ibfk_1 FOREIGN KEY (queue_id) + REFERENCES queue (queue_id) MATCH SIMPLE + ON UPDATE CASCADE ON DELETE CASCADE +) +WITH (OIDS=FALSE); ALTER TABLE message OWNER TO queue; \ No newline at end of file diff --git a/lib/Zend/Queue/Adapter/Db/sqlsrv.sql b/lib/Zend/Queue/Adapter/Db/sqlsrv.sql index 240308c7e635a..8753d541cf838 100644 --- a/lib/Zend/Queue/Adapter/Db/sqlsrv.sql +++ b/lib/Zend/Queue/Adapter/Db/sqlsrv.sql @@ -1,44 +1,44 @@ - -CREATE TABLE [dbo].[queue]( - [queue_id] [int] IDENTITY(1,1) NOT NULL, - [queue_name] [varchar](100) NOT NULL, - [timeout] [int] NOT NULL, - CONSTRAINT [PK_queue] PRIMARY KEY CLUSTERED -( - [queue_id] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] -) ON [PRIMARY] - -GO - -ALTER TABLE [dbo].[queue] ADD DEFAULT ((30)) FOR [timeout] -GO - - -CREATE TABLE [dbo].[message]( - [message_id] [bigint] IDENTITY(1,1) NOT NULL, - [queue_id] [int] NOT NULL, - [handle] [char](32) NULL, - [body] [varchar](max) NOT NULL, - [md5] [char](32) NOT NULL, - [timeout] [decimal](14, 4) NULL, - [created] [int] NOT NULL, - CONSTRAINT [PK_message] PRIMARY KEY CLUSTERED -( - [message_id] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] -) ON [PRIMARY] - -GO - -ALTER TABLE [dbo].[message] WITH CHECK ADD CONSTRAINT [fk_message_queue_id] FOREIGN KEY([queue_id]) -REFERENCES [dbo].[queue] ([queue_id]) -GO - -ALTER TABLE [dbo].[message] CHECK CONSTRAINT [fk_message_queue_id] -GO - - - - - + +CREATE TABLE [dbo].[queue]( + [queue_id] [int] IDENTITY(1,1) NOT NULL, + [queue_name] [varchar](100) NOT NULL, + [timeout] [int] NOT NULL, + CONSTRAINT [PK_queue] PRIMARY KEY CLUSTERED +( + [queue_id] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] + +GO + +ALTER TABLE [dbo].[queue] ADD DEFAULT ((30)) FOR [timeout] +GO + + +CREATE TABLE [dbo].[message]( + [message_id] [bigint] IDENTITY(1,1) NOT NULL, + [queue_id] [int] NOT NULL, + [handle] [char](32) NULL, + [body] [varchar](max) NOT NULL, + [md5] [char](32) NOT NULL, + [timeout] [decimal](14, 4) NULL, + [created] [int] NOT NULL, + CONSTRAINT [PK_message] PRIMARY KEY CLUSTERED +( + [message_id] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +) ON [PRIMARY] + +GO + +ALTER TABLE [dbo].[message] WITH CHECK ADD CONSTRAINT [fk_message_queue_id] FOREIGN KEY([queue_id]) +REFERENCES [dbo].[queue] ([queue_id]) +GO + +ALTER TABLE [dbo].[message] CHECK CONSTRAINT [fk_message_queue_id] +GO + + + + + diff --git a/lib/Zend/Service/Amazon/SimpleDb/Page.php b/lib/Zend/Service/Amazon/SimpleDb/Page.php index 7895fbb410e91..8e2527a058677 100644 --- a/lib/Zend/Service/Amazon/SimpleDb/Page.php +++ b/lib/Zend/Service/Amazon/SimpleDb/Page.php @@ -1,97 +1,97 @@ -_data = $data; - $this->_token = $token; - } - - /** - * Retrieve page data - * - * @return string - */ - public function getData() - { - return $this->_data; - } - - /** - * Retrieve token - * - * @return string|null - */ - public function getToken() - { - return $this->_token; - } - - /** - * Determine whether this is the last page of data - * - * @return void - */ - public function isLast() - { - return (null === $this->_token); - } - - /** - * Cast to string - * - * @return string - */ - public function __toString() - { - return "Page with token: " . $this->_token - . "\n and data: " . $this->_data; - } -} +_data = $data; + $this->_token = $token; + } + + /** + * Retrieve page data + * + * @return string + */ + public function getData() + { + return $this->_data; + } + + /** + * Retrieve token + * + * @return string|null + */ + public function getToken() + { + return $this->_token; + } + + /** + * Determine whether this is the last page of data + * + * @return void + */ + public function isLast() + { + return (null === $this->_token); + } + + /** + * Cast to string + * + * @return string + */ + public function __toString() + { + return "Page with token: " . $this->_token + . "\n and data: " . $this->_data; + } +} diff --git a/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.wsdl b/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.wsdl index e630ea3d32d0c..c20b49238dc38 100644 --- a/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.wsdl +++ b/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.wsdl @@ -1,104 +1,104 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.xsd b/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.xsd index e263b21992b76..a2a8901ce8652 100644 --- a/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.xsd +++ b/lib/Zend/Service/DeveloperGarden/Wsdl/ODGBaseUserService.xsd @@ -1,72 +1,72 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.wsdl b/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.wsdl index aad614e317e73..c17a50ffd8abc 100644 --- a/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.wsdl +++ b/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.wsdl @@ -1,164 +1,164 @@ - - VoiceButlerService - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + VoiceButlerService + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.xsd b/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.xsd index e14ba5a48a55d..ef724672dd96f 100644 --- a/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.xsd +++ b/lib/Zend/Service/DeveloperGarden/Wsdl/VoiceButlerService.xsd @@ -1,264 +1,264 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/Zend/Service/DeveloperGarden/Wsdl/ccsPort.xsd b/lib/Zend/Service/DeveloperGarden/Wsdl/ccsPort.xsd index 149ba6910413c..d9c30670da03f 100644 --- a/lib/Zend/Service/DeveloperGarden/Wsdl/ccsPort.xsd +++ b/lib/Zend/Service/DeveloperGarden/Wsdl/ccsPort.xsd @@ -61,13 +61,13 @@ - - - - - - - + + + + + + + @@ -88,7 +88,7 @@ - + @@ -136,7 +136,7 @@ - + @@ -183,7 +183,7 @@ - + @@ -204,7 +204,7 @@ - + @@ -367,7 +367,7 @@ - + diff --git a/pub/lib/extjs/resources/images/default/grid/Thumbs.db b/pub/lib/extjs/resources/images/default/grid/Thumbs.db deleted file mode 100644 index 46df4e9df82a2..0000000000000 Binary files a/pub/lib/extjs/resources/images/default/grid/Thumbs.db and /dev/null differ diff --git a/pub/lib/globalize/cultures/globalize.culture.af-ZA.js b/pub/lib/globalize/cultures/globalize.culture.af-ZA.js index 9238e377c4984..0c22387aa2d6d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.af-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.af-ZA.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture af-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "af-ZA", "default", { - name: "af-ZA", - englishName: "Afrikaans (South Africa)", - nativeName: "Afrikaans (Suid Afrika)", - language: "af", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], - namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], - namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] - }, - months: { - names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture af-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "af-ZA", "default", { + name: "af-ZA", + englishName: "Afrikaans (South Africa)", + nativeName: "Afrikaans (Suid Afrika)", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.af.js b/pub/lib/globalize/cultures/globalize.culture.af.js index a21e18f18edaf..1873710ef8496 100644 --- a/pub/lib/globalize/cultures/globalize.culture.af.js +++ b/pub/lib/globalize/cultures/globalize.culture.af.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture af - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "af", "default", { - name: "af", - englishName: "Afrikaans", - nativeName: "Afrikaans", - language: "af", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], - namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], - namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] - }, - months: { - names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture af + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "af", "default", { + name: "af", + englishName: "Afrikaans", + nativeName: "Afrikaans", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.am-ET.js b/pub/lib/globalize/cultures/globalize.culture.am-ET.js index d73ff362f3c65..1462b53bedc8e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.am-ET.js +++ b/pub/lib/globalize/cultures/globalize.culture.am-ET.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture am-ET - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "am-ET", "default", { - name: "am-ET", - englishName: "Amharic (Ethiopia)", - nativeName: "አማርኛ (ኢትዮጵያ)", - language: "am", - numberFormat: { - decimals: 1, - groupSizes: [3,0], - "NaN": "NAN", - percent: { - pattern: ["-n%","n%"], - decimals: 1, - groupSizes: [3,0] - }, - currency: { - pattern: ["-$n","$n"], - groupSizes: [3,0], - symbol: "ETB" - } - }, - calendars: { - standard: { - days: { - names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] - }, - months: { - names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], - namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] - }, - AM: ["ጡዋት","ጡዋት","ጡዋት"], - PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], - eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd '፣' MMMM d 'ቀን' yyyy", - f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", - F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", - M: "MMMM d ቀን", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture am-ET + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "am-ET", "default", { + name: "am-ET", + englishName: "Amharic (Ethiopia)", + nativeName: "አማርኛ (ኢትዮጵያ)", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], + namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd '፣' MMMM d 'ቀን' yyyy", + f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.am.js b/pub/lib/globalize/cultures/globalize.culture.am.js index 15d8f585e61e1..b59e5aea84cd2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.am.js +++ b/pub/lib/globalize/cultures/globalize.culture.am.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture am - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "am", "default", { - name: "am", - englishName: "Amharic", - nativeName: "አማርኛ", - language: "am", - numberFormat: { - decimals: 1, - groupSizes: [3,0], - "NaN": "NAN", - percent: { - pattern: ["-n%","n%"], - decimals: 1, - groupSizes: [3,0] - }, - currency: { - pattern: ["-$n","$n"], - groupSizes: [3,0], - symbol: "ETB" - } - }, - calendars: { - standard: { - days: { - names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] - }, - months: { - names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], - namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] - }, - AM: ["ጡዋት","ጡዋት","ጡዋት"], - PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], - eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd '፣' MMMM d 'ቀን' yyyy", - f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", - F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", - M: "MMMM d ቀን", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture am + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "am", "default", { + name: "am", + englishName: "Amharic", + nativeName: "አማርኛ", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], + namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd '፣' MMMM d 'ቀን' yyyy", + f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-AE.js b/pub/lib/globalize/cultures/globalize.culture.ar-AE.js index ac25f382c230b..36672c3003138 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-AE.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-AE.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-AE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-AE", "default", { - name: "ar-AE", - englishName: "Arabic (U.A.E.)", - nativeName: "العربية (الإمارات العربية المتحدة)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.إ.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-AE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-AE", "default", { + name: "ar-AE", + englishName: "Arabic (U.A.E.)", + nativeName: "العربية (الإمارات العربية المتحدة)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.إ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-BH.js b/pub/lib/globalize/cultures/globalize.culture.ar-BH.js index a9bc8276266a7..170221c07b182 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-BH.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-BH.js @@ -1,462 +1,462 @@ -/** - * Globalize Culture ar-BH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-BH", "default", { - name: "ar-BH", - englishName: "Arabic (Bahrain)", - nativeName: "العربية (البحرين)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ب.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-BH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-BH", "default", { + name: "ar-BH", + englishName: "Arabic (Bahrain)", + nativeName: "العربية (البحرين)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ب.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-DZ.js b/pub/lib/globalize/cultures/globalize.culture.ar-DZ.js index 502a14d6405f3..e3ac4dbd19fa1 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-DZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-DZ.js @@ -1,458 +1,458 @@ -/** - * Globalize Culture ar-DZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-DZ", "default", { - name: "ar-DZ", - englishName: "Arabic (Algeria)", - nativeName: "العربية (الجزائر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.ج.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-DZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-DZ", "default", { + name: "ar-DZ", + englishName: "Arabic (Algeria)", + nativeName: "العربية (الجزائر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ج.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-EG.js b/pub/lib/globalize/cultures/globalize.culture.ar-EG.js index 03bf4702092a0..1740fb478e5b9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-EG.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-EG.js @@ -1,484 +1,484 @@ -/** - * Globalize Culture ar-EG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-EG", "default", { - name: "ar-EG", - englishName: "Arabic (Egypt)", - nativeName: "العربية (مصر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - symbol: "ج.م.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-EG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-EG", "default", { + name: "ar-EG", + englishName: "Arabic (Egypt)", + nativeName: "العربية (مصر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + symbol: "ج.م.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-IQ.js b/pub/lib/globalize/cultures/globalize.culture.ar-IQ.js index afbadeaf4c0bc..9adcfcfc305f8 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-IQ.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-IQ.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-IQ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-IQ", "default", { - name: "ar-IQ", - englishName: "Arabic (Iraq)", - nativeName: "العربية (العراق)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.ع.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-IQ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-IQ", "default", { + name: "ar-IQ", + englishName: "Arabic (Iraq)", + nativeName: "العربية (العراق)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-JO.js b/pub/lib/globalize/cultures/globalize.culture.ar-JO.js index 766f0ddae979a..19d0ad18f4ca9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-JO.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-JO.js @@ -1,462 +1,462 @@ -/** - * Globalize Culture ar-JO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-JO", "default", { - name: "ar-JO", - englishName: "Arabic (Jordan)", - nativeName: "العربية (الأردن)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ا.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-JO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-JO", "default", { + name: "ar-JO", + englishName: "Arabic (Jordan)", + nativeName: "العربية (الأردن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ا.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-KW.js b/pub/lib/globalize/cultures/globalize.culture.ar-KW.js index ad503dc3fdfbe..c130961bd9a2f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-KW.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-KW.js @@ -1,462 +1,462 @@ -/** - * Globalize Culture ar-KW - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-KW", "default", { - name: "ar-KW", - englishName: "Arabic (Kuwait)", - nativeName: "العربية (الكويت)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ك.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-KW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-KW", "default", { + name: "ar-KW", + englishName: "Arabic (Kuwait)", + nativeName: "العربية (الكويت)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ك.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-LB.js b/pub/lib/globalize/cultures/globalize.culture.ar-LB.js index 4940ae2e756b9..355744dfbcef3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-LB.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-LB.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-LB - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-LB", "default", { - name: "ar-LB", - englishName: "Arabic (Lebanon)", - nativeName: "العربية (لبنان)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.ل.\u200f" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-LB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-LB", "default", { + name: "ar-LB", + englishName: "Arabic (Lebanon)", + nativeName: "العربية (لبنان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.ل.\u200f" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-LY.js b/pub/lib/globalize/cultures/globalize.culture.ar-LY.js index a16831c474ca4..8f1ec6d4f141e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-LY.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-LY.js @@ -1,462 +1,462 @@ -/** - * Globalize Culture ar-LY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-LY", "default", { - name: "ar-LY", - englishName: "Arabic (Libya)", - nativeName: "العربية (ليبيا)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$n"], - decimals: 3, - symbol: "د.ل.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-LY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-LY", "default", { + name: "ar-LY", + englishName: "Arabic (Libya)", + nativeName: "العربية (ليبيا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$n"], + decimals: 3, + symbol: "د.ل.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-MA.js b/pub/lib/globalize/cultures/globalize.culture.ar-MA.js index 1e43ff64fc709..97dc12b792f19 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-MA.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-MA.js @@ -1,458 +1,458 @@ -/** - * Globalize Culture ar-MA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-MA", "default", { - name: "ar-MA", - englishName: "Arabic (Morocco)", - nativeName: "العربية (المملكة المغربية)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.م.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-MA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-MA", "default", { + name: "ar-MA", + englishName: "Arabic (Morocco)", + nativeName: "العربية (المملكة المغربية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.م.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-OM.js b/pub/lib/globalize/cultures/globalize.culture.ar-OM.js index 40cbf1ebbc63e..c86933474bdab 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-OM.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-OM.js @@ -1,458 +1,458 @@ -/** - * Globalize Culture ar-OM - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-OM", "default", { - name: "ar-OM", - englishName: "Arabic (Oman)", - nativeName: "العربية (عمان)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "ر.ع.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-OM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-OM", "default", { + name: "ar-OM", + englishName: "Arabic (Oman)", + nativeName: "العربية (عمان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "ر.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-QA.js b/pub/lib/globalize/cultures/globalize.culture.ar-QA.js index c6dd9484d5894..9faec054769e3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-QA.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-QA.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-QA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-QA", "default", { - name: "ar-QA", - englishName: "Arabic (Qatar)", - nativeName: "العربية (قطر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.ق.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-QA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-QA", "default", { + name: "ar-QA", + englishName: "Arabic (Qatar)", + nativeName: "العربية (قطر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ق.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-SA.js b/pub/lib/globalize/cultures/globalize.culture.ar-SA.js index 1c78d41fb7f7f..a417cbce5b8b7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-SA.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-SA.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-SA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-SA", "default", { - name: "ar-SA", - englishName: "Arabic (Saudi Arabia)", - nativeName: "العربية (المملكة العربية السعودية)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.س.\u200f" - } - }, - calendars: { - standard: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-SA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-SA", "default", { + name: "ar-SA", + englishName: "Arabic (Saudi Arabia)", + nativeName: "العربية (المملكة العربية السعودية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-SY.js b/pub/lib/globalize/cultures/globalize.culture.ar-SY.js index 374dc5789ee7a..5d21b38e85da4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-SY.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-SY.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-SY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-SY", "default", { - name: "ar-SY", - englishName: "Arabic (Syria)", - nativeName: "العربية (سوريا)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-SY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-SY", "default", { + name: "ar-SY", + englishName: "Arabic (Syria)", + nativeName: "العربية (سوريا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-TN.js b/pub/lib/globalize/cultures/globalize.culture.ar-TN.js index f4973b8204aed..4924b3ab0b808 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-TN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-TN.js @@ -1,463 +1,463 @@ -/** - * Globalize Culture ar-TN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-TN", "default", { - name: "ar-TN", - englishName: "Arabic (Tunisia)", - nativeName: "العربية (تونس)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ت.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-TN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-TN", "default", { + name: "ar-TN", + englishName: "Arabic (Tunisia)", + nativeName: "العربية (تونس)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ت.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar-YE.js b/pub/lib/globalize/cultures/globalize.culture.ar-YE.js index 90a08e52369d7..146ef66d5049e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar-YE.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar-YE.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar-YE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar-YE", "default", { - name: "ar-YE", - englishName: "Arabic (Yemen)", - nativeName: "العربية (اليمن)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.ي.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar-YE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-YE", "default", { + name: "ar-YE", + englishName: "Arabic (Yemen)", + nativeName: "العربية (اليمن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ي.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ar.js b/pub/lib/globalize/cultures/globalize.culture.ar.js index 3c73d5322bf04..e19b6dbfebe99 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ar.js +++ b/pub/lib/globalize/cultures/globalize.culture.ar.js @@ -1,457 +1,457 @@ -/** - * Globalize Culture ar - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar", "default", { - name: "ar", - englishName: "Arabic", - nativeName: "العربية", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.س.\u200f" - } - }, - calendars: { - standard: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ar + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar", "default", { + name: "ar", + englishName: "Arabic", + nativeName: "العربية", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.arn-CL.js b/pub/lib/globalize/cultures/globalize.culture.arn-CL.js index 06215c412e759..43c885e6bc86e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.arn-CL.js +++ b/pub/lib/globalize/cultures/globalize.culture.arn-CL.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture arn-CL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "arn-CL", "default", { - name: "arn-CL", - englishName: "Mapudungun (Chile)", - nativeName: "Mapudungun (Chile)", - language: "arn", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture arn-CL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "arn-CL", "default", { + name: "arn-CL", + englishName: "Mapudungun (Chile)", + nativeName: "Mapudungun (Chile)", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.arn.js b/pub/lib/globalize/cultures/globalize.culture.arn.js index 6d268b1c082ef..6f0d2ea8be055 100644 --- a/pub/lib/globalize/cultures/globalize.culture.arn.js +++ b/pub/lib/globalize/cultures/globalize.culture.arn.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture arn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "arn", "default", { - name: "arn", - englishName: "Mapudungun", - nativeName: "Mapudungun", - language: "arn", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture arn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "arn", "default", { + name: "arn", + englishName: "Mapudungun", + nativeName: "Mapudungun", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.as-IN.js b/pub/lib/globalize/cultures/globalize.culture.as-IN.js index 2411f60ab1097..7d81154c6d5ef 100644 --- a/pub/lib/globalize/cultures/globalize.culture.as-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.as-IN.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture as-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "as-IN", "default", { - name: "as-IN", - englishName: "Assamese (India)", - nativeName: "অসমীয়া (ভাৰত)", - language: "as", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","n$"], - groupSizes: [3,2], - symbol: "ট" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], - namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], - namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] - }, - months: { - names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], - namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] - }, - AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], - PM: ["আবেলি","আবেলি","আবেলি"], - eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "yyyy,MMMM dd, dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy,MMMM dd, dddd tt h:mm", - F: "yyyy,MMMM dd, dddd tt h:mm:ss", - M: "dd MMMM", - Y: "MMMM,yy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture as-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "as-IN", "default", { + name: "as-IN", + englishName: "Assamese (India)", + nativeName: "অসমীয়া (ভাৰত)", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], + namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] + }, + months: { + names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], + namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] + }, + AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.as.js b/pub/lib/globalize/cultures/globalize.culture.as.js index 20bfe636ba663..68f96baf646b9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.as.js +++ b/pub/lib/globalize/cultures/globalize.culture.as.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture as - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "as", "default", { - name: "as", - englishName: "Assamese", - nativeName: "অসমীয়া", - language: "as", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","n$"], - groupSizes: [3,2], - symbol: "ট" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], - namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], - namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] - }, - months: { - names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], - namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] - }, - AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], - PM: ["আবেলি","আবেলি","আবেলি"], - eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "yyyy,MMMM dd, dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy,MMMM dd, dddd tt h:mm", - F: "yyyy,MMMM dd, dddd tt h:mm:ss", - M: "dd MMMM", - Y: "MMMM,yy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture as + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "as", "default", { + name: "as", + englishName: "Assamese", + nativeName: "অসমীয়া", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], + namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] + }, + months: { + names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], + namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] + }, + AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.az-Cyrl-AZ.js b/pub/lib/globalize/cultures/globalize.culture.az-Cyrl-AZ.js index 012a56feca709..d1684ec11efec 100644 --- a/pub/lib/globalize/cultures/globalize.culture.az-Cyrl-AZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.az-Cyrl-AZ.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture az-Cyrl-AZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { - name: "az-Cyrl-AZ", - englishName: "Azeri (Cyrillic, Azerbaijan)", - nativeName: "Азәрбајҹан (Азәрбајҹан)", - language: "az-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "ман." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], - namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], - namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] - }, - months: { - names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture az-Cyrl-AZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { + name: "az-Cyrl-AZ", + englishName: "Azeri (Cyrillic, Azerbaijan)", + nativeName: "Азәрбајҹан (Азәрбајҹан)", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.az-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.az-Cyrl.js index 78210ef690aea..db99e7534a445 100644 --- a/pub/lib/globalize/cultures/globalize.culture.az-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.az-Cyrl.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture az-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "az-Cyrl", "default", { - name: "az-Cyrl", - englishName: "Azeri (Cyrillic)", - nativeName: "Азәрбајҹан дили", - language: "az-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "ман." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], - namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], - namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] - }, - months: { - names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture az-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Cyrl", "default", { + name: "az-Cyrl", + englishName: "Azeri (Cyrillic)", + nativeName: "Азәрбајҹан дили", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.az-Latn-AZ.js b/pub/lib/globalize/cultures/globalize.culture.az-Latn-AZ.js index a085458fc2060..44b954b29429f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.az-Latn-AZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.az-Latn-AZ.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture az-Latn-AZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "az-Latn-AZ", "default", { - name: "az-Latn-AZ", - englishName: "Azeri (Latin, Azerbaijan)", - nativeName: "Azərbaycan\xadılı (Azərbaycan)", - language: "az-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture az-Latn-AZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Latn-AZ", "default", { + name: "az-Latn-AZ", + englishName: "Azeri (Latin, Azerbaijan)", + nativeName: "Azərbaycan\xadılı (Azərbaycan)", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.az-Latn.js b/pub/lib/globalize/cultures/globalize.culture.az-Latn.js index a4f54053c8347..66789a8f24d2c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.az-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.az-Latn.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture az-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "az-Latn", "default", { - name: "az-Latn", - englishName: "Azeri (Latin)", - nativeName: "Azərbaycan\xadılı", - language: "az-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture az-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Latn", "default", { + name: "az-Latn", + englishName: "Azeri (Latin)", + nativeName: "Azərbaycan\xadılı", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.az.js b/pub/lib/globalize/cultures/globalize.culture.az.js index d1c2ba5f90145..de403fd23c6eb 100644 --- a/pub/lib/globalize/cultures/globalize.culture.az.js +++ b/pub/lib/globalize/cultures/globalize.culture.az.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture az - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "az", "default", { - name: "az", - englishName: "Azeri", - nativeName: "Azərbaycan\xadılı", - language: "az", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture az + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az", "default", { + name: "az", + englishName: "Azeri", + nativeName: "Azərbaycan\xadılı", + language: "az", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ba-RU.js b/pub/lib/globalize/cultures/globalize.culture.ba-RU.js index 7c824bca005bd..7b58739458124 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ba-RU.js +++ b/pub/lib/globalize/cultures/globalize.culture.ba-RU.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture ba-RU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ba-RU", "default", { - name: "ba-RU", - englishName: "Bashkir (Russia)", - nativeName: "Башҡорт (Россия)", - language: "ba", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ",", - symbol: "һ." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], - namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], - namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] - }, - months: { - names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], - namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy 'й'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'й' H:mm", - F: "d MMMM yyyy 'й' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ba-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ba-RU", "default", { + name: "ba-RU", + englishName: "Bashkir (Russia)", + nativeName: "Башҡорт (Россия)", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "һ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ba.js b/pub/lib/globalize/cultures/globalize.culture.ba.js index 2112bf004e9c0..3e61dad3f32e7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ba.js +++ b/pub/lib/globalize/cultures/globalize.culture.ba.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture ba - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ba", "default", { - name: "ba", - englishName: "Bashkir", - nativeName: "Башҡорт", - language: "ba", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ",", - symbol: "һ." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], - namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], - namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] - }, - months: { - names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], - namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy 'й'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'й' H:mm", - F: "d MMMM yyyy 'й' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ba + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ba", "default", { + name: "ba", + englishName: "Bashkir", + nativeName: "Башҡорт", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "һ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.be-BY.js b/pub/lib/globalize/cultures/globalize.culture.be-BY.js index e0473c362f57f..afa586b869f28 100644 --- a/pub/lib/globalize/cultures/globalize.culture.be-BY.js +++ b/pub/lib/globalize/cultures/globalize.culture.be-BY.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture be-BY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "be-BY", "default", { - name: "be-BY", - englishName: "Belarusian (Belarus)", - nativeName: "Беларускі (Беларусь)", - language: "be", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], - namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], - namesShort: ["нд","пн","аў","ср","чц","пт","сб"] - }, - months: { - names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - monthsGenitive: { - names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture be-BY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "be-BY", "default", { + name: "be-BY", + englishName: "Belarusian (Belarus)", + nativeName: "Беларускі (Беларусь)", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], + namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], + namesShort: ["нд","пн","аў","ср","чц","пт","сб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + monthsGenitive: { + names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.be.js b/pub/lib/globalize/cultures/globalize.culture.be.js index 4d708f0a7ab35..c70275cc6b0be 100644 --- a/pub/lib/globalize/cultures/globalize.culture.be.js +++ b/pub/lib/globalize/cultures/globalize.culture.be.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture be - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "be", "default", { - name: "be", - englishName: "Belarusian", - nativeName: "Беларускі", - language: "be", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], - namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], - namesShort: ["нд","пн","аў","ср","чц","пт","сб"] - }, - months: { - names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - monthsGenitive: { - names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture be + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "be", "default", { + name: "be", + englishName: "Belarusian", + nativeName: "Беларускі", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], + namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], + namesShort: ["нд","пн","аў","ср","чц","пт","сб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + monthsGenitive: { + names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bg-BG.js b/pub/lib/globalize/cultures/globalize.culture.bg-BG.js index 22911324586e3..824073ac5a0c0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bg-BG.js +++ b/pub/lib/globalize/cultures/globalize.culture.bg-BG.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture bg-BG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bg-BG", "default", { - name: "bg-BG", - englishName: "Bulgarian (Bulgaria)", - nativeName: "български (България)", - language: "bg", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "- безкрайност", - positiveInfinity: "+ безкрайност", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "лв." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], - namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], - namesShort: ["н","п","в","с","ч","п","с"] - }, - months: { - names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], - namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] - }, - AM: null, - PM: null, - eras: [{"name":"след новата ера","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy 'г.'", - D: "dd MMMM yyyy 'г.'", - t: "HH:mm 'ч.'", - T: "HH:mm:ss 'ч.'", - f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", - F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", - M: "dd MMMM", - Y: "MMMM yyyy 'г.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bg-BG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bg-BG", "default", { + name: "bg-BG", + englishName: "Bulgarian (Bulgaria)", + nativeName: "български (България)", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайност", + positiveInfinity: "+ безкрайност", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], + namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], + namesShort: ["н","п","в","с","ч","п","с"] + }, + months: { + names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], + namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"след новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bg.js b/pub/lib/globalize/cultures/globalize.culture.bg.js index 5b913e4eecbc5..5a6c1d84c81a7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bg.js +++ b/pub/lib/globalize/cultures/globalize.culture.bg.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture bg - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bg", "default", { - name: "bg", - englishName: "Bulgarian", - nativeName: "български", - language: "bg", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "- безкрайност", - positiveInfinity: "+ безкрайност", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "лв." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], - namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], - namesShort: ["н","п","в","с","ч","п","с"] - }, - months: { - names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], - namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] - }, - AM: null, - PM: null, - eras: [{"name":"след новата ера","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy 'г.'", - D: "dd MMMM yyyy 'г.'", - t: "HH:mm 'ч.'", - T: "HH:mm:ss 'ч.'", - f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", - F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", - M: "dd MMMM", - Y: "MMMM yyyy 'г.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bg + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bg", "default", { + name: "bg", + englishName: "Bulgarian", + nativeName: "български", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайност", + positiveInfinity: "+ безкрайност", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], + namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], + namesShort: ["н","п","в","с","ч","п","с"] + }, + months: { + names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], + namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"след новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bn-BD.js b/pub/lib/globalize/cultures/globalize.culture.bn-BD.js index 3e54645e50b79..bd30f8c717efe 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bn-BD.js +++ b/pub/lib/globalize/cultures/globalize.culture.bn-BD.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture bn-BD - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bn-BD", "default", { - name: "bn-BD", - englishName: "Bengali (Bangladesh)", - nativeName: "বাংলা (বাংলাদেশ)", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "৳" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bn-BD + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn-BD", "default", { + name: "bn-BD", + englishName: "Bengali (Bangladesh)", + nativeName: "বাংলা (বাংলাদেশ)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "৳" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bn-IN.js b/pub/lib/globalize/cultures/globalize.culture.bn-IN.js index 9eaee864b7159..cdd699a6f3337 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bn-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.bn-IN.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture bn-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bn-IN", "default", { - name: "bn-IN", - englishName: "Bengali (India)", - nativeName: "বাংলা (ভারত)", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "টা" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bn-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn-IN", "default", { + name: "bn-IN", + englishName: "Bengali (India)", + nativeName: "বাংলা (ভারত)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bn.js b/pub/lib/globalize/cultures/globalize.culture.bn.js index 125b1acfd1a78..c6f8a3a64a037 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bn.js +++ b/pub/lib/globalize/cultures/globalize.culture.bn.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture bn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bn", "default", { - name: "bn", - englishName: "Bengali", - nativeName: "বাংলা", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "টা" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn", "default", { + name: "bn", + englishName: "Bengali", + nativeName: "বাংলা", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bo-CN.js b/pub/lib/globalize/cultures/globalize.culture.bo-CN.js index 21fabc821bb8f..4dc1177a8e7cd 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bo-CN.js +++ b/pub/lib/globalize/cultures/globalize.culture.bo-CN.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture bo-CN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bo-CN", "default", { - name: "bo-CN", - englishName: "Tibetan (PRC)", - nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།)", - language: "bo", - numberFormat: { - groupSizes: [3,0], - "NaN": "ཨང་ཀི་མིན་པ།", - negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", - positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], - namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], - namesShort: ["༧","༡","༢","༣","༤","༥","༦"] - }, - months: { - names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], - namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] - }, - AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], - PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], - eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", - F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", - M: "'ཟླ་' M'ཚེས'd", - Y: "yyyy.M" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bo-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bo-CN", "default", { + name: "bo-CN", + englishName: "Tibetan (PRC)", + nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།)", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པ།", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], + namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bo.js b/pub/lib/globalize/cultures/globalize.culture.bo.js index 8064797e5da7f..c174c8d72b933 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bo.js +++ b/pub/lib/globalize/cultures/globalize.culture.bo.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture bo - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bo", "default", { - name: "bo", - englishName: "Tibetan", - nativeName: "བོད་ཡིག", - language: "bo", - numberFormat: { - groupSizes: [3,0], - "NaN": "ཨང་ཀི་མིན་པ།", - negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", - positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], - namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], - namesShort: ["༧","༡","༢","༣","༤","༥","༦"] - }, - months: { - names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], - namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] - }, - AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], - PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], - eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", - F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", - M: "'ཟླ་' M'ཚེས'd", - Y: "yyyy.M" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bo", "default", { + name: "bo", + englishName: "Tibetan", + nativeName: "བོད་ཡིག", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པ།", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], + namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.br-FR.js b/pub/lib/globalize/cultures/globalize.culture.br-FR.js index f65feb7ca089a..1ceb622d0bf18 100644 --- a/pub/lib/globalize/cultures/globalize.culture.br-FR.js +++ b/pub/lib/globalize/cultures/globalize.culture.br-FR.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture br-FR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "br-FR", "default", { - name: "br-FR", - englishName: "Breton (France)", - nativeName: "brezhoneg (Frañs)", - language: "br", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NkN", - negativeInfinity: "-Anfin", - positiveInfinity: "+Anfin", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], - namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], - namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] - }, - months: { - names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], - namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] - }, - AM: null, - PM: null, - eras: [{"name":"g. J.-K.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture br-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "br-FR", "default", { + name: "br-FR", + englishName: "Breton (France)", + nativeName: "brezhoneg (Frañs)", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.br.js b/pub/lib/globalize/cultures/globalize.culture.br.js index 2ef08671f54a5..c851765df2f8d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.br.js +++ b/pub/lib/globalize/cultures/globalize.culture.br.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture br - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "br", "default", { - name: "br", - englishName: "Breton", - nativeName: "brezhoneg", - language: "br", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NkN", - negativeInfinity: "-Anfin", - positiveInfinity: "+Anfin", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], - namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], - namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] - }, - months: { - names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], - namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] - }, - AM: null, - PM: null, - eras: [{"name":"g. J.-K.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture br + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "br", "default", { + name: "br", + englishName: "Breton", + nativeName: "brezhoneg", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl-BA.js b/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl-BA.js index b25ee789cab4b..4d8a7e8da9259 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl-BA.js +++ b/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl-BA.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture bs-Cyrl-BA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { - name: "bs-Cyrl-BA", - englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", - nativeName: "босански (Босна и Херцеговина)", - language: "bs-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bs-Cyrl-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { + name: "bs-Cyrl-BA", + englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "босански (Босна и Херцеговина)", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl.js index 1282ed2337f37..f6fa815c7e510 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.bs-Cyrl.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture bs-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bs-Cyrl", "default", { - name: "bs-Cyrl", - englishName: "Bosnian (Cyrillic)", - nativeName: "босански", - language: "bs-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bs-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Cyrl", "default", { + name: "bs-Cyrl", + englishName: "Bosnian (Cyrillic)", + nativeName: "босански", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bs-Latn-BA.js b/pub/lib/globalize/cultures/globalize.culture.bs-Latn-BA.js index 0c0d3b4a3ecaf..8ebb4591e618e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bs-Latn-BA.js +++ b/pub/lib/globalize/cultures/globalize.culture.bs-Latn-BA.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture bs-Latn-BA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bs-Latn-BA", "default", { - name: "bs-Latn-BA", - englishName: "Bosnian (Latin, Bosnia and Herzegovina)", - nativeName: "bosanski (Bosna i Hercegovina)", - language: "bs-Latn", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bs-Latn-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Latn-BA", "default", { + name: "bs-Latn-BA", + englishName: "Bosnian (Latin, Bosnia and Herzegovina)", + nativeName: "bosanski (Bosna i Hercegovina)", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bs-Latn.js b/pub/lib/globalize/cultures/globalize.culture.bs-Latn.js index 502ac7c1e4a5f..3a8a0e9c5c868 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bs-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.bs-Latn.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture bs-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bs-Latn", "default", { - name: "bs-Latn", - englishName: "Bosnian (Latin)", - nativeName: "bosanski", - language: "bs-Latn", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bs-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Latn", "default", { + name: "bs-Latn", + englishName: "Bosnian (Latin)", + nativeName: "bosanski", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.bs.js b/pub/lib/globalize/cultures/globalize.culture.bs.js index 4bc03816d2f03..a80032d35664a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.bs.js +++ b/pub/lib/globalize/cultures/globalize.culture.bs.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture bs - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "bs", "default", { - name: "bs", - englishName: "Bosnian", - nativeName: "bosanski", - language: "bs", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture bs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs", "default", { + name: "bs", + englishName: "Bosnian", + nativeName: "bosanski", + language: "bs", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ca-ES.js b/pub/lib/globalize/cultures/globalize.culture.ca-ES.js index ec7da88680bec..05f151255c114 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ca-ES.js +++ b/pub/lib/globalize/cultures/globalize.culture.ca-ES.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture ca-ES - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ca-ES", "default", { - name: "ca-ES", - englishName: "Catalan (Catalan)", - nativeName: "català (català)", - language: "ca", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinit", - positiveInfinity: "Infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], - namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], - namesShort: ["dg","dl","dt","dc","dj","dv","ds"] - }, - months: { - names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], - namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' / 'MMMM' / 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", - F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM' / 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ca-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ca-ES", "default", { + name: "ca-ES", + englishName: "Catalan (Catalan)", + nativeName: "català (català)", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ca.js b/pub/lib/globalize/cultures/globalize.culture.ca.js index c90b678b90fd3..19d315ec3f885 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ca.js +++ b/pub/lib/globalize/cultures/globalize.culture.ca.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture ca - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ca", "default", { - name: "ca", - englishName: "Catalan", - nativeName: "català", - language: "ca", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinit", - positiveInfinity: "Infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], - namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], - namesShort: ["dg","dl","dt","dc","dj","dv","ds"] - }, - months: { - names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], - namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' / 'MMMM' / 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", - F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM' / 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ca + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ca", "default", { + name: "ca", + englishName: "Catalan", + nativeName: "català", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.co-FR.js b/pub/lib/globalize/cultures/globalize.culture.co-FR.js index 80f45a2fffdcc..da8c8add87069 100644 --- a/pub/lib/globalize/cultures/globalize.culture.co-FR.js +++ b/pub/lib/globalize/cultures/globalize.culture.co-FR.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture co-FR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "co-FR", "default", { - name: "co-FR", - englishName: "Corsican (France)", - nativeName: "Corsu (France)", - language: "co", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Mica numericu", - negativeInfinity: "-Infinitu", - positiveInfinity: "+Infinitu", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], - namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], - namesShort: ["du","lu","ma","me","gh","ve","sa"] - }, - months: { - names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], - namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] - }, - AM: null, - PM: null, - eras: [{"name":"dopu J-C","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture co-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "co-FR", "default", { + name: "co-FR", + englishName: "Corsican (France)", + nativeName: "Corsu (France)", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.co.js b/pub/lib/globalize/cultures/globalize.culture.co.js index 7e0be85d09296..642559d204060 100644 --- a/pub/lib/globalize/cultures/globalize.culture.co.js +++ b/pub/lib/globalize/cultures/globalize.culture.co.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture co - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "co", "default", { - name: "co", - englishName: "Corsican", - nativeName: "Corsu", - language: "co", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Mica numericu", - negativeInfinity: "-Infinitu", - positiveInfinity: "+Infinitu", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], - namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], - namesShort: ["du","lu","ma","me","gh","ve","sa"] - }, - months: { - names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], - namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] - }, - AM: null, - PM: null, - eras: [{"name":"dopu J-C","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture co + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "co", "default", { + name: "co", + englishName: "Corsican", + nativeName: "Corsu", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.cs-CZ.js b/pub/lib/globalize/cultures/globalize.culture.cs-CZ.js index 25d7481daca39..465bf4a24ad75 100644 --- a/pub/lib/globalize/cultures/globalize.culture.cs-CZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.cs-CZ.js @@ -1,85 +1,85 @@ -/** - * Globalize Culture cs-CZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "cs-CZ", "default", { - name: "cs-CZ", - englishName: "Czech (Czech Republic)", - nativeName: "čeština (Česká republika)", - language: "cs", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Není číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Kč" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], - namesAbbr: ["ne","po","út","st","čt","pá","so"], - namesShort: ["ne","po","út","st","čt","pá","so"] - }, - months: { - names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["dop.","dop.","DOP."], - PM: ["odp.","odp.","ODP."], - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture cs-CZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cs-CZ", "default", { + name: "cs-CZ", + englishName: "Czech (Czech Republic)", + nativeName: "čeština (Česká republika)", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Kč" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","čt","pá","so"], + namesShort: ["ne","po","út","st","čt","pá","so"] + }, + months: { + names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.cs.js b/pub/lib/globalize/cultures/globalize.culture.cs.js index fc6ee0292fc11..029d71ba68742 100644 --- a/pub/lib/globalize/cultures/globalize.culture.cs.js +++ b/pub/lib/globalize/cultures/globalize.culture.cs.js @@ -1,85 +1,85 @@ -/** - * Globalize Culture cs - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "cs", "default", { - name: "cs", - englishName: "Czech", - nativeName: "čeština", - language: "cs", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Není číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Kč" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], - namesAbbr: ["ne","po","út","st","čt","pá","so"], - namesShort: ["ne","po","út","st","čt","pá","so"] - }, - months: { - names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["dop.","dop.","DOP."], - PM: ["odp.","odp.","ODP."], - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture cs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cs", "default", { + name: "cs", + englishName: "Czech", + nativeName: "čeština", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Kč" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","čt","pá","so"], + namesShort: ["ne","po","út","st","čt","pá","so"] + }, + months: { + names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.cy-GB.js b/pub/lib/globalize/cultures/globalize.culture.cy-GB.js index 5abbe1237ea3a..96be7b1bf8321 100644 --- a/pub/lib/globalize/cultures/globalize.culture.cy-GB.js +++ b/pub/lib/globalize/cultures/globalize.culture.cy-GB.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture cy-GB - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "cy-GB", "default", { - name: "cy-GB", - englishName: "Welsh (United Kingdom)", - nativeName: "Cymraeg (y Deyrnas Unedig)", - language: "cy", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], - namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], - namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] - }, - months: { - names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], - namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture cy-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cy-GB", "default", { + name: "cy-GB", + englishName: "Welsh (United Kingdom)", + nativeName: "Cymraeg (y Deyrnas Unedig)", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.cy.js b/pub/lib/globalize/cultures/globalize.culture.cy.js index 7ca805e5f2c48..7ee52896ec603 100644 --- a/pub/lib/globalize/cultures/globalize.culture.cy.js +++ b/pub/lib/globalize/cultures/globalize.culture.cy.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture cy - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "cy", "default", { - name: "cy", - englishName: "Welsh", - nativeName: "Cymraeg", - language: "cy", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], - namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], - namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] - }, - months: { - names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], - namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture cy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cy", "default", { + name: "cy", + englishName: "Welsh", + nativeName: "Cymraeg", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.da-DK.js b/pub/lib/globalize/cultures/globalize.culture.da-DK.js index 00cd2e47a1a3d..1e3da9c723973 100644 --- a/pub/lib/globalize/cultures/globalize.culture.da-DK.js +++ b/pub/lib/globalize/cultures/globalize.culture.da-DK.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture da-DK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "da-DK", "default", { - name: "da-DK", - englishName: "Danish (Denmark)", - nativeName: "dansk (Danmark)", - language: "da", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture da-DK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "da-DK", "default", { + name: "da-DK", + englishName: "Danish (Denmark)", + nativeName: "dansk (Danmark)", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.da.js b/pub/lib/globalize/cultures/globalize.culture.da.js index 451255e98f96d..dd00b726b8194 100644 --- a/pub/lib/globalize/cultures/globalize.culture.da.js +++ b/pub/lib/globalize/cultures/globalize.culture.da.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture da - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "da", "default", { - name: "da", - englishName: "Danish", - nativeName: "dansk", - language: "da", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture da + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "da", "default", { + name: "da", + englishName: "Danish", + nativeName: "dansk", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de-AT.js b/pub/lib/globalize/cultures/globalize.culture.de-AT.js index fdeb3c52112a5..fb33da37f63a6 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de-AT.js +++ b/pub/lib/globalize/cultures/globalize.culture.de-AT.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture de-AT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de-AT", "default", { - name: "de-AT", - englishName: "German (Austria)", - nativeName: "Deutsch (Österreich)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd. MMMM yyyy HH:mm", - F: "dddd, dd. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de-AT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-AT", "default", { + name: "de-AT", + englishName: "German (Austria)", + nativeName: "Deutsch (Österreich)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd. MMMM yyyy HH:mm", + F: "dddd, dd. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de-CH.js b/pub/lib/globalize/cultures/globalize.culture.de-CH.js index c6446eb3b47fb..5bc0a088f11ce 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de-CH.js +++ b/pub/lib/globalize/cultures/globalize.culture.de-CH.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture de-CH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de-CH", "default", { - name: "de-CH", - englishName: "German (Switzerland)", - nativeName: "Deutsch (Schweiz)", - language: "de", - numberFormat: { - ",": "'", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "Fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-CH", "default", { + name: "de-CH", + englishName: "German (Switzerland)", + nativeName: "Deutsch (Schweiz)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "Fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de-DE.js b/pub/lib/globalize/cultures/globalize.culture.de-DE.js index 7588f3312bce2..c9bab8d90b51f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de-DE.js +++ b/pub/lib/globalize/cultures/globalize.culture.de-DE.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture de-DE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de-DE", "default", { - name: "de-DE", - englishName: "German (Germany)", - nativeName: "Deutsch (Deutschland)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-DE", "default", { + name: "de-DE", + englishName: "German (Germany)", + nativeName: "Deutsch (Deutschland)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de-LI.js b/pub/lib/globalize/cultures/globalize.culture.de-LI.js index 7eae4ecb92507..a72b2065c1997 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de-LI.js +++ b/pub/lib/globalize/cultures/globalize.culture.de-LI.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture de-LI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de-LI", "default", { - name: "de-LI", - englishName: "German (Liechtenstein)", - nativeName: "Deutsch (Liechtenstein)", - language: "de", - numberFormat: { - ",": "'", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "CHF" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de-LI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-LI", "default", { + name: "de-LI", + englishName: "German (Liechtenstein)", + nativeName: "Deutsch (Liechtenstein)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "CHF" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de-LU.js b/pub/lib/globalize/cultures/globalize.culture.de-LU.js index 1246d67442282..43fbc1cdd2c44 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de-LU.js +++ b/pub/lib/globalize/cultures/globalize.culture.de-LU.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture de-LU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de-LU", "default", { - name: "de-LU", - englishName: "German (Luxembourg)", - nativeName: "Deutsch (Luxemburg)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-LU", "default", { + name: "de-LU", + englishName: "German (Luxembourg)", + nativeName: "Deutsch (Luxemburg)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.de.js b/pub/lib/globalize/cultures/globalize.culture.de.js index 6b8840a63975e..47ef7fe838c59 100644 --- a/pub/lib/globalize/cultures/globalize.culture.de.js +++ b/pub/lib/globalize/cultures/globalize.culture.de.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture de - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "de", "default", { - name: "de", - englishName: "German", - nativeName: "Deutsch", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture de + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de", "default", { + name: "de", + englishName: "German", + nativeName: "Deutsch", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.dsb-DE.js b/pub/lib/globalize/cultures/globalize.culture.dsb-DE.js index 77d8957c69ed3..77581d95a1166 100644 --- a/pub/lib/globalize/cultures/globalize.culture.dsb-DE.js +++ b/pub/lib/globalize/cultures/globalize.culture.dsb-DE.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture dsb-DE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "dsb-DE", "default", { - name: "dsb-DE", - englishName: "Lower Sorbian (Germany)", - nativeName: "dolnoserbšćina (Nimska)", - language: "dsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekońcne", - positiveInfinity: "+njekońcne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], - namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], - namesShort: ["n","p","w","s","s","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'goź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture dsb-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dsb-DE", "default", { + name: "dsb-DE", + englishName: "Lower Sorbian (Germany)", + nativeName: "dolnoserbšćina (Nimska)", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekońcne", + positiveInfinity: "+njekońcne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], + namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.dsb.js b/pub/lib/globalize/cultures/globalize.culture.dsb.js index 94d73ead51b50..5853f96fb2259 100644 --- a/pub/lib/globalize/cultures/globalize.culture.dsb.js +++ b/pub/lib/globalize/cultures/globalize.culture.dsb.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture dsb - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "dsb", "default", { - name: "dsb", - englishName: "Lower Sorbian", - nativeName: "dolnoserbšćina", - language: "dsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekońcne", - positiveInfinity: "+njekońcne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], - namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], - namesShort: ["n","p","w","s","s","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'goź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture dsb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dsb", "default", { + name: "dsb", + englishName: "Lower Sorbian", + nativeName: "dolnoserbšćina", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekońcne", + positiveInfinity: "+njekońcne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], + namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.dv-MV.js b/pub/lib/globalize/cultures/globalize.culture.dv-MV.js index b7ba7f2462add..fb92652cb48be 100644 --- a/pub/lib/globalize/cultures/globalize.culture.dv-MV.js +++ b/pub/lib/globalize/cultures/globalize.culture.dv-MV.js @@ -1,164 +1,164 @@ -/** - * Globalize Culture dv-MV - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "dv-MV", "default", { - name: "dv-MV", - englishName: "Divehi (Maldives)", - nativeName: "ދިވެހިބަސް (ދިވެހި ރާއްޖެ)", - language: "dv", - isRTL: true, - numberFormat: { - currency: { - pattern: ["n $-","n $"], - symbol: "ރ." - } - }, - calendars: { - standard: { - name: "Hijri", - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], - namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"ހިޖްރީ","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd/MM/yyyy HH:mm", - F: "dd/MM/yyyy HH:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], - namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"މީލާދީ","start":null,"offset":0}], - patterns: { - d: "dd/MM/yy", - D: "ddd, yyyy MMMM dd", - t: "HH:mm", - T: "HH:mm:ss", - f: "ddd, yyyy MMMM dd HH:mm", - F: "ddd, yyyy MMMM dd HH:mm:ss", - Y: "yyyy, MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture dv-MV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dv-MV", "default", { + name: "dv-MV", + englishName: "Divehi (Maldives)", + nativeName: "ދިވެހިބަސް (ދިވެހި ރާއްޖެ)", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "ރ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], + namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"ހިޖްރީ","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], + namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"މީލާދީ","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.dv.js b/pub/lib/globalize/cultures/globalize.culture.dv.js index 7f0a21b80c2d6..fc8c6d5af9fb0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.dv.js +++ b/pub/lib/globalize/cultures/globalize.culture.dv.js @@ -1,164 +1,164 @@ -/** - * Globalize Culture dv - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "dv", "default", { - name: "dv", - englishName: "Divehi", - nativeName: "ދިވެހިބަސް", - language: "dv", - isRTL: true, - numberFormat: { - currency: { - pattern: ["n $-","n $"], - symbol: "ރ." - } - }, - calendars: { - standard: { - name: "Hijri", - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], - namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd/MM/yyyy HH:mm", - F: "dd/MM/yyyy HH:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], - namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"މީލާދީ","start":null,"offset":0}], - patterns: { - d: "dd/MM/yy", - D: "ddd, yyyy MMMM dd", - t: "HH:mm", - T: "HH:mm:ss", - f: "ddd, yyyy MMMM dd HH:mm", - F: "ddd, yyyy MMMM dd HH:mm:ss", - Y: "yyyy, MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture dv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dv", "default", { + name: "dv", + englishName: "Divehi", + nativeName: "ދިވެހިބަސް", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "ރ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], + namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], + namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"މީލާދީ","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.el-GR.js b/pub/lib/globalize/cultures/globalize.culture.el-GR.js index 6006611e7c3c1..a7df499732c6d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.el-GR.js +++ b/pub/lib/globalize/cultures/globalize.culture.el-GR.js @@ -1,82 +1,82 @@ -/** - * Globalize Culture el-GR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "el-GR", "default", { - name: "el-GR", - englishName: "Greek (Greece)", - nativeName: "Ελληνικά (Ελλάδα)", - language: "el", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "μη αριθμός", - negativeInfinity: "-Άπειρο", - positiveInfinity: "Άπειρο", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], - namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], - namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] - }, - months: { - names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - monthsGenitive: { - names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - AM: ["πμ","πμ","ΠΜ"], - PM: ["μμ","μμ","ΜΜ"], - eras: [{"name":"μ.Χ.","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture el-GR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "el-GR", "default", { + name: "el-GR", + englishName: "Greek (Greece)", + nativeName: "Ελληνικά (Ελλάδα)", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αριθμός", + negativeInfinity: "-Άπειρο", + positiveInfinity: "Άπειρο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], + namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], + namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + monthsGenitive: { + names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.el.js b/pub/lib/globalize/cultures/globalize.culture.el.js index b496dc4a6d279..ea902551c7932 100644 --- a/pub/lib/globalize/cultures/globalize.culture.el.js +++ b/pub/lib/globalize/cultures/globalize.culture.el.js @@ -1,82 +1,82 @@ -/** - * Globalize Culture el - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "el", "default", { - name: "el", - englishName: "Greek", - nativeName: "Ελληνικά", - language: "el", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "μη αριθμός", - negativeInfinity: "-Άπειρο", - positiveInfinity: "Άπειρο", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], - namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], - namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] - }, - months: { - names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - monthsGenitive: { - names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - AM: ["πμ","πμ","ΠΜ"], - PM: ["μμ","μμ","ΜΜ"], - eras: [{"name":"μ.Χ.","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture el + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "el", "default", { + name: "el", + englishName: "Greek", + nativeName: "Ελληνικά", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αριθμός", + negativeInfinity: "-Άπειρο", + positiveInfinity: "Άπειρο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], + namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], + namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + monthsGenitive: { + names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-029.js b/pub/lib/globalize/cultures/globalize.culture.en-029.js index edbe29ee2a168..f3859d0d53481 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-029.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-029.js @@ -1,47 +1,47 @@ -/** - * Globalize Culture en-029 - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-029", "default", { - name: "en-029", - englishName: "English (Caribbean)", - nativeName: "English (Caribbean)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "MM/dd/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-029 + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-029", "default", { + name: "en-029", + englishName: "English (Caribbean)", + nativeName: "English (Caribbean)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "MM/dd/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-AU.js b/pub/lib/globalize/cultures/globalize.culture.en-AU.js index 138b5b9d4159c..60fd67ba493c4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-AU.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-AU.js @@ -1,52 +1,52 @@ -/** - * Globalize Culture en-AU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-AU", "default", { - name: "en-AU", - englishName: "English (Australia)", - nativeName: "English (Australia)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "d/MM/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-AU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-AU", "default", { + name: "en-AU", + englishName: "English (Australia)", + nativeName: "English (Australia)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-BZ.js b/pub/lib/globalize/cultures/globalize.culture.en-BZ.js index 229adc616abbf..6667e9ecee395 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-BZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-BZ.js @@ -1,54 +1,54 @@ -/** - * Globalize Culture en-BZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-BZ", "default", { - name: "en-BZ", - englishName: "English (Belize)", - nativeName: "English (Belize)", - numberFormat: { - currency: { - groupSizes: [3,0], - symbol: "BZ$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd MMMM yyyy hh:mm tt", - F: "dddd, dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-BZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-BZ", "default", { + name: "en-BZ", + englishName: "English (Belize)", + nativeName: "English (Belize)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "BZ$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-CA.js b/pub/lib/globalize/cultures/globalize.culture.en-CA.js index 9ff7611f7d215..a3c6e7c43a276 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-CA.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-CA.js @@ -1,49 +1,49 @@ -/** - * Globalize Culture en-CA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-CA", "default", { - name: "en-CA", - englishName: "English (Canada)", - nativeName: "English (Canada)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "MMMM-dd-yy", - f: "MMMM-dd-yy h:mm tt", - F: "MMMM-dd-yy h:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-CA", "default", { + name: "en-CA", + englishName: "English (Canada)", + nativeName: "English (Canada)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "MMMM-dd-yy", + f: "MMMM-dd-yy h:mm tt", + F: "MMMM-dd-yy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-GB.js b/pub/lib/globalize/cultures/globalize.culture.en-GB.js index ce99dc253a8f0..7520ff83e3b0d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-GB.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-GB.js @@ -1,55 +1,55 @@ -/** - * Globalize Culture en-GB - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-GB", "default", { - name: "en-GB", - englishName: "English (United Kingdom)", - nativeName: "English (United Kingdom)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-GB", "default", { + name: "en-GB", + englishName: "English (United Kingdom)", + nativeName: "English (United Kingdom)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-IE.js b/pub/lib/globalize/cultures/globalize.culture.en-IE.js index e9587c5db9ae5..9b43f580f5283 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-IE.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-IE.js @@ -1,57 +1,57 @@ -/** - * Globalize Culture en-IE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-IE", "default", { - name: "en-IE", - englishName: "English (Ireland)", - nativeName: "English (Ireland)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-IE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-IE", "default", { + name: "en-IE", + englishName: "English (Ireland)", + nativeName: "English (Ireland)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-IN.js b/pub/lib/globalize/cultures/globalize.culture.en-IN.js index aabf2c5a2f1f2..f7a55ac9f66c8 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-IN.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture en-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-IN", "default", { - name: "en-IN", - englishName: "English (India)", - nativeName: "English (India)", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "Rs." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-IN", "default", { + name: "en-IN", + englishName: "English (India)", + nativeName: "English (India)", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "Rs." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-JM.js b/pub/lib/globalize/cultures/globalize.culture.en-JM.js index 9a5ab245b6cac..dd032bbec0238 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-JM.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-JM.js @@ -1,51 +1,51 @@ -/** - * Globalize Culture en-JM - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-JM", "default", { - name: "en-JM", - englishName: "English (Jamaica)", - nativeName: "English (Jamaica)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "J$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-JM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-JM", "default", { + name: "en-JM", + englishName: "English (Jamaica)", + nativeName: "English (Jamaica)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "J$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-MY.js b/pub/lib/globalize/cultures/globalize.culture.en-MY.js index a876bacd16ed7..1e92c7afefa84 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-MY.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-MY.js @@ -1,56 +1,56 @@ -/** - * Globalize Culture en-MY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-MY", "default", { - name: "en-MY", - englishName: "English (Malaysia)", - nativeName: "English (Malaysia)", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "RM" - } - }, - calendars: { - standard: { - days: { - namesShort: ["S","M","T","W","T","F","S"] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM, yyyy", - f: "dddd, d MMMM, yyyy h:mm tt", - F: "dddd, d MMMM, yyyy h:mm:ss tt", - M: "d MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-MY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-MY", "default", { + name: "en-MY", + englishName: "English (Malaysia)", + nativeName: "English (Malaysia)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "RM" + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-NZ.js b/pub/lib/globalize/cultures/globalize.culture.en-NZ.js index 46e544049743b..267dd68fe9ece 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-NZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-NZ.js @@ -1,54 +1,54 @@ -/** - * Globalize Culture en-NZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-NZ", "default", { - name: "en-NZ", - englishName: "English (New Zealand)", - nativeName: "English (New Zealand)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "d/MM/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-NZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-NZ", "default", { + name: "en-NZ", + englishName: "English (New Zealand)", + nativeName: "English (New Zealand)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-PH.js b/pub/lib/globalize/cultures/globalize.culture.en-PH.js index df931cdc59139..ac4d5b1f4e249 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-PH.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-PH.js @@ -1,39 +1,39 @@ -/** - * Globalize Culture en-PH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-PH", "default", { - name: "en-PH", - englishName: "English (Republic of the Philippines)", - nativeName: "English (Philippines)", - numberFormat: { - currency: { - symbol: "Php" - } - } -}); - -}( this )); +/** + * Globalize Culture en-PH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-PH", "default", { + name: "en-PH", + englishName: "English (Republic of the Philippines)", + nativeName: "English (Philippines)", + numberFormat: { + currency: { + symbol: "Php" + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-SG.js b/pub/lib/globalize/cultures/globalize.culture.en-SG.js index 3cee223ea5416..f35539df06fc5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-SG.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-SG.js @@ -1,53 +1,53 @@ -/** - * Globalize Culture en-SG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-SG", "default", { - name: "en-SG", - englishName: "English (Singapore)", - nativeName: "English (Singapore)", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - } - }, - calendars: { - standard: { - days: { - namesShort: ["S","M","T","W","T","F","S"] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM, yyyy", - f: "dddd, d MMMM, yyyy h:mm tt", - F: "dddd, d MMMM, yyyy h:mm:ss tt", - M: "d MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-SG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-SG", "default", { + name: "en-SG", + englishName: "English (Singapore)", + nativeName: "English (Singapore)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-TT.js b/pub/lib/globalize/cultures/globalize.culture.en-TT.js index 95c1be06b35c2..7af34ea07254d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-TT.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-TT.js @@ -1,54 +1,54 @@ -/** - * Globalize Culture en-TT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-TT", "default", { - name: "en-TT", - englishName: "English (Trinidad and Tobago)", - nativeName: "English (Trinidad y Tobago)", - numberFormat: { - currency: { - groupSizes: [3,0], - symbol: "TT$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd MMMM yyyy hh:mm tt", - F: "dddd, dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-TT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-TT", "default", { + name: "en-TT", + englishName: "English (Trinidad and Tobago)", + nativeName: "English (Trinidad y Tobago)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "TT$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-US.js b/pub/lib/globalize/cultures/globalize.culture.en-US.js index dce2331069b8d..ffa3cbbe9c646 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-US.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-US.js @@ -1,33 +1,33 @@ -/** - * Globalize Culture en-US - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-US", "default", { - name: "en-US", - englishName: "English (United States)" -}); - -}( this )); +/** + * Globalize Culture en-US + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-US", "default", { + name: "en-US", + englishName: "English (United States)" +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-ZA.js b/pub/lib/globalize/cultures/globalize.culture.en-ZA.js index 9e917e1a2ea94..2a23c6545da59 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-ZA.js @@ -1,61 +1,61 @@ -/** - * Globalize Culture en-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-ZA", "default", { - name: "en-ZA", - englishName: "English (South Africa)", - nativeName: "English (South Africa)", - numberFormat: { - ",": " ", - percent: { - pattern: ["-n%","n%"], - ",": " " - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "R" - } - }, - calendars: { - standard: { - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture en-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-ZA", "default", { + name: "en-ZA", + englishName: "English (South Africa)", + nativeName: "English (South Africa)", + numberFormat: { + ",": " ", + percent: { + pattern: ["-n%","n%"], + ",": " " + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "R" + } + }, + calendars: { + standard: { + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.en-ZW.js b/pub/lib/globalize/cultures/globalize.culture.en-ZW.js index a20e2048643a5..d157fda810f97 100644 --- a/pub/lib/globalize/cultures/globalize.culture.en-ZW.js +++ b/pub/lib/globalize/cultures/globalize.culture.en-ZW.js @@ -1,39 +1,39 @@ -/** - * Globalize Culture en-ZW - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "en-ZW", "default", { - name: "en-ZW", - englishName: "English (Zimbabwe)", - nativeName: "English (Zimbabwe)", - numberFormat: { - currency: { - symbol: "Z$" - } - } -}); - -}( this )); +/** + * Globalize Culture en-ZW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-ZW", "default", { + name: "en-ZW", + englishName: "English (Zimbabwe)", + nativeName: "English (Zimbabwe)", + numberFormat: { + currency: { + symbol: "Z$" + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-AR.js b/pub/lib/globalize/cultures/globalize.culture.es-AR.js index ada46667b5a7b..aadd82f6790c4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-AR.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-AR.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture es-AR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-AR", "default", { - name: "es-AR", - englishName: "Spanish (Argentina)", - nativeName: "Español (Argentina)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-AR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-AR", "default", { + name: "es-AR", + englishName: "Spanish (Argentina)", + nativeName: "Español (Argentina)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-BO.js b/pub/lib/globalize/cultures/globalize.culture.es-BO.js index ad050cdf6d6f8..df0a6c1bd9d87 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-BO.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-BO.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture es-BO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-BO", "default", { - name: "es-BO", - englishName: "Spanish (Bolivia)", - nativeName: "Español (Bolivia)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-BO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-BO", "default", { + name: "es-BO", + englishName: "Spanish (Bolivia)", + nativeName: "Español (Bolivia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-CL.js b/pub/lib/globalize/cultures/globalize.culture.es-CL.js index fe5701088997f..c2c366976e723 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-CL.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-CL.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture es-CL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-CL", "default", { - name: "es-CL", - englishName: "Spanish (Chile)", - nativeName: "Español (Chile)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-CL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CL", "default", { + name: "es-CL", + englishName: "Spanish (Chile)", + nativeName: "Español (Chile)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-CO.js b/pub/lib/globalize/cultures/globalize.culture.es-CO.js index 7d0c45fa208ad..83e4e28463a94 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-CO.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-CO.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture es-CO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-CO", "default", { - name: "es-CO", - englishName: "Spanish (Colombia)", - nativeName: "Español (Colombia)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-CO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CO", "default", { + name: "es-CO", + englishName: "Spanish (Colombia)", + nativeName: "Español (Colombia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-CR.js b/pub/lib/globalize/cultures/globalize.culture.es-CR.js index 19d34636ef711..381a27f69186f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-CR.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-CR.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture es-CR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-CR", "default", { - name: "es-CR", - englishName: "Spanish (Costa Rica)", - nativeName: "Español (Costa Rica)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - ",": ".", - ".": ",", - symbol: "₡" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-CR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CR", "default", { + name: "es-CR", + englishName: "Spanish (Costa Rica)", + nativeName: "Español (Costa Rica)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + ",": ".", + ".": ",", + symbol: "₡" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-DO.js b/pub/lib/globalize/cultures/globalize.culture.es-DO.js index 069c44a079300..df2c17d99094d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-DO.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-DO.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture es-DO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-DO", "default", { - name: "es-DO", - englishName: "Spanish (Dominican Republic)", - nativeName: "Español (República Dominicana)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "RD$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-DO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-DO", "default", { + name: "es-DO", + englishName: "Spanish (Dominican Republic)", + nativeName: "Español (República Dominicana)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "RD$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-EC.js b/pub/lib/globalize/cultures/globalize.culture.es-EC.js index ef8aa3d551002..58a0c6a679695 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-EC.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-EC.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture es-EC - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-EC", "default", { - name: "es-EC", - englishName: "Spanish (Ecuador)", - nativeName: "Español (Ecuador)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-EC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-EC", "default", { + name: "es-EC", + englishName: "Spanish (Ecuador)", + nativeName: "Español (Ecuador)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-ES.js b/pub/lib/globalize/cultures/globalize.culture.es-ES.js index ed5efdc8add06..57cee41e90e66 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-ES.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-ES.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture es-ES - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-ES", "default", { - name: "es-ES", - englishName: "Spanish (Spain, International Sort)", - nativeName: "Español (España, alfabetización internacional)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-ES", "default", { + name: "es-ES", + englishName: "Spanish (Spain, International Sort)", + nativeName: "Español (España, alfabetización internacional)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-GT.js b/pub/lib/globalize/cultures/globalize.culture.es-GT.js index 48c22a3fe87fb..99a8b8ae8d3fe 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-GT.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-GT.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture es-GT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-GT", "default", { - name: "es-GT", - englishName: "Spanish (Guatemala)", - nativeName: "Español (Guatemala)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-GT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-GT", "default", { + name: "es-GT", + englishName: "Spanish (Guatemala)", + nativeName: "Español (Guatemala)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-HN.js b/pub/lib/globalize/cultures/globalize.culture.es-HN.js index b35fa240efe5b..e04d735f258d8 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-HN.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-HN.js @@ -1,71 +1,71 @@ -/** - * Globalize Culture es-HN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-HN", "default", { - name: "es-HN", - englishName: "Spanish (Honduras)", - nativeName: "Español (Honduras)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - symbol: "L." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-HN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-HN", "default", { + name: "es-HN", + englishName: "Spanish (Honduras)", + nativeName: "Español (Honduras)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + symbol: "L." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-MX.js b/pub/lib/globalize/cultures/globalize.culture.es-MX.js index 3dddd0cc268c0..c6d81caf3fbf9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-MX.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-MX.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture es-MX - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-MX", "default", { - name: "es-MX", - englishName: "Spanish (Mexico)", - nativeName: "Español (México)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-MX + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-MX", "default", { + name: "es-MX", + englishName: "Spanish (Mexico)", + nativeName: "Español (México)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-NI.js b/pub/lib/globalize/cultures/globalize.culture.es-NI.js index 6123a0733f66a..fc9ddbcfb6e85 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-NI.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-NI.js @@ -1,71 +1,71 @@ -/** - * Globalize Culture es-NI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-NI", "default", { - name: "es-NI", - englishName: "Spanish (Nicaragua)", - nativeName: "Español (Nicaragua)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - groupSizes: [3,0], - symbol: "C$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-NI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-NI", "default", { + name: "es-NI", + englishName: "Spanish (Nicaragua)", + nativeName: "Español (Nicaragua)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0], + symbol: "C$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-PA.js b/pub/lib/globalize/cultures/globalize.culture.es-PA.js index 3688be262fa38..ac524d76e066e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-PA.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-PA.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture es-PA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-PA", "default", { - name: "es-PA", - englishName: "Spanish (Panama)", - nativeName: "Español (Panamá)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - symbol: "B/." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-PA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PA", "default", { + name: "es-PA", + englishName: "Spanish (Panama)", + nativeName: "Español (Panamá)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + symbol: "B/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-PE.js b/pub/lib/globalize/cultures/globalize.culture.es-PE.js index b88e165fc1b7e..b17a61a292417 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-PE.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-PE.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture es-PE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-PE", "default", { - name: "es-PE", - englishName: "Spanish (Peru)", - nativeName: "Español (Perú)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["$ -n","$ n"], - symbol: "S/." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-PE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PE", "default", { + name: "es-PE", + englishName: "Spanish (Peru)", + nativeName: "Español (Perú)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-PR.js b/pub/lib/globalize/cultures/globalize.culture.es-PR.js index 273921c5a6898..5060be628693a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-PR.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-PR.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture es-PR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-PR", "default", { - name: "es-PR", - englishName: "Spanish (Puerto Rico)", - nativeName: "Español (Puerto Rico)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-PR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PR", "default", { + name: "es-PR", + englishName: "Spanish (Puerto Rico)", + nativeName: "Español (Puerto Rico)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-PY.js b/pub/lib/globalize/cultures/globalize.culture.es-PY.js index 72040ba4dd8ae..3cd7348ac0c04 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-PY.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-PY.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture es-PY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-PY", "default", { - name: "es-PY", - englishName: "Spanish (Paraguay)", - nativeName: "Español (Paraguay)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "Gs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-PY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PY", "default", { + name: "es-PY", + englishName: "Spanish (Paraguay)", + nativeName: "Español (Paraguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "Gs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-SV.js b/pub/lib/globalize/cultures/globalize.culture.es-SV.js index 5f5349d7dc0ab..b9aba7e88b246 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-SV.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-SV.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture es-SV - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-SV", "default", { - name: "es-SV", - englishName: "Spanish (El Salvador)", - nativeName: "Español (El Salvador)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-SV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-SV", "default", { + name: "es-SV", + englishName: "Spanish (El Salvador)", + nativeName: "Español (El Salvador)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-US.js b/pub/lib/globalize/cultures/globalize.culture.es-US.js index b39c4d898222d..f06d16d01abe7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-US.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-US.js @@ -1,62 +1,62 @@ -/** - * Globalize Culture es-US - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-US", "default", { - name: "es-US", - englishName: "Spanish (United States)", - nativeName: "Español (Estados Unidos)", - language: "es", - numberFormat: { - groupSizes: [3,0], - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sa"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-US + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-US", "default", { + name: "es-US", + englishName: "Spanish (United States)", + nativeName: "Español (Estados Unidos)", + language: "es", + numberFormat: { + groupSizes: [3,0], + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sa"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-UY.js b/pub/lib/globalize/cultures/globalize.culture.es-UY.js index 081a437f96d5e..fff99a780f0cf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-UY.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-UY.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture es-UY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-UY", "default", { - name: "es-UY", - englishName: "Spanish (Uruguay)", - nativeName: "Español (Uruguay)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$U" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-UY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-UY", "default", { + name: "es-UY", + englishName: "Spanish (Uruguay)", + nativeName: "Español (Uruguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$U" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es-VE.js b/pub/lib/globalize/cultures/globalize.culture.es-VE.js index d132385a56cf9..29eb125ccee60 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es-VE.js +++ b/pub/lib/globalize/cultures/globalize.culture.es-VE.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture es-VE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es-VE", "default", { - name: "es-VE", - englishName: "Spanish (Bolivarian Republic of Venezuela)", - nativeName: "Español (Republica Bolivariana de Venezuela)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "Bs. F." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es-VE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-VE", "default", { + name: "es-VE", + englishName: "Spanish (Bolivarian Republic of Venezuela)", + nativeName: "Español (Republica Bolivariana de Venezuela)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "Bs. F." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.es.js b/pub/lib/globalize/cultures/globalize.culture.es.js index 2a04829c15826..97db3241a2f94 100644 --- a/pub/lib/globalize/cultures/globalize.culture.es.js +++ b/pub/lib/globalize/cultures/globalize.culture.es.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture es - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "es", "default", { - name: "es", - englishName: "Spanish", - nativeName: "español", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture es + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es", "default", { + name: "es", + englishName: "Spanish", + nativeName: "español", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.et-EE.js b/pub/lib/globalize/cultures/globalize.culture.et-EE.js index 850e55664b02a..e2b798ce38f32 100644 --- a/pub/lib/globalize/cultures/globalize.culture.et-EE.js +++ b/pub/lib/globalize/cultures/globalize.culture.et-EE.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture et-EE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "et-EE", "default", { - name: "et-EE", - englishName: "Estonian (Estonia)", - nativeName: "eesti (Eesti)", - language: "et", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "avaldamatu", - negativeInfinity: "miinuslõpmatus", - positiveInfinity: "plusslõpmatus", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], - namesAbbr: ["P","E","T","K","N","R","L"], - namesShort: ["P","E","T","K","N","R","L"] - }, - months: { - names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], - namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] - }, - AM: ["EL","el","EL"], - PM: ["PL","pl","PL"], - patterns: { - d: "d.MM.yyyy", - D: "d. MMMM yyyy'. a.'", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy'. a.' H:mm", - F: "d. MMMM yyyy'. a.' H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy'. a.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture et-EE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "et-EE", "default", { + name: "et-EE", + englishName: "Estonian (Estonia)", + nativeName: "eesti (Eesti)", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.et.js b/pub/lib/globalize/cultures/globalize.culture.et.js index 15de45fb6d55f..bfc90248e4be6 100644 --- a/pub/lib/globalize/cultures/globalize.culture.et.js +++ b/pub/lib/globalize/cultures/globalize.culture.et.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture et - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "et", "default", { - name: "et", - englishName: "Estonian", - nativeName: "eesti", - language: "et", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "avaldamatu", - negativeInfinity: "miinuslõpmatus", - positiveInfinity: "plusslõpmatus", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], - namesAbbr: ["P","E","T","K","N","R","L"], - namesShort: ["P","E","T","K","N","R","L"] - }, - months: { - names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], - namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] - }, - AM: ["EL","el","EL"], - PM: ["PL","pl","PL"], - patterns: { - d: "d.MM.yyyy", - D: "d. MMMM yyyy'. a.'", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy'. a.' H:mm", - F: "d. MMMM yyyy'. a.' H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy'. a.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture et + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "et", "default", { + name: "et", + englishName: "Estonian", + nativeName: "eesti", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.eu-ES.js b/pub/lib/globalize/cultures/globalize.culture.eu-ES.js index 9aea0043dd8aa..e46a36788a820 100644 --- a/pub/lib/globalize/cultures/globalize.culture.eu-ES.js +++ b/pub/lib/globalize/cultures/globalize.culture.eu-ES.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture eu-ES - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "eu-ES", "default", { - name: "eu-ES", - englishName: "Basque (Basque)", - nativeName: "euskara (euskara)", - language: "eu", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "EdZ", - negativeInfinity: "-Infinitu", - positiveInfinity: "Infinitu", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], - namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], - namesShort: ["ig","al","as","az","og","or","lr"] - }, - months: { - names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], - namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "dddd, yyyy.'eko' MMMM'k 'd", - t: "HH:mm", - T: "H:mm:ss", - f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", - F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", - Y: "yyyy.'eko' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture eu-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "eu-ES", "default", { + name: "eu-ES", + englishName: "Basque (Basque)", + nativeName: "euskara (euskara)", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.eu.js b/pub/lib/globalize/cultures/globalize.culture.eu.js index b55dea2d39f2e..e679e9727cf7b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.eu.js +++ b/pub/lib/globalize/cultures/globalize.culture.eu.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture eu - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "eu", "default", { - name: "eu", - englishName: "Basque", - nativeName: "euskara", - language: "eu", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "EdZ", - negativeInfinity: "-Infinitu", - positiveInfinity: "Infinitu", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], - namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], - namesShort: ["ig","al","as","az","og","or","lr"] - }, - months: { - names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], - namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "dddd, yyyy.'eko' MMMM'k 'd", - t: "HH:mm", - T: "H:mm:ss", - f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", - F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", - Y: "yyyy.'eko' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture eu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "eu", "default", { + name: "eu", + englishName: "Basque", + nativeName: "euskara", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fa-IR.js b/pub/lib/globalize/cultures/globalize.culture.fa-IR.js index a36c80e552432..61254e8f91a0b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fa-IR.js +++ b/pub/lib/globalize/cultures/globalize.culture.fa-IR.js @@ -1,213 +1,213 @@ -/** - * Globalize Culture fa-IR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fa-IR", "default", { - name: "fa-IR", - englishName: "Persian", - nativeName: "فارسى (ایران)", - language: "fa", - isRTL: true, - numberFormat: { - pattern: ["n-"], - currency: { - pattern: ["$n-","$ n"], - ".": "/", - symbol: "ريال" - } - }, - calendars: { - standard: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], - namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy/MM/dd", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "yyyy/MM/dd hh:mm tt", - F: "yyyy/MM/dd hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fa-IR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fa-IR", "default", { + name: "fa-IR", + englishName: "Persian", + nativeName: "فارسى (ایران)", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fa.js b/pub/lib/globalize/cultures/globalize.culture.fa.js index 3a268b332c8b9..ce702728d8b0b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fa.js +++ b/pub/lib/globalize/cultures/globalize.culture.fa.js @@ -1,213 +1,213 @@ -/** - * Globalize Culture fa - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fa", "default", { - name: "fa", - englishName: "Persian", - nativeName: "فارسى", - language: "fa", - isRTL: true, - numberFormat: { - pattern: ["n-"], - currency: { - pattern: ["$n-","$ n"], - ".": "/", - symbol: "ريال" - } - }, - calendars: { - standard: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], - namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy/MM/dd", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "yyyy/MM/dd hh:mm tt", - F: "yyyy/MM/dd hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fa", "default", { + name: "fa", + englishName: "Persian", + nativeName: "فارسى", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fi-FI.js b/pub/lib/globalize/cultures/globalize.culture.fi-FI.js index e589106537626..ea5c69d6edb66 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fi-FI.js +++ b/pub/lib/globalize/cultures/globalize.culture.fi-FI.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture fi-FI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fi-FI", "default", { - name: "fi-FI", - englishName: "Finnish (Finland)", - nativeName: "suomi (Suomi)", - language: "fi", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], - namesAbbr: ["su","ma","ti","ke","to","pe","la"], - namesShort: ["su","ma","ti","ke","to","pe","la"] - }, - months: { - names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], - namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM'ta 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM'ta 'yyyy H:mm", - F: "d. MMMM'ta 'yyyy H:mm:ss", - M: "d. MMMM'ta'", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fi-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fi-FI", "default", { + name: "fi-FI", + englishName: "Finnish (Finland)", + nativeName: "suomi (Suomi)", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fi.js b/pub/lib/globalize/cultures/globalize.culture.fi.js index a390de2ecfcfa..4dbf180ad579c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fi.js +++ b/pub/lib/globalize/cultures/globalize.culture.fi.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture fi - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fi", "default", { - name: "fi", - englishName: "Finnish", - nativeName: "suomi", - language: "fi", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], - namesAbbr: ["su","ma","ti","ke","to","pe","la"], - namesShort: ["su","ma","ti","ke","to","pe","la"] - }, - months: { - names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], - namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM'ta 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM'ta 'yyyy H:mm", - F: "d. MMMM'ta 'yyyy H:mm:ss", - M: "d. MMMM'ta'", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fi", "default", { + name: "fi", + englishName: "Finnish", + nativeName: "suomi", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fil-PH.js b/pub/lib/globalize/cultures/globalize.culture.fil-PH.js index cc3a923967b33..fbe076ae7a5ea 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fil-PH.js +++ b/pub/lib/globalize/cultures/globalize.culture.fil-PH.js @@ -1,54 +1,54 @@ -/** - * Globalize Culture fil-PH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fil-PH", "default", { - name: "fil-PH", - englishName: "Filipino (Philippines)", - nativeName: "Filipino (Pilipinas)", - language: "fil", - numberFormat: { - currency: { - symbol: "PhP" - } - }, - calendars: { - standard: { - days: { - names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], - namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], - namesShort: ["L","L","M","M","H","B","S"] - }, - months: { - names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], - namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] - }, - eras: [{"name":"Anno Domini","start":null,"offset":0}] - } - } -}); - -}( this )); +/** + * Globalize Culture fil-PH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fil-PH", "default", { + name: "fil-PH", + englishName: "Filipino (Philippines)", + nativeName: "Filipino (Pilipinas)", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fil.js b/pub/lib/globalize/cultures/globalize.culture.fil.js index 1769b6e9d36d8..4f8bf6c67c42f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fil.js +++ b/pub/lib/globalize/cultures/globalize.culture.fil.js @@ -1,54 +1,54 @@ -/** - * Globalize Culture fil - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fil", "default", { - name: "fil", - englishName: "Filipino", - nativeName: "Filipino", - language: "fil", - numberFormat: { - currency: { - symbol: "PhP" - } - }, - calendars: { - standard: { - days: { - names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], - namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], - namesShort: ["L","L","M","M","H","B","S"] - }, - months: { - names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], - namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] - }, - eras: [{"name":"Anno Domini","start":null,"offset":0}] - } - } -}); - -}( this )); +/** + * Globalize Culture fil + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fil", "default", { + name: "fil", + englishName: "Filipino", + nativeName: "Filipino", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fo-FO.js b/pub/lib/globalize/cultures/globalize.culture.fo-FO.js index 3d49644bc0cb9..d399f2b28f04c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fo-FO.js +++ b/pub/lib/globalize/cultures/globalize.culture.fo-FO.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fo-FO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fo-FO", "default", { - name: "fo-FO", - englishName: "Faroese (Faroe Islands)", - nativeName: "føroyskt (Føroyar)", - language: "fo", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], - namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], - namesShort: ["su","má","tý","mi","hó","fr","ley"] - }, - months: { - names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fo-FO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fo-FO", "default", { + name: "fo-FO", + englishName: "Faroese (Faroe Islands)", + nativeName: "føroyskt (Føroyar)", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fo.js b/pub/lib/globalize/cultures/globalize.culture.fo.js index 98d2d56fdabb2..13e8c5bd30af2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fo.js +++ b/pub/lib/globalize/cultures/globalize.culture.fo.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fo - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fo", "default", { - name: "fo", - englishName: "Faroese", - nativeName: "føroyskt", - language: "fo", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], - namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], - namesShort: ["su","má","tý","mi","hó","fr","ley"] - }, - months: { - names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fo", "default", { + name: "fo", + englishName: "Faroese", + nativeName: "føroyskt", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-BE.js b/pub/lib/globalize/cultures/globalize.culture.fr-BE.js index 479c9cd0d2613..2bc59957e8ca9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-BE.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-BE.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fr-BE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-BE", "default", { - name: "fr-BE", - englishName: "French (Belgium)", - nativeName: "français (Belgique)", - language: "fr", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "d/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-BE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-BE", "default", { + name: "fr-BE", + englishName: "French (Belgium)", + nativeName: "français (Belgique)", + language: "fr", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-CA.js b/pub/lib/globalize/cultures/globalize.culture.fr-CA.js index ac2d333f01dc2..b4f66b2f4e062 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-CA.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-CA.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture fr-CA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-CA", "default", { - name: "fr-CA", - englishName: "French (Canada)", - nativeName: "français (Canada)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["(n $)","n $"], - ",": " ", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-CA", "default", { + name: "fr-CA", + englishName: "French (Canada)", + nativeName: "français (Canada)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["(n $)","n $"], + ",": " ", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-CH.js b/pub/lib/globalize/cultures/globalize.culture.fr-CH.js index c3e7f812314c8..c482fcd5c075f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-CH.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-CH.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture fr-CH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-CH", "default", { - name: "fr-CH", - englishName: "French (Switzerland)", - nativeName: "français (Suisse)", - language: "fr", - numberFormat: { - ",": "'", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-CH", "default", { + name: "fr-CH", + englishName: "French (Switzerland)", + nativeName: "français (Suisse)", + language: "fr", + numberFormat: { + ",": "'", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-FR.js b/pub/lib/globalize/cultures/globalize.culture.fr-FR.js index 1be56c22ad152..4a2a05e1ab039 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-FR.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-FR.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fr-FR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-FR", "default", { - name: "fr-FR", - englishName: "French (France)", - nativeName: "français (France)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-FR", "default", { + name: "fr-FR", + englishName: "French (France)", + nativeName: "français (France)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-LU.js b/pub/lib/globalize/cultures/globalize.culture.fr-LU.js index 86d5c27e9ca8f..41bd90ac59573 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-LU.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-LU.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fr-LU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-LU", "default", { - name: "fr-LU", - englishName: "French (Luxembourg)", - nativeName: "français (Luxembourg)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-LU", "default", { + name: "fr-LU", + englishName: "French (Luxembourg)", + nativeName: "français (Luxembourg)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr-MC.js b/pub/lib/globalize/cultures/globalize.culture.fr-MC.js index dd9398d8fa7c0..a73831990f273 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr-MC.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr-MC.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fr-MC - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr-MC", "default", { - name: "fr-MC", - englishName: "French (Monaco)", - nativeName: "français (Principauté de Monaco)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr-MC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-MC", "default", { + name: "fr-MC", + englishName: "French (Monaco)", + nativeName: "français (Principauté de Monaco)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fr.js b/pub/lib/globalize/cultures/globalize.culture.fr.js index d4825b94cc251..3174e5a085908 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fr.js +++ b/pub/lib/globalize/cultures/globalize.culture.fr.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture fr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fr", "default", { - name: "fr", - englishName: "French", - nativeName: "français", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr", "default", { + name: "fr", + englishName: "French", + nativeName: "français", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fy-NL.js b/pub/lib/globalize/cultures/globalize.culture.fy-NL.js index d3d1604ebcd37..4e089ce6c4d5e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fy-NL.js +++ b/pub/lib/globalize/cultures/globalize.culture.fy-NL.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture fy-NL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fy-NL", "default", { - name: "fy-NL", - englishName: "Frisian (Netherlands)", - nativeName: "Frysk (Nederlân)", - language: "fy", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], - namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], - namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fy-NL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fy-NL", "default", { + name: "fy-NL", + englishName: "Frisian (Netherlands)", + nativeName: "Frysk (Nederlân)", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.fy.js b/pub/lib/globalize/cultures/globalize.culture.fy.js index 9f2d917e128ba..9ed1934e4f2f2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.fy.js +++ b/pub/lib/globalize/cultures/globalize.culture.fy.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture fy - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "fy", "default", { - name: "fy", - englishName: "Frisian", - nativeName: "Frysk", - language: "fy", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], - namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], - namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture fy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fy", "default", { + name: "fy", + englishName: "Frisian", + nativeName: "Frysk", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ga-IE.js b/pub/lib/globalize/cultures/globalize.culture.ga-IE.js index 8239d421c7015..b5dffdb25f56f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ga-IE.js +++ b/pub/lib/globalize/cultures/globalize.culture.ga-IE.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture ga-IE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ga-IE", "default", { - name: "ga-IE", - englishName: "Irish (Ireland)", - nativeName: "Gaeilge (Éire)", - language: "ga", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], - namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], - namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] - }, - months: { - names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], - namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] - }, - AM: ["r.n.","r.n.","R.N."], - PM: ["i.n.","i.n.","I.N."], - patterns: { - d: "dd/MM/yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ga-IE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ga-IE", "default", { + name: "ga-IE", + englishName: "Irish (Ireland)", + nativeName: "Gaeilge (Éire)", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ga.js b/pub/lib/globalize/cultures/globalize.culture.ga.js index ee7b8c9237e71..526a0300fd680 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ga.js +++ b/pub/lib/globalize/cultures/globalize.culture.ga.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture ga - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ga", "default", { - name: "ga", - englishName: "Irish", - nativeName: "Gaeilge", - language: "ga", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], - namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], - namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] - }, - months: { - names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], - namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] - }, - AM: ["r.n.","r.n.","R.N."], - PM: ["i.n.","i.n.","I.N."], - patterns: { - d: "dd/MM/yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ga + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ga", "default", { + name: "ga", + englishName: "Irish", + nativeName: "Gaeilge", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gd-GB.js b/pub/lib/globalize/cultures/globalize.culture.gd-GB.js index 011d0ab69e040..f5d3a0ecec152 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gd-GB.js +++ b/pub/lib/globalize/cultures/globalize.culture.gd-GB.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture gd-GB - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gd-GB", "default", { - name: "gd-GB", - englishName: "Scottish Gaelic (United Kingdom)", - nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", - language: "gd", - numberFormat: { - negativeInfinity: "-Neo-chrìochnachd", - positiveInfinity: "Neo-chrìochnachd", - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], - namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], - namesShort: ["D","L","M","C","A","H","S"] - }, - months: { - names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], - namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] - }, - AM: ["m","m","M"], - PM: ["f","f","F"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gd-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gd-GB", "default", { + name: "gd-GB", + englishName: "Scottish Gaelic (United Kingdom)", + nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gd.js b/pub/lib/globalize/cultures/globalize.culture.gd.js index bb8444bb9d269..11ce2b731ba1e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gd.js +++ b/pub/lib/globalize/cultures/globalize.culture.gd.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture gd - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gd", "default", { - name: "gd", - englishName: "Scottish Gaelic", - nativeName: "Gàidhlig", - language: "gd", - numberFormat: { - negativeInfinity: "-Neo-chrìochnachd", - positiveInfinity: "Neo-chrìochnachd", - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], - namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], - namesShort: ["D","L","M","C","A","H","S"] - }, - months: { - names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], - namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] - }, - AM: ["m","m","M"], - PM: ["f","f","F"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gd + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gd", "default", { + name: "gd", + englishName: "Scottish Gaelic", + nativeName: "Gàidhlig", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gl-ES.js b/pub/lib/globalize/cultures/globalize.culture.gl-ES.js index 1c733c13bd914..60d7e45155627 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gl-ES.js +++ b/pub/lib/globalize/cultures/globalize.culture.gl-ES.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture gl-ES - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gl-ES", "default", { - name: "gl-ES", - englishName: "Galician (Galician)", - nativeName: "galego (galego)", - language: "gl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], - namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], - namesShort: ["do","lu","ma","mé","xo","ve","sá"] - }, - months: { - names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], - namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gl-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gl-ES", "default", { + name: "gl-ES", + englishName: "Galician (Galician)", + nativeName: "galego (galego)", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gl.js b/pub/lib/globalize/cultures/globalize.culture.gl.js index 32adaea84fa0a..4c7095864d070 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gl.js +++ b/pub/lib/globalize/cultures/globalize.culture.gl.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture gl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gl", "default", { - name: "gl", - englishName: "Galician", - nativeName: "galego", - language: "gl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], - namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], - namesShort: ["do","lu","ma","mé","xo","ve","sá"] - }, - months: { - names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], - namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gl", "default", { + name: "gl", + englishName: "Galician", + nativeName: "galego", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gsw-FR.js b/pub/lib/globalize/cultures/globalize.culture.gsw-FR.js index a8b5cd1ab2dd0..47450c64be355 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gsw-FR.js +++ b/pub/lib/globalize/cultures/globalize.culture.gsw-FR.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture gsw-FR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gsw-FR", "default", { - name: "gsw-FR", - englishName: "Alsatian (France)", - nativeName: "Elsässisch (Frànkrisch)", - language: "gsw", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Ohne Nummer", - negativeInfinity: "-Unendlich", - positiveInfinity: "+Unendlich", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], - namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], - namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] - }, - months: { - names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], - namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] - }, - AM: null, - PM: null, - eras: [{"name":"Vor J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gsw-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gsw-FR", "default", { + name: "gsw-FR", + englishName: "Alsatian (France)", + nativeName: "Elsässisch (Frànkrisch)", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gsw.js b/pub/lib/globalize/cultures/globalize.culture.gsw.js index 9c6f72de8e69e..6f23fa6902626 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gsw.js +++ b/pub/lib/globalize/cultures/globalize.culture.gsw.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture gsw - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gsw", "default", { - name: "gsw", - englishName: "Alsatian", - nativeName: "Elsässisch", - language: "gsw", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Ohne Nummer", - negativeInfinity: "-Unendlich", - positiveInfinity: "+Unendlich", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], - namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], - namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] - }, - months: { - names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], - namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] - }, - AM: null, - PM: null, - eras: [{"name":"Vor J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gsw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gsw", "default", { + name: "gsw", + englishName: "Alsatian", + nativeName: "Elsässisch", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gu-IN.js b/pub/lib/globalize/cultures/globalize.culture.gu-IN.js index 4cc2989f109cc..b30c3c968c6b4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gu-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.gu-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture gu-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gu-IN", "default", { - name: "gu-IN", - englishName: "Gujarati (India)", - nativeName: "ગુજરાતી (ભારત)", - language: "gu", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "રૂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], - namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], - namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] - }, - months: { - names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], - namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] - }, - AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], - PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gu-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gu-IN", "default", { + name: "gu-IN", + englishName: "Gujarati (India)", + nativeName: "ગુજરાતી (ભારત)", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], + namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] + }, + AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], + PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.gu.js b/pub/lib/globalize/cultures/globalize.culture.gu.js index 8b64f81c92e98..783aba07a47b3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.gu.js +++ b/pub/lib/globalize/cultures/globalize.culture.gu.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture gu - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "gu", "default", { - name: "gu", - englishName: "Gujarati", - nativeName: "ગુજરાતી", - language: "gu", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "રૂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], - namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], - namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] - }, - months: { - names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], - namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] - }, - AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], - PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture gu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gu", "default", { + name: "gu", + englishName: "Gujarati", + nativeName: "ગુજરાતી", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], + namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] + }, + AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], + PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ha-Latn-NG.js b/pub/lib/globalize/cultures/globalize.culture.ha-Latn-NG.js index 7f0dac29ad4e0..c045adf68c5ef 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ha-Latn-NG.js +++ b/pub/lib/globalize/cultures/globalize.culture.ha-Latn-NG.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture ha-Latn-NG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ha-Latn-NG", "default", { - name: "ha-Latn-NG", - englishName: "Hausa (Latin, Nigeria)", - nativeName: "Hausa (Nigeria)", - language: "ha-Latn", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ha-Latn-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha-Latn-NG", "default", { + name: "ha-Latn-NG", + englishName: "Hausa (Latin, Nigeria)", + nativeName: "Hausa (Nigeria)", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ha-Latn.js b/pub/lib/globalize/cultures/globalize.culture.ha-Latn.js index e8eebfe457004..d7d094dd4babe 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ha-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.ha-Latn.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture ha-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ha-Latn", "default", { - name: "ha-Latn", - englishName: "Hausa (Latin)", - nativeName: "Hausa", - language: "ha-Latn", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ha-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha-Latn", "default", { + name: "ha-Latn", + englishName: "Hausa (Latin)", + nativeName: "Hausa", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ha.js b/pub/lib/globalize/cultures/globalize.culture.ha.js index 1ee2e88803759..ef6082f2c9eec 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ha.js +++ b/pub/lib/globalize/cultures/globalize.culture.ha.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture ha - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ha", "default", { - name: "ha", - englishName: "Hausa", - nativeName: "Hausa", - language: "ha", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ha + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha", "default", { + name: "ha", + englishName: "Hausa", + nativeName: "Hausa", + language: "ha", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.he-IL.js b/pub/lib/globalize/cultures/globalize.culture.he-IL.js index c903bd25e7eff..3ae63b184c42c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.he-IL.js +++ b/pub/lib/globalize/cultures/globalize.culture.he-IL.js @@ -1,97 +1,97 @@ -/** - * Globalize Culture he-IL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "he-IL", "default", { - name: "he-IL", - englishName: "Hebrew (Israel)", - nativeName: "עברית (ישראל)", - language: "he", - isRTL: true, - numberFormat: { - "NaN": "לא מספר", - negativeInfinity: "אינסוף שלילי", - positiveInfinity: "אינסוף חיובי", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "₪" - } - }, - calendars: { - standard: { - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], - namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] - }, - eras: [{"name":"לספירה","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Hebrew: { - name: "Hebrew", - "/": " ", - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], - namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] - }, - eras: [{"name":"C.E.","start":null,"offset":0}], - twoDigitYearMax: 5790, - patterns: { - d: "dd MMMM yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture he-IL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "he-IL", "default", { + name: "he-IL", + englishName: "Hebrew (Israel)", + nativeName: "עברית (ישראל)", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "לא מספר", + negativeInfinity: "אינסוף שלילי", + positiveInfinity: "אינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.he.js b/pub/lib/globalize/cultures/globalize.culture.he.js index f74a98df494c0..9f8410812f089 100644 --- a/pub/lib/globalize/cultures/globalize.culture.he.js +++ b/pub/lib/globalize/cultures/globalize.culture.he.js @@ -1,97 +1,97 @@ -/** - * Globalize Culture he - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "he", "default", { - name: "he", - englishName: "Hebrew", - nativeName: "עברית", - language: "he", - isRTL: true, - numberFormat: { - "NaN": "לא מספר", - negativeInfinity: "אינסוף שלילי", - positiveInfinity: "אינסוף חיובי", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "₪" - } - }, - calendars: { - standard: { - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], - namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] - }, - eras: [{"name":"לספירה","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Hebrew: { - name: "Hebrew", - "/": " ", - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], - namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] - }, - eras: [{"name":"C.E.","start":null,"offset":0}], - twoDigitYearMax: 5790, - patterns: { - d: "dd MMMM yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture he + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "he", "default", { + name: "he", + englishName: "Hebrew", + nativeName: "עברית", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "לא מספר", + negativeInfinity: "אינסוף שלילי", + positiveInfinity: "אינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hi-IN.js b/pub/lib/globalize/cultures/globalize.culture.hi-IN.js index 434ee9723be94..f944705ceb5ca 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hi-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.hi-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture hi-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hi-IN", "default", { - name: "hi-IN", - englishName: "Hindi (India)", - nativeName: "हिंदी (भारत)", - language: "hi", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hi-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hi-IN", "default", { + name: "hi-IN", + englishName: "Hindi (India)", + nativeName: "हिंदी (भारत)", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hi.js b/pub/lib/globalize/cultures/globalize.culture.hi.js index ddeb755e85a6a..3f114471d36c9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hi.js +++ b/pub/lib/globalize/cultures/globalize.culture.hi.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture hi - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hi", "default", { - name: "hi", - englishName: "Hindi", - nativeName: "हिंदी", - language: "hi", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hi", "default", { + name: "hi", + englishName: "Hindi", + nativeName: "हिंदी", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hr-BA.js b/pub/lib/globalize/cultures/globalize.culture.hr-BA.js index eeed904e0c994..4a56d92501fa8 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hr-BA.js +++ b/pub/lib/globalize/cultures/globalize.culture.hr-BA.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture hr-BA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hr-BA", "default", { - name: "hr-BA", - englishName: "Croatian (Latin, Bosnia and Herzegovina)", - nativeName: "hrvatski (Bosna i Hercegovina)", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hr-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr-BA", "default", { + name: "hr-BA", + englishName: "Croatian (Latin, Bosnia and Herzegovina)", + nativeName: "hrvatski (Bosna i Hercegovina)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hr-HR.js b/pub/lib/globalize/cultures/globalize.culture.hr-HR.js index db69aa6a06a64..6a8f5e1ad3db7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hr-HR.js +++ b/pub/lib/globalize/cultures/globalize.culture.hr-HR.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture hr-HR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hr-HR", "default", { - name: "hr-HR", - englishName: "Croatian (Croatia)", - nativeName: "hrvatski (Hrvatska)", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kn" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hr-HR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr-HR", "default", { + name: "hr-HR", + englishName: "Croatian (Croatia)", + nativeName: "hrvatski (Hrvatska)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hr.js b/pub/lib/globalize/cultures/globalize.culture.hr.js index e3559afaca927..4e8d799077722 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hr.js +++ b/pub/lib/globalize/cultures/globalize.culture.hr.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture hr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hr", "default", { - name: "hr", - englishName: "Croatian", - nativeName: "hrvatski", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kn" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr", "default", { + name: "hr", + englishName: "Croatian", + nativeName: "hrvatski", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hsb-DE.js b/pub/lib/globalize/cultures/globalize.culture.hsb-DE.js index f93bc3a0af629..844e462126219 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hsb-DE.js +++ b/pub/lib/globalize/cultures/globalize.culture.hsb-DE.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture hsb-DE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hsb-DE", "default", { - name: "hsb-DE", - englishName: "Upper Sorbian (Germany)", - nativeName: "hornjoserbšćina (Němska)", - language: "hsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekónčne", - positiveInfinity: "+njekónčne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], - namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], - namesShort: ["n","p","w","s","š","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'hodź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hsb-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hsb-DE", "default", { + name: "hsb-DE", + englishName: "Upper Sorbian (Germany)", + nativeName: "hornjoserbšćina (Němska)", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónčne", + positiveInfinity: "+njekónčne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], + namesShort: ["n","p","w","s","š","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hsb.js b/pub/lib/globalize/cultures/globalize.culture.hsb.js index 6efff777a80b0..9c0a861e6540c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hsb.js +++ b/pub/lib/globalize/cultures/globalize.culture.hsb.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture hsb - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hsb", "default", { - name: "hsb", - englishName: "Upper Sorbian", - nativeName: "hornjoserbšćina", - language: "hsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekónčne", - positiveInfinity: "+njekónčne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], - namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], - namesShort: ["n","p","w","s","š","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'hodź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hsb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hsb", "default", { + name: "hsb", + englishName: "Upper Sorbian", + nativeName: "hornjoserbšćina", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónčne", + positiveInfinity: "+njekónčne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], + namesShort: ["n","p","w","s","š","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hu-HU.js b/pub/lib/globalize/cultures/globalize.culture.hu-HU.js index 3750e5c770606..c709f9f3f06fb 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hu-HU.js +++ b/pub/lib/globalize/cultures/globalize.culture.hu-HU.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture hu-HU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hu-HU", "default", { - name: "hu-HU", - englishName: "Hungarian (Hungary)", - nativeName: "magyar (Magyarország)", - language: "hu", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nem szám", - negativeInfinity: "negatív végtelen", - positiveInfinity: "végtelen", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Ft" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], - namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], - namesShort: ["V","H","K","Sze","Cs","P","Szo"] - }, - months: { - names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], - namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] - }, - AM: ["de.","de.","DE."], - PM: ["du.","du.","DU."], - eras: [{"name":"i.sz.","start":null,"offset":0}], - patterns: { - d: "yyyy.MM.dd.", - D: "yyyy. MMMM d.", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy. MMMM d. H:mm", - F: "yyyy. MMMM d. H:mm:ss", - M: "MMMM d.", - Y: "yyyy. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hu-HU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hu-HU", "default", { + name: "hu-HU", + englishName: "Hungarian (Hungary)", + nativeName: "magyar (Magyarország)", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hu.js b/pub/lib/globalize/cultures/globalize.culture.hu.js index 3090e96acecf0..81c81884c134e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hu.js +++ b/pub/lib/globalize/cultures/globalize.culture.hu.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture hu - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hu", "default", { - name: "hu", - englishName: "Hungarian", - nativeName: "magyar", - language: "hu", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nem szám", - negativeInfinity: "negatív végtelen", - positiveInfinity: "végtelen", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Ft" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], - namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], - namesShort: ["V","H","K","Sze","Cs","P","Szo"] - }, - months: { - names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], - namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] - }, - AM: ["de.","de.","DE."], - PM: ["du.","du.","DU."], - eras: [{"name":"i.sz.","start":null,"offset":0}], - patterns: { - d: "yyyy.MM.dd.", - D: "yyyy. MMMM d.", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy. MMMM d. H:mm", - F: "yyyy. MMMM d. H:mm:ss", - M: "MMMM d.", - Y: "yyyy. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hu", "default", { + name: "hu", + englishName: "Hungarian", + nativeName: "magyar", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hy-AM.js b/pub/lib/globalize/cultures/globalize.culture.hy-AM.js index d605e0d6eb816..df4b6326e0ea3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hy-AM.js +++ b/pub/lib/globalize/cultures/globalize.culture.hy-AM.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture hy-AM - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hy-AM", "default", { - name: "hy-AM", - englishName: "Armenian (Armenia)", - nativeName: "Հայերեն (Հայաստան)", - language: "hy", - numberFormat: { - currency: { - pattern: ["-n $","n $"], - symbol: "դր." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], - namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], - namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] - }, - months: { - names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], - namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM, yyyy H:mm", - F: "d MMMM, yyyy H:mm:ss", - M: "d MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hy-AM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hy-AM", "default", { + name: "hy-AM", + englishName: "Armenian (Armenia)", + nativeName: "Հայերեն (Հայաստան)", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "դր." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], + namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], + namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] + }, + months: { + names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], + namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.hy.js b/pub/lib/globalize/cultures/globalize.culture.hy.js index f45de55bac30a..a419b5ea17215 100644 --- a/pub/lib/globalize/cultures/globalize.culture.hy.js +++ b/pub/lib/globalize/cultures/globalize.culture.hy.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture hy - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "hy", "default", { - name: "hy", - englishName: "Armenian", - nativeName: "Հայերեն", - language: "hy", - numberFormat: { - currency: { - pattern: ["-n $","n $"], - symbol: "դր." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], - namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], - namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] - }, - months: { - names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], - namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM, yyyy H:mm", - F: "d MMMM, yyyy H:mm:ss", - M: "d MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture hy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hy", "default", { + name: "hy", + englishName: "Armenian", + nativeName: "Հայերեն", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "դր." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], + namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], + namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] + }, + months: { + names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], + namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.id-ID.js b/pub/lib/globalize/cultures/globalize.culture.id-ID.js index 0891df0f1f6ff..cfad59ef655c5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.id-ID.js +++ b/pub/lib/globalize/cultures/globalize.culture.id-ID.js @@ -1,75 +1,75 @@ -/** - * Globalize Culture id-ID - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "id-ID", "default", { - name: "id-ID", - englishName: "Indonesian (Indonesia)", - nativeName: "Bahasa Indonesia (Indonesia)", - language: "id", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": ",", - symbol: "Rp" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], - namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], - namesShort: ["M","S","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture id-ID + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "id-ID", "default", { + name: "id-ID", + englishName: "Indonesian (Indonesia)", + nativeName: "Bahasa Indonesia (Indonesia)", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.id.js b/pub/lib/globalize/cultures/globalize.culture.id.js index 8bf6efabb0ef8..ca4a5e0133009 100644 --- a/pub/lib/globalize/cultures/globalize.culture.id.js +++ b/pub/lib/globalize/cultures/globalize.culture.id.js @@ -1,75 +1,75 @@ -/** - * Globalize Culture id - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "id", "default", { - name: "id", - englishName: "Indonesian", - nativeName: "Bahasa Indonesia", - language: "id", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": ",", - symbol: "Rp" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], - namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], - namesShort: ["M","S","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture id + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "id", "default", { + name: "id", + englishName: "Indonesian", + nativeName: "Bahasa Indonesia", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ig-NG.js b/pub/lib/globalize/cultures/globalize.culture.ig-NG.js index 57ccc10ce184c..38d57a116ba4b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ig-NG.js +++ b/pub/lib/globalize/cultures/globalize.culture.ig-NG.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture ig-NG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ig-NG", "default", { - name: "ig-NG", - englishName: "Igbo (Nigeria)", - nativeName: "Igbo (Nigeria)", - language: "ig", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], - namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] - }, - AM: ["Ututu","ututu","UTUTU"], - PM: ["Efifie","efifie","EFIFIE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ig-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ig-NG", "default", { + name: "ig-NG", + englishName: "Igbo (Nigeria)", + nativeName: "Igbo (Nigeria)", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ig.js b/pub/lib/globalize/cultures/globalize.culture.ig.js index bb740232e35c6..eb66b0df79fed 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ig.js +++ b/pub/lib/globalize/cultures/globalize.culture.ig.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture ig - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ig", "default", { - name: "ig", - englishName: "Igbo", - nativeName: "Igbo", - language: "ig", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], - namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] - }, - AM: ["Ututu","ututu","UTUTU"], - PM: ["Efifie","efifie","EFIFIE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ig + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ig", "default", { + name: "ig", + englishName: "Igbo", + nativeName: "Igbo", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ii-CN.js b/pub/lib/globalize/cultures/globalize.culture.ii-CN.js index 27ee580189c8a..e1a2b95609a3f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ii-CN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ii-CN.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture ii-CN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ii-CN", "default", { - name: "ii-CN", - englishName: "Yi (PRC)", - nativeName: "ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ)", - language: "ii", - numberFormat: { - groupSizes: [3,0], - "NaN": "ꌗꂷꀋꉬ", - negativeInfinity: "ꀄꊭꌐꀋꉆ", - positiveInfinity: "ꈤꇁꑖꀋꉬ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], - namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], - namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] - }, - months: { - names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], - namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] - }, - AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], - PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], - eras: [{"name":"ꇬꑼ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", - t: "tt h:mm", - T: "H:mm:ss", - f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", - F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", - M: "M'ꆪ' d'ꑍ'", - Y: "yyyy'ꈎ' M'ꆪ'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ii-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ii-CN", "default", { + name: "ii-CN", + englishName: "Yi (PRC)", + nativeName: "ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ)", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭꌐꀋꉆ", + positiveInfinity: "ꈤꇁꑖꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], + namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], + namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", + M: "M'ꆪ' d'ꑍ'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ii.js b/pub/lib/globalize/cultures/globalize.culture.ii.js index 4911ec19a14c0..118475d28da50 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ii.js +++ b/pub/lib/globalize/cultures/globalize.culture.ii.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture ii - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ii", "default", { - name: "ii", - englishName: "Yi", - nativeName: "ꆈꌠꁱꂷ", - language: "ii", - numberFormat: { - groupSizes: [3,0], - "NaN": "ꌗꂷꀋꉬ", - negativeInfinity: "ꀄꊭꌐꀋꉆ", - positiveInfinity: "ꈤꇁꑖꀋꉬ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], - namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], - namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] - }, - months: { - names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], - namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] - }, - AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], - PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], - eras: [{"name":"ꇬꑼ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", - t: "tt h:mm", - T: "H:mm:ss", - f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", - F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", - M: "M'ꆪ' d'ꑍ'", - Y: "yyyy'ꈎ' M'ꆪ'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ii + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ii", "default", { + name: "ii", + englishName: "Yi", + nativeName: "ꆈꌠꁱꂷ", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭꌐꀋꉆ", + positiveInfinity: "ꈤꇁꑖꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], + namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], + namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", + M: "M'ꆪ' d'ꑍ'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.is-IS.js b/pub/lib/globalize/cultures/globalize.culture.is-IS.js index a801eadc6da61..79d7b38edc81d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.is-IS.js +++ b/pub/lib/globalize/cultures/globalize.culture.is-IS.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture is-IS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "is-IS", "default", { - name: "is-IS", - englishName: "Icelandic (Iceland)", - nativeName: "íslenska (Ísland)", - language: "is", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], - namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], - namesShort: ["su","má","þr","mi","fi","fö","la"] - }, - months: { - names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], - namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture is-IS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "is-IS", "default", { + name: "is-IS", + englishName: "Icelandic (Iceland)", + nativeName: "íslenska (Ísland)", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.is.js b/pub/lib/globalize/cultures/globalize.culture.is.js index 1816ad60c2588..b85d71a2cf7c2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.is.js +++ b/pub/lib/globalize/cultures/globalize.culture.is.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture is - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "is", "default", { - name: "is", - englishName: "Icelandic", - nativeName: "íslenska", - language: "is", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], - namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], - namesShort: ["su","má","þr","mi","fi","fö","la"] - }, - months: { - names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], - namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture is + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "is", "default", { + name: "is", + englishName: "Icelandic", + nativeName: "íslenska", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.it-CH.js b/pub/lib/globalize/cultures/globalize.culture.it-CH.js index 0aab8aa4df269..2fafce70add52 100644 --- a/pub/lib/globalize/cultures/globalize.culture.it-CH.js +++ b/pub/lib/globalize/cultures/globalize.culture.it-CH.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture it-CH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "it-CH", "default", { - name: "it-CH", - englishName: "Italian (Switzerland)", - nativeName: "italiano (Svizzera)", - language: "it", - numberFormat: { - ",": "'", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture it-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it-CH", "default", { + name: "it-CH", + englishName: "Italian (Switzerland)", + nativeName: "italiano (Svizzera)", + language: "it", + numberFormat: { + ",": "'", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.it-IT.js b/pub/lib/globalize/cultures/globalize.culture.it-IT.js index 746254ebdb54f..09689b2f76d60 100644 --- a/pub/lib/globalize/cultures/globalize.culture.it-IT.js +++ b/pub/lib/globalize/cultures/globalize.culture.it-IT.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture it-IT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "it-IT", "default", { - name: "it-IT", - englishName: "Italian (Italy)", - nativeName: "italiano (Italia)", - language: "it", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture it-IT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it-IT", "default", { + name: "it-IT", + englishName: "Italian (Italy)", + nativeName: "italiano (Italia)", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.it.js b/pub/lib/globalize/cultures/globalize.culture.it.js index 09b55a7f0fe0d..07295da3cbfbd 100644 --- a/pub/lib/globalize/cultures/globalize.culture.it.js +++ b/pub/lib/globalize/cultures/globalize.culture.it.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture it - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "it", "default", { - name: "it", - englishName: "Italian", - nativeName: "italiano", - language: "it", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture it + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it", "default", { + name: "it", + englishName: "Italian", + nativeName: "italiano", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.iu-Cans-CA.js b/pub/lib/globalize/cultures/globalize.culture.iu-Cans-CA.js index 2b0a334f47acd..8e22219b6c4d3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.iu-Cans-CA.js +++ b/pub/lib/globalize/cultures/globalize.culture.iu-Cans-CA.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture iu-Cans-CA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "iu-Cans-CA", "default", { - name: "iu-Cans-CA", - englishName: "Inuktitut (Syllabics, Canada)", - nativeName: "ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕᒥ)", - language: "iu-Cans", - numberFormat: { - groupSizes: [3,0], - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], - namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], - namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] - }, - months: { - names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], - namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd,MMMM dd,yyyy", - f: "dddd,MMMM dd,yyyy h:mm tt", - F: "dddd,MMMM dd,yyyy h:mm:ss tt", - Y: "MMMM,yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture iu-Cans-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Cans-CA", "default", { + name: "iu-Cans-CA", + englishName: "Inuktitut (Syllabics, Canada)", + nativeName: "ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕᒥ)", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], + namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], + namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] + }, + months: { + names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], + namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.iu-Cans.js b/pub/lib/globalize/cultures/globalize.culture.iu-Cans.js index 787facd693565..412c6d54adcd7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.iu-Cans.js +++ b/pub/lib/globalize/cultures/globalize.culture.iu-Cans.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture iu-Cans - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "iu-Cans", "default", { - name: "iu-Cans", - englishName: "Inuktitut (Syllabics)", - nativeName: "ᐃᓄᒃᑎᑐᑦ", - language: "iu-Cans", - numberFormat: { - groupSizes: [3,0], - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], - namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], - namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] - }, - months: { - names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], - namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd,MMMM dd,yyyy", - f: "dddd,MMMM dd,yyyy h:mm tt", - F: "dddd,MMMM dd,yyyy h:mm:ss tt", - Y: "MMMM,yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture iu-Cans + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Cans", "default", { + name: "iu-Cans", + englishName: "Inuktitut (Syllabics)", + nativeName: "ᐃᓄᒃᑎᑐᑦ", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], + namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], + namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] + }, + months: { + names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], + namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.iu-Latn-CA.js b/pub/lib/globalize/cultures/globalize.culture.iu-Latn-CA.js index 98f2d7778dd60..9fe0b1802b5ef 100644 --- a/pub/lib/globalize/cultures/globalize.culture.iu-Latn-CA.js +++ b/pub/lib/globalize/cultures/globalize.culture.iu-Latn-CA.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture iu-Latn-CA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "iu-Latn-CA", "default", { - name: "iu-Latn-CA", - englishName: "Inuktitut (Latin, Canada)", - nativeName: "Inuktitut (Kanatami)", - language: "iu-Latn", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture iu-Latn-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Latn-CA", "default", { + name: "iu-Latn-CA", + englishName: "Inuktitut (Latin, Canada)", + nativeName: "Inuktitut (Kanatami)", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.iu-Latn.js b/pub/lib/globalize/cultures/globalize.culture.iu-Latn.js index 6cf7082ba8456..0b9d5644e4d1b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.iu-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.iu-Latn.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture iu-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "iu-Latn", "default", { - name: "iu-Latn", - englishName: "Inuktitut (Latin)", - nativeName: "Inuktitut", - language: "iu-Latn", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture iu-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Latn", "default", { + name: "iu-Latn", + englishName: "Inuktitut (Latin)", + nativeName: "Inuktitut", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.iu.js b/pub/lib/globalize/cultures/globalize.culture.iu.js index 40aa9e42b9714..fce460de0d595 100644 --- a/pub/lib/globalize/cultures/globalize.culture.iu.js +++ b/pub/lib/globalize/cultures/globalize.culture.iu.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture iu - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "iu", "default", { - name: "iu", - englishName: "Inuktitut", - nativeName: "Inuktitut", - language: "iu", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -}( this )); +/** + * Globalize Culture iu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu", "default", { + name: "iu", + englishName: "Inuktitut", + nativeName: "Inuktitut", + language: "iu", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ja-JP.js b/pub/lib/globalize/cultures/globalize.culture.ja-JP.js index 90b8fd41442dd..004dca2ca908d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ja-JP.js +++ b/pub/lib/globalize/cultures/globalize.culture.ja-JP.js @@ -1,100 +1,100 @@ -/** - * Globalize Culture ja-JP - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ja-JP", "default", { - name: "ja-JP", - englishName: "Japanese (Japan)", - nativeName: "日本語 (日本)", - language: "ja", - numberFormat: { - "NaN": "NaN (非数値)", - negativeInfinity: "-∞", - positiveInfinity: "+∞", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"西暦","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Japanese: { - name: "Japanese", - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], - twoDigitYearMax: 99, - patterns: { - d: "gg y/M/d", - D: "gg y'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "gg y'年'M'月'd'日' H:mm", - F: "gg y'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "gg y'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ja-JP + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ja-JP", "default", { + name: "ja-JP", + englishName: "Japanese (Japan)", + nativeName: "日本語 (日本)", + language: "ja", + numberFormat: { + "NaN": "NaN (非数値)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'年'M'月'd'日' H:mm", + F: "gg y'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "gg y'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ja.js b/pub/lib/globalize/cultures/globalize.culture.ja.js index c568a39b7a5ef..1ef62f34fed79 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ja.js +++ b/pub/lib/globalize/cultures/globalize.culture.ja.js @@ -1,100 +1,100 @@ -/** - * Globalize Culture ja - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ja", "default", { - name: "ja", - englishName: "Japanese", - nativeName: "日本語", - language: "ja", - numberFormat: { - "NaN": "NaN (非数値)", - negativeInfinity: "-∞", - positiveInfinity: "+∞", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"西暦","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Japanese: { - name: "Japanese", - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], - twoDigitYearMax: 99, - patterns: { - d: "gg y/M/d", - D: "gg y'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "gg y'年'M'月'd'日' H:mm", - F: "gg y'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "gg y'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ja + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ja", "default", { + name: "ja", + englishName: "Japanese", + nativeName: "日本語", + language: "ja", + numberFormat: { + "NaN": "NaN (非数値)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'年'M'月'd'日' H:mm", + F: "gg y'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "gg y'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ka-GE.js b/pub/lib/globalize/cultures/globalize.culture.ka-GE.js index 05c46aa33f5de..6df1f6abbe64f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ka-GE.js +++ b/pub/lib/globalize/cultures/globalize.culture.ka-GE.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture ka-GE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ka-GE", "default", { - name: "ka-GE", - englishName: "Georgian (Georgia)", - nativeName: "ქართული (საქართველო)", - language: "ka", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Lari" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] - }, - months: { - names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], - namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'წლის' dd MM, dddd", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'წლის' dd MM, dddd H:mm", - F: "yyyy 'წლის' dd MM, dddd H:mm:ss", - M: "dd MM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ka-GE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ka-GE", "default", { + name: "ka-GE", + englishName: "Georgian (Georgia)", + nativeName: "ქართული (საქართველო)", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] + }, + months: { + names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], + namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ka.js b/pub/lib/globalize/cultures/globalize.culture.ka.js index 9eba5ef63d730..ebf16c5990a3e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ka.js +++ b/pub/lib/globalize/cultures/globalize.culture.ka.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture ka - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ka", "default", { - name: "ka", - englishName: "Georgian", - nativeName: "ქართული", - language: "ka", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Lari" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] - }, - months: { - names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], - namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'წლის' dd MM, dddd", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'წლის' dd MM, dddd H:mm", - F: "yyyy 'წლის' dd MM, dddd H:mm:ss", - M: "dd MM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ka + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ka", "default", { + name: "ka", + englishName: "Georgian", + nativeName: "ქართული", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] + }, + months: { + names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], + namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kk-KZ.js b/pub/lib/globalize/cultures/globalize.culture.kk-KZ.js index 2d362747c2d9c..160d8cfee716a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kk-KZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.kk-KZ.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture kk-KZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kk-KZ", "default", { - name: "kk-KZ", - englishName: "Kazakh (Kazakhstan)", - nativeName: "Қазақ (Қазақстан)", - language: "kk", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$n","$n"], - ",": " ", - ".": "-", - symbol: "Т" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], - namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], - namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] - }, - months: { - names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], - namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'ж.' H:mm", - F: "d MMMM yyyy 'ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kk-KZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kk-KZ", "default", { + name: "kk-KZ", + englishName: "Kazakh (Kazakhstan)", + nativeName: "Қазақ (Қазақстан)", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], + namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], + namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kk.js b/pub/lib/globalize/cultures/globalize.culture.kk.js index 3dbfb2ab06b3d..c20f52bc8ae66 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kk.js +++ b/pub/lib/globalize/cultures/globalize.culture.kk.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture kk - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kk", "default", { - name: "kk", - englishName: "Kazakh", - nativeName: "Қазақ", - language: "kk", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$n","$n"], - ",": " ", - ".": "-", - symbol: "Т" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], - namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], - namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] - }, - months: { - names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], - namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'ж.' H:mm", - F: "d MMMM yyyy 'ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kk", "default", { + name: "kk", + englishName: "Kazakh", + nativeName: "Қазақ", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], + namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], + namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kl-GL.js b/pub/lib/globalize/cultures/globalize.culture.kl-GL.js index 9510f1083ae48..761cb97507e2e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kl-GL.js +++ b/pub/lib/globalize/cultures/globalize.culture.kl-GL.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture kl-GL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kl-GL", "default", { - name: "kl-GL", - englishName: "Greenlandic (Greenland)", - nativeName: "kalaallisut (Kalaallit Nunaat)", - language: "kl", - numberFormat: { - ",": ".", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - groupSizes: [3,0], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], - namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], - namesShort: ["sa","at","ma","pi","si","ta","ar"] - }, - months: { - names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kl-GL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kl-GL", "default", { + name: "kl-GL", + englishName: "Greenlandic (Greenland)", + nativeName: "kalaallisut (Kalaallit Nunaat)", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kl.js b/pub/lib/globalize/cultures/globalize.culture.kl.js index 4b34c31f1ab5c..284e6232b48c7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kl.js +++ b/pub/lib/globalize/cultures/globalize.culture.kl.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture kl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kl", "default", { - name: "kl", - englishName: "Greenlandic", - nativeName: "kalaallisut", - language: "kl", - numberFormat: { - ",": ".", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - groupSizes: [3,0], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], - namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], - namesShort: ["sa","at","ma","pi","si","ta","ar"] - }, - months: { - names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kl", "default", { + name: "kl", + englishName: "Greenlandic", + nativeName: "kalaallisut", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.km-KH.js b/pub/lib/globalize/cultures/globalize.culture.km-KH.js index 8af6f2ed53865..3510798de5757 100644 --- a/pub/lib/globalize/cultures/globalize.culture.km-KH.js +++ b/pub/lib/globalize/cultures/globalize.culture.km-KH.js @@ -1,99 +1,99 @@ -/** - * Globalize Culture km-KH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "km-KH", "default", { - name: "km-KH", - englishName: "Khmer (Cambodia)", - nativeName: "ខ្មែរ (កម្ពុជា)", - language: "km", - numberFormat: { - pattern: ["- n"], - groupSizes: [3,0], - "NaN": "NAN", - negativeInfinity: "-- អនន្ត", - positiveInfinity: "អនន្ត", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["-n$","n$"], - symbol: "៛" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], - namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], - namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] - }, - months: { - names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], - namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "d MMMM yyyy H:mm tt", - F: "d MMMM yyyy HH:mm:ss", - M: "'ថ្ងៃទី' dd 'ខែ' MM", - Y: "'ខែ' MM 'ឆ្នាំ' yyyy" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm tt", - F: "dddd, MMMM dd, yyyy HH:mm:ss" - } - } - } -}); - -}( this )); +/** + * Globalize Culture km-KH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "km-KH", "default", { + name: "km-KH", + englishName: "Khmer (Cambodia)", + nativeName: "ខ្មែរ (កម្ពុជា)", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្ត", + positiveInfinity: "អនន្ត", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], + namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], + namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ថ្ងៃទី' dd 'ខែ' MM", + Y: "'ខែ' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.km.js b/pub/lib/globalize/cultures/globalize.culture.km.js index 6dddec5b95dbf..0e84cd28a9905 100644 --- a/pub/lib/globalize/cultures/globalize.culture.km.js +++ b/pub/lib/globalize/cultures/globalize.culture.km.js @@ -1,99 +1,99 @@ -/** - * Globalize Culture km - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "km", "default", { - name: "km", - englishName: "Khmer", - nativeName: "ខ្មែរ", - language: "km", - numberFormat: { - pattern: ["- n"], - groupSizes: [3,0], - "NaN": "NAN", - negativeInfinity: "-- អនន្ត", - positiveInfinity: "អនន្ត", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["-n$","n$"], - symbol: "៛" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], - namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], - namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] - }, - months: { - names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], - namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "d MMMM yyyy H:mm tt", - F: "d MMMM yyyy HH:mm:ss", - M: "'ថ្ងៃទី' dd 'ខែ' MM", - Y: "'ខែ' MM 'ឆ្នាំ' yyyy" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm tt", - F: "dddd, MMMM dd, yyyy HH:mm:ss" - } - } - } -}); - -}( this )); +/** + * Globalize Culture km + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "km", "default", { + name: "km", + englishName: "Khmer", + nativeName: "ខ្មែរ", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្ត", + positiveInfinity: "អនន្ត", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], + namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], + namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ថ្ងៃទី' dd 'ខែ' MM", + Y: "'ខែ' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kn-IN.js b/pub/lib/globalize/cultures/globalize.culture.kn-IN.js index d48874af7e701..59176cf311c56 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kn-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.kn-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture kn-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kn-IN", "default", { - name: "kn-IN", - englishName: "Kannada (India)", - nativeName: "ಕನ್ನಡ (ಭಾರತ)", - language: "kn", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ರೂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], - namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], - namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] - }, - months: { - names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], - namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] - }, - AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], - PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kn-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kn-IN", "default", { + name: "kn-IN", + englishName: "Kannada (India)", + nativeName: "ಕನ್ನಡ (ಭಾರತ)", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] + }, + AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], + PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kn.js b/pub/lib/globalize/cultures/globalize.culture.kn.js index 8409d1cd282fe..0887111733c0d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kn.js +++ b/pub/lib/globalize/cultures/globalize.culture.kn.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture kn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kn", "default", { - name: "kn", - englishName: "Kannada", - nativeName: "ಕನ್ನಡ", - language: "kn", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ರೂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], - namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], - namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] - }, - months: { - names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], - namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] - }, - AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], - PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kn", "default", { + name: "kn", + englishName: "Kannada", + nativeName: "ಕನ್ನಡ", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] + }, + AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], + PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ko-KR.js b/pub/lib/globalize/cultures/globalize.culture.ko-KR.js index 191b96de39da1..db8705ed33f76 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ko-KR.js +++ b/pub/lib/globalize/cultures/globalize.culture.ko-KR.js @@ -1,96 +1,96 @@ -/** - * Globalize Culture ko-KR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ko-KR", "default", { - name: "ko-KR", - englishName: "Korean (Korea)", - nativeName: "한국어 (대한민국)", - language: "ko", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "₩" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"서기","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'년' M'월' d'일' dddd tt h:mm", - F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "yyyy'년' M'월'" - } - }, - Korean: { - name: "Korean", - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"단기","start":null,"offset":-2333}], - twoDigitYearMax: 4362, - patterns: { - d: "gg yyyy-MM-dd", - D: "gg yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", - F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "gg yyyy'년' M'월'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ko-KR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ko-KR", "default", { + name: "ko-KR", + englishName: "Korean (Korea)", + nativeName: "한국어 (대한민국)", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "₩" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'년' M'월' d'일' dddd tt h:mm", + F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "yyyy'년' M'월'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", + F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "gg yyyy'년' M'월'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ko.js b/pub/lib/globalize/cultures/globalize.culture.ko.js index 10e586541befe..339a3a2fdd05c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ko.js +++ b/pub/lib/globalize/cultures/globalize.culture.ko.js @@ -1,96 +1,96 @@ -/** - * Globalize Culture ko - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ko", "default", { - name: "ko", - englishName: "Korean", - nativeName: "한국어", - language: "ko", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "₩" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"서기","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'년' M'월' d'일' dddd tt h:mm", - F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "yyyy'년' M'월'" - } - }, - Korean: { - name: "Korean", - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"단기","start":null,"offset":-2333}], - twoDigitYearMax: 4362, - patterns: { - d: "gg yyyy-MM-dd", - D: "gg yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", - F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "gg yyyy'년' M'월'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ko + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ko", "default", { + name: "ko", + englishName: "Korean", + nativeName: "한국어", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "₩" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'년' M'월' d'일' dddd tt h:mm", + F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "yyyy'년' M'월'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", + F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "gg yyyy'년' M'월'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kok-IN.js b/pub/lib/globalize/cultures/globalize.culture.kok-IN.js index a950f7ee4ee23..77428c448a358 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kok-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.kok-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture kok-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kok-IN", "default", { - name: "kok-IN", - englishName: "Konkani (India)", - nativeName: "कोंकणी (भारत)", - language: "kok", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], - namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], - namesShort: ["आ","स","म","ब","ब","स","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], - namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kok-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kok-IN", "default", { + name: "kok-IN", + englishName: "Konkani (India)", + nativeName: "कोंकणी (भारत)", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.kok.js b/pub/lib/globalize/cultures/globalize.culture.kok.js index 1dd0ec2b1edca..1ce96c3e1e081 100644 --- a/pub/lib/globalize/cultures/globalize.culture.kok.js +++ b/pub/lib/globalize/cultures/globalize.culture.kok.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture kok - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "kok", "default", { - name: "kok", - englishName: "Konkani", - nativeName: "कोंकणी", - language: "kok", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], - namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], - namesShort: ["आ","स","म","ब","ब","स","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], - namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture kok + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kok", "default", { + name: "kok", + englishName: "Konkani", + nativeName: "कोंकणी", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ky-KG.js b/pub/lib/globalize/cultures/globalize.culture.ky-KG.js index 6747b6b53526b..7e268a3ce002f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ky-KG.js +++ b/pub/lib/globalize/cultures/globalize.culture.ky-KG.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture ky-KG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ky-KG", "default", { - name: "ky-KG", - englishName: "Kyrgyz (Kyrgyzstan)", - nativeName: "Кыргыз (Кыргызстан)", - language: "ky", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": "-", - symbol: "сом" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], - namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], - namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d'-'MMMM yyyy'-ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d'-'MMMM yyyy'-ж.' H:mm", - F: "d'-'MMMM yyyy'-ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy'-ж.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ky-KG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ky-KG", "default", { + name: "ky-KG", + englishName: "Kyrgyz (Kyrgyzstan)", + nativeName: "Кыргыз (Кыргызстан)", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "сом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ky.js b/pub/lib/globalize/cultures/globalize.culture.ky.js index 4854462ae0b8d..694eb1488fae6 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ky.js +++ b/pub/lib/globalize/cultures/globalize.culture.ky.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture ky - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ky", "default", { - name: "ky", - englishName: "Kyrgyz", - nativeName: "Кыргыз", - language: "ky", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": "-", - symbol: "сом" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], - namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], - namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d'-'MMMM yyyy'-ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d'-'MMMM yyyy'-ж.' H:mm", - F: "d'-'MMMM yyyy'-ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy'-ж.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ky + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ky", "default", { + name: "ky", + englishName: "Kyrgyz", + nativeName: "Кыргыз", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "сом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lb-LU.js b/pub/lib/globalize/cultures/globalize.culture.lb-LU.js index c5091bc655c69..73d3f760eee89 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lb-LU.js +++ b/pub/lib/globalize/cultures/globalize.culture.lb-LU.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture lb-LU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lb-LU", "default", { - name: "lb-LU", - englishName: "Luxembourgish (Luxembourg)", - nativeName: "Lëtzebuergesch (Luxembourg)", - language: "lb", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "n. num.", - negativeInfinity: "-onendlech", - positiveInfinity: "+onendlech", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], - namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], - namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lb-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lb-LU", "default", { + name: "lb-LU", + englishName: "Luxembourgish (Luxembourg)", + nativeName: "Lëtzebuergesch (Luxembourg)", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lb.js b/pub/lib/globalize/cultures/globalize.culture.lb.js index c7a7012a97f5c..3cbb43aa518b0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lb.js +++ b/pub/lib/globalize/cultures/globalize.culture.lb.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture lb - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lb", "default", { - name: "lb", - englishName: "Luxembourgish", - nativeName: "Lëtzebuergesch", - language: "lb", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "n. num.", - negativeInfinity: "-onendlech", - positiveInfinity: "+onendlech", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], - namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], - namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lb", "default", { + name: "lb", + englishName: "Luxembourgish", + nativeName: "Lëtzebuergesch", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lo-LA.js b/pub/lib/globalize/cultures/globalize.culture.lo-LA.js index 3290e479e80ec..384d53f458d1b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lo-LA.js +++ b/pub/lib/globalize/cultures/globalize.culture.lo-LA.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture lo-LA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lo-LA", "default", { - name: "lo-LA", - englishName: "Lao (Lao P.D.R.)", - nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", - language: "lo", - numberFormat: { - pattern: ["(n)"], - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - }, - currency: { - pattern: ["(n$)","n$"], - groupSizes: [3,0], - symbol: "₭" - } - }, - calendars: { - standard: { - days: { - names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], - namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], - namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] - }, - months: { - names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], - namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] - }, - AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], - PM: ["ແລງ","ແລງ","ແລງ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dd MMMM yyyy H:mm tt", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lo-LA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lo-LA", "default", { + name: "lo-LA", + englishName: "Lao (Lao P.D.R.)", + nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "₭" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], + namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["ແລງ","ແລງ","ແລງ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lo.js b/pub/lib/globalize/cultures/globalize.culture.lo.js index 25e2db791102f..bfc8c7b997d1a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lo.js +++ b/pub/lib/globalize/cultures/globalize.culture.lo.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture lo - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lo", "default", { - name: "lo", - englishName: "Lao", - nativeName: "ລາວ", - language: "lo", - numberFormat: { - pattern: ["(n)"], - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - }, - currency: { - pattern: ["(n$)","n$"], - groupSizes: [3,0], - symbol: "₭" - } - }, - calendars: { - standard: { - days: { - names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], - namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], - namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] - }, - months: { - names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], - namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] - }, - AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], - PM: ["ແລງ","ແລງ","ແລງ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dd MMMM yyyy H:mm tt", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lo", "default", { + name: "lo", + englishName: "Lao", + nativeName: "ລາວ", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "₭" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], + namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["ແລງ","ແລງ","ແລງ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lt-LT.js b/pub/lib/globalize/cultures/globalize.culture.lt-LT.js index dd2c97d90a1e6..84548fcbb9808 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lt-LT.js +++ b/pub/lib/globalize/cultures/globalize.culture.lt-LT.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture lt-LT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lt-LT", "default", { - name: "lt-LT", - englishName: "Lithuanian (Lithuania)", - nativeName: "lietuvių (Lietuva)", - language: "lt", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-begalybė", - positiveInfinity: "begalybė", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Lt" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], - namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], - namesShort: ["S","P","A","T","K","Pn","Š"] - }, - months: { - names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - monthsGenitive: { - names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd", - D: "yyyy 'm.' MMMM d 'd.'", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'm.' MMMM d 'd.' HH:mm", - F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", - M: "MMMM d 'd.'", - Y: "yyyy 'm.' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lt-LT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lt-LT", "default", { + name: "lt-LT", + englishName: "Lithuanian (Lithuania)", + nativeName: "lietuvių (Lietuva)", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybė", + positiveInfinity: "begalybė", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], + namesShort: ["S","P","A","T","K","Pn","Š"] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lt.js b/pub/lib/globalize/cultures/globalize.culture.lt.js index 0cb5f51d1cb41..540f87e121402 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lt.js +++ b/pub/lib/globalize/cultures/globalize.culture.lt.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture lt - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lt", "default", { - name: "lt", - englishName: "Lithuanian", - nativeName: "lietuvių", - language: "lt", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-begalybė", - positiveInfinity: "begalybė", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Lt" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], - namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], - namesShort: ["S","P","A","T","K","Pn","Š"] - }, - months: { - names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - monthsGenitive: { - names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd", - D: "yyyy 'm.' MMMM d 'd.'", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'm.' MMMM d 'd.' HH:mm", - F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", - M: "MMMM d 'd.'", - Y: "yyyy 'm.' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lt", "default", { + name: "lt", + englishName: "Lithuanian", + nativeName: "lietuvių", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybė", + positiveInfinity: "begalybė", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], + namesShort: ["S","P","A","T","K","Pn","Š"] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lv-LV.js b/pub/lib/globalize/cultures/globalize.culture.lv-LV.js index 2e86e36dbbbf6..f38e38cb00e3a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lv-LV.js +++ b/pub/lib/globalize/cultures/globalize.culture.lv-LV.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture lv-LV - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lv-LV", "default", { - name: "lv-LV", - englishName: "Latvian (Latvia)", - nativeName: "latviešu (Latvija)", - language: "lv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-bezgalība", - positiveInfinity: "bezgalība", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": " ", - ".": ",", - symbol: "Ls" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], - namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], - namesShort: ["sv","pr","ot","tr","ce","pk","se"] - }, - months: { - names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - monthsGenitive: { - names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd.", - D: "dddd, yyyy'. gada 'd. MMMM", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, yyyy'. gada 'd. MMMM H:mm", - F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", - M: "d. MMMM", - Y: "yyyy. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lv-LV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lv-LV", "default", { + name: "lv-LV", + englishName: "Latvian (Latvia)", + nativeName: "latviešu (Latvija)", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalība", + positiveInfinity: "bezgalība", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.lv.js b/pub/lib/globalize/cultures/globalize.culture.lv.js index 329184dae74a8..8131b557a92ad 100644 --- a/pub/lib/globalize/cultures/globalize.culture.lv.js +++ b/pub/lib/globalize/cultures/globalize.culture.lv.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture lv - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "lv", "default", { - name: "lv", - englishName: "Latvian", - nativeName: "latviešu", - language: "lv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-bezgalība", - positiveInfinity: "bezgalība", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": " ", - ".": ",", - symbol: "Ls" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], - namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], - namesShort: ["sv","pr","ot","tr","ce","pk","se"] - }, - months: { - names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - monthsGenitive: { - names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd.", - D: "dddd, yyyy'. gada 'd. MMMM", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, yyyy'. gada 'd. MMMM H:mm", - F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", - M: "d. MMMM", - Y: "yyyy. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture lv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lv", "default", { + name: "lv", + englishName: "Latvian", + nativeName: "latviešu", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalība", + positiveInfinity: "bezgalība", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mi-NZ.js b/pub/lib/globalize/cultures/globalize.culture.mi-NZ.js index ded58827c2dfc..3908ea031aeb0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mi-NZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.mi-NZ.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture mi-NZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mi-NZ", "default", { - name: "mi-NZ", - englishName: "Maori (New Zealand)", - nativeName: "Reo Māori (Aotearoa)", - language: "mi", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], - namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], - namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] - }, - months: { - names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], - namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM, yyyy", - f: "dddd, dd MMMM, yyyy h:mm tt", - F: "dddd, dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM, yy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mi-NZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mi-NZ", "default", { + name: "mi-NZ", + englishName: "Maori (New Zealand)", + nativeName: "Reo Māori (Aotearoa)", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], + namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mi.js b/pub/lib/globalize/cultures/globalize.culture.mi.js index 7abd23f6d2707..6eb3ffaecbb15 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mi.js +++ b/pub/lib/globalize/cultures/globalize.culture.mi.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture mi - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mi", "default", { - name: "mi", - englishName: "Maori", - nativeName: "Reo Māori", - language: "mi", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], - namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], - namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] - }, - months: { - names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], - namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM, yyyy", - f: "dddd, dd MMMM, yyyy h:mm tt", - F: "dddd, dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM, yy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mi", "default", { + name: "mi", + englishName: "Maori", + nativeName: "Reo Māori", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], + namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mk-MK.js b/pub/lib/globalize/cultures/globalize.culture.mk-MK.js index 916d573837d06..5ded9c4ac4e0e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mk-MK.js +++ b/pub/lib/globalize/cultures/globalize.culture.mk-MK.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture mk-MK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mk-MK", "default", { - name: "mk-MK", - englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", - nativeName: "македонски јазик (Македонија)", - language: "mk", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "ден." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], - namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], - namesShort: ["не","по","вт","ср","че","пе","са"] - }, - months: { - names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], - namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd MMMM yyyy HH:mm", - F: "dddd, dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mk-MK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mk-MK", "default", { + name: "mk-MK", + englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", + nativeName: "македонски јазик (Македонија)", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], + namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], + namesShort: ["не","по","вт","ср","че","пе","са"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mk.js b/pub/lib/globalize/cultures/globalize.culture.mk.js index 02a7841438942..6dcc833aed1be 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mk.js +++ b/pub/lib/globalize/cultures/globalize.culture.mk.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture mk - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mk", "default", { - name: "mk", - englishName: "Macedonian (FYROM)", - nativeName: "македонски јазик", - language: "mk", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "ден." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], - namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], - namesShort: ["не","по","вт","ср","че","пе","са"] - }, - months: { - names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], - namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd MMMM yyyy HH:mm", - F: "dddd, dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mk", "default", { + name: "mk", + englishName: "Macedonian (FYROM)", + nativeName: "македонски јазик", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], + namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], + namesShort: ["не","по","вт","ср","че","пе","са"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ml-IN.js b/pub/lib/globalize/cultures/globalize.culture.ml-IN.js index be2b02ac855e2..bda68e76b3c08 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ml-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ml-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture ml-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ml-IN", "default", { - name: "ml-IN", - englishName: "Malayalam (India)", - nativeName: "മലയാളം (ഭാരതം)", - language: "ml", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ക" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], - namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], - namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] - }, - months: { - names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], - namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] - }, - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ml-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ml-IN", "default", { + name: "ml-IN", + englishName: "Malayalam (India)", + nativeName: "മലയാളം (ഭാരതം)", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ക" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], + namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], + namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] + }, + months: { + names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], + namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ml.js b/pub/lib/globalize/cultures/globalize.culture.ml.js index 28bb0878b1f13..2a7e8c63ce6a5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ml.js +++ b/pub/lib/globalize/cultures/globalize.culture.ml.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture ml - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ml", "default", { - name: "ml", - englishName: "Malayalam", - nativeName: "മലയാളം", - language: "ml", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ക" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], - namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], - namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] - }, - months: { - names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], - namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] - }, - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ml + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ml", "default", { + name: "ml", + englishName: "Malayalam", + nativeName: "മലയാളം", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ക" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], + namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], + namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] + }, + months: { + names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], + namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mn-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.mn-Cyrl.js index 87b9e720ef8af..c56a6066a0dc0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mn-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.mn-Cyrl.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture mn-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mn-Cyrl", "default", { - name: "mn-Cyrl", - englishName: "Mongolian (Cyrillic)", - nativeName: "Монгол хэл", - language: "mn-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mn-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Cyrl", "default", { + name: "mn-Cyrl", + englishName: "Mongolian (Cyrillic)", + nativeName: "Монгол хэл", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mn-MN.js b/pub/lib/globalize/cultures/globalize.culture.mn-MN.js index ffe6999c0e065..bc3d73eaa5d31 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mn-MN.js +++ b/pub/lib/globalize/cultures/globalize.culture.mn-MN.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture mn-MN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mn-MN", "default", { - name: "mn-MN", - englishName: "Mongolian (Cyrillic, Mongolia)", - nativeName: "Монгол хэл (Монгол улс)", - language: "mn-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mn-MN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-MN", "default", { + name: "mn-MN", + englishName: "Mongolian (Cyrillic, Mongolia)", + nativeName: "Монгол хэл (Монгол улс)", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mn-Mong-CN.js b/pub/lib/globalize/cultures/globalize.culture.mn-Mong-CN.js index bd5b8a3cbcfc9..ea50fd2e90cdd 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mn-Mong-CN.js +++ b/pub/lib/globalize/cultures/globalize.culture.mn-Mong-CN.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture mn-Mong-CN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mn-Mong-CN", "default", { - name: "mn-Mong-CN", - englishName: "Mongolian (Traditional Mongolian, PRC)", - nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ)", - language: "mn-Mong", - numberFormat: { - groupSizes: [3,0], - "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", - negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", - positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] - }, - months: { - names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], - namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] - }, - AM: null, - PM: null, - eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", - F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", - M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", - Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mn-Mong-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Mong-CN", "default", { + name: "mn-Mong-CN", + englishName: "Mongolian (Traditional Mongolian, PRC)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ)", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mn-Mong.js b/pub/lib/globalize/cultures/globalize.culture.mn-Mong.js index cbca5b4c041d6..351d93b85f21f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mn-Mong.js +++ b/pub/lib/globalize/cultures/globalize.culture.mn-Mong.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture mn-Mong - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mn-Mong", "default", { - name: "mn-Mong", - englishName: "Mongolian (Traditional Mongolian)", - nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", - language: "mn-Mong", - numberFormat: { - groupSizes: [3,0], - "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", - negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", - positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] - }, - months: { - names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], - namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] - }, - AM: null, - PM: null, - eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", - F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", - M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", - Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mn-Mong + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Mong", "default", { + name: "mn-Mong", + englishName: "Mongolian (Traditional Mongolian)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mn.js b/pub/lib/globalize/cultures/globalize.culture.mn.js index 4fca4f4866c80..a976df0814c28 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mn.js +++ b/pub/lib/globalize/cultures/globalize.culture.mn.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture mn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mn", "default", { - name: "mn", - englishName: "Mongolian", - nativeName: "Монгол хэл", - language: "mn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn", "default", { + name: "mn", + englishName: "Mongolian", + nativeName: "Монгол хэл", + language: "mn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.moh-CA.js b/pub/lib/globalize/cultures/globalize.culture.moh-CA.js index 7041ba42e2910..c3e4057f3edfd 100644 --- a/pub/lib/globalize/cultures/globalize.culture.moh-CA.js +++ b/pub/lib/globalize/cultures/globalize.culture.moh-CA.js @@ -1,52 +1,52 @@ -/** - * Globalize Culture moh-CA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "moh-CA", "default", { - name: "moh-CA", - englishName: "Mohawk (Mohawk)", - nativeName: "Kanien'kéha", - language: "moh", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] - } - } - } -}); - -}( this )); +/** + * Globalize Culture moh-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "moh-CA", "default", { + name: "moh-CA", + englishName: "Mohawk (Mohawk)", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.moh.js b/pub/lib/globalize/cultures/globalize.culture.moh.js index 690120291fa2a..0eb5063112f47 100644 --- a/pub/lib/globalize/cultures/globalize.culture.moh.js +++ b/pub/lib/globalize/cultures/globalize.culture.moh.js @@ -1,52 +1,52 @@ -/** - * Globalize Culture moh - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "moh", "default", { - name: "moh", - englishName: "Mohawk", - nativeName: "Kanien'kéha", - language: "moh", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] - } - } - } -}); - -}( this )); +/** + * Globalize Culture moh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "moh", "default", { + name: "moh", + englishName: "Mohawk", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mr-IN.js b/pub/lib/globalize/cultures/globalize.culture.mr-IN.js index 68bd5651d665b..0aab31fba392c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mr-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.mr-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture mr-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mr-IN", "default", { - name: "mr-IN", - englishName: "Marathi (India)", - nativeName: "मराठी (भारत)", - language: "mr", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], - namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mr-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mr-IN", "default", { + name: "mr-IN", + englishName: "Marathi (India)", + nativeName: "मराठी (भारत)", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], + namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mr.js b/pub/lib/globalize/cultures/globalize.culture.mr.js index c8c422b92b2d2..38175391db1a3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mr.js +++ b/pub/lib/globalize/cultures/globalize.culture.mr.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture mr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mr", "default", { - name: "mr", - englishName: "Marathi", - nativeName: "मराठी", - language: "mr", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], - namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mr", "default", { + name: "mr", + englishName: "Marathi", + nativeName: "मराठी", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], + namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ms-BN.js b/pub/lib/globalize/cultures/globalize.culture.ms-BN.js index 3888e5aefba1e..b9e88c99fe699 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ms-BN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ms-BN.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture ms-BN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ms-BN", "default", { - name: "ms-BN", - englishName: "Malay (Brunei Darussalam)", - nativeName: "Bahasa Melayu (Brunei Darussalam)", - language: "ms", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ms-BN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms-BN", "default", { + name: "ms-BN", + englishName: "Malay (Brunei Darussalam)", + nativeName: "Bahasa Melayu (Brunei Darussalam)", + language: "ms", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ms-MY.js b/pub/lib/globalize/cultures/globalize.culture.ms-MY.js index c465071733652..65380965b96a6 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ms-MY.js +++ b/pub/lib/globalize/cultures/globalize.culture.ms-MY.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture ms-MY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ms-MY", "default", { - name: "ms-MY", - englishName: "Malay (Malaysia)", - nativeName: "Bahasa Melayu (Malaysia)", - language: "ms", - numberFormat: { - currency: { - decimals: 0, - symbol: "RM" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ms-MY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms-MY", "default", { + name: "ms-MY", + englishName: "Malay (Malaysia)", + nativeName: "Bahasa Melayu (Malaysia)", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ms.js b/pub/lib/globalize/cultures/globalize.culture.ms.js index 9c41e3d1c31be..aaf7f736c4923 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ms.js +++ b/pub/lib/globalize/cultures/globalize.culture.ms.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture ms - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ms", "default", { - name: "ms", - englishName: "Malay", - nativeName: "Bahasa Melayu", - language: "ms", - numberFormat: { - currency: { - decimals: 0, - symbol: "RM" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ms + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms", "default", { + name: "ms", + englishName: "Malay", + nativeName: "Bahasa Melayu", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mt-MT.js b/pub/lib/globalize/cultures/globalize.culture.mt-MT.js index 23abd8077868b..17c179a8e694a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mt-MT.js +++ b/pub/lib/globalize/cultures/globalize.culture.mt-MT.js @@ -1,68 +1,68 @@ -/** - * Globalize Culture mt-MT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mt-MT", "default", { - name: "mt-MT", - englishName: "Maltese (Malta)", - nativeName: "Malti (Malta)", - language: "mt", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], - namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], - namesShort: ["I","I","I","L","I","I","I"] - }, - months: { - names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], - namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' ta\\' 'MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", - F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", - M: "d' ta\\' 'MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mt-MT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mt-MT", "default", { + name: "mt-MT", + englishName: "Maltese (Malta)", + nativeName: "Malti (Malta)", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.mt.js b/pub/lib/globalize/cultures/globalize.culture.mt.js index c3f182b29cc8d..2ea8a463bc9c0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.mt.js +++ b/pub/lib/globalize/cultures/globalize.culture.mt.js @@ -1,68 +1,68 @@ -/** - * Globalize Culture mt - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "mt", "default", { - name: "mt", - englishName: "Maltese", - nativeName: "Malti", - language: "mt", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], - namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], - namesShort: ["I","I","I","L","I","I","I"] - }, - months: { - names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], - namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' ta\\' 'MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", - F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", - M: "d' ta\\' 'MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture mt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mt", "default", { + name: "mt", + englishName: "Maltese", + nativeName: "Malti", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nb-NO.js b/pub/lib/globalize/cultures/globalize.culture.nb-NO.js index 461a77e992e88..000610776d517 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nb-NO.js +++ b/pub/lib/globalize/cultures/globalize.culture.nb-NO.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture nb-NO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nb-NO", "default", { - name: "nb-NO", - englishName: "Norwegian, Bokmål (Norway)", - nativeName: "norsk, bokmål (Norge)", - language: "nb", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nb-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nb-NO", "default", { + name: "nb-NO", + englishName: "Norwegian, Bokmål (Norway)", + nativeName: "norsk, bokmål (Norge)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nb.js b/pub/lib/globalize/cultures/globalize.culture.nb.js index 35928c36128a0..78a6b5fe46b69 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nb.js +++ b/pub/lib/globalize/cultures/globalize.culture.nb.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture nb - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nb", "default", { - name: "nb", - englishName: "Norwegian (Bokmål)", - nativeName: "norsk (bokmål)", - language: "nb", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nb", "default", { + name: "nb", + englishName: "Norwegian (Bokmål)", + nativeName: "norsk (bokmål)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ne-NP.js b/pub/lib/globalize/cultures/globalize.culture.ne-NP.js index 4baae3a7261c6..5343ba9850ff5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ne-NP.js +++ b/pub/lib/globalize/cultures/globalize.culture.ne-NP.js @@ -1,68 +1,68 @@ -/** - * Globalize Culture ne-NP - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ne-NP", "default", { - name: "ne-NP", - englishName: "Nepali (Nepal)", - nativeName: "नेपाली (नेपाल)", - language: "ne", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "रु" - } - }, - calendars: { - standard: { - days: { - names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], - namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], - namesShort: ["आ","सो","म","बु","बि","शु","श"] - }, - months: { - names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], - namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] - }, - AM: ["विहानी","विहानी","विहानी"], - PM: ["बेलुकी","बेलुकी","बेलुकी"], - eras: [{"name":"a.d.","start":null,"offset":0}], - patterns: { - Y: "MMMM,yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ne-NP + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ne-NP", "default", { + name: "ne-NP", + englishName: "Nepali (Nepal)", + nativeName: "नेपाली (नेपाल)", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रु" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], + namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], + namesShort: ["आ","सो","म","बु","बि","शु","श"] + }, + months: { + names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], + namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलुकी","बेलुकी","बेलुकी"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ne.js b/pub/lib/globalize/cultures/globalize.culture.ne.js index a04b959b708be..ac5b5cca2f58f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ne.js +++ b/pub/lib/globalize/cultures/globalize.culture.ne.js @@ -1,68 +1,68 @@ -/** - * Globalize Culture ne - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ne", "default", { - name: "ne", - englishName: "Nepali", - nativeName: "नेपाली", - language: "ne", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "रु" - } - }, - calendars: { - standard: { - days: { - names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], - namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], - namesShort: ["आ","सो","म","बु","बि","शु","श"] - }, - months: { - names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], - namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] - }, - AM: ["विहानी","विहानी","विहानी"], - PM: ["बेलुकी","बेलुकी","बेलुकी"], - eras: [{"name":"a.d.","start":null,"offset":0}], - patterns: { - Y: "MMMM,yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ne + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ne", "default", { + name: "ne", + englishName: "Nepali", + nativeName: "नेपाली", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रु" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], + namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], + namesShort: ["आ","सो","म","बु","बि","शु","श"] + }, + months: { + names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], + namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलुकी","बेलुकी","बेलुकी"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nl-BE.js b/pub/lib/globalize/cultures/globalize.culture.nl-BE.js index 8d80ab395f5b6..c2923a9f6cbdf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nl-BE.js +++ b/pub/lib/globalize/cultures/globalize.culture.nl-BE.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture nl-BE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nl-BE", "default", { - name: "nl-BE", - englishName: "Dutch (Belgium)", - nativeName: "Nederlands (België)", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Niet-een-getal)", - negativeInfinity: "-oneindig", - positiveInfinity: "oneindig", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nl-BE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl-BE", "default", { + name: "nl-BE", + englishName: "Dutch (Belgium)", + nativeName: "Nederlands (België)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Niet-een-getal)", + negativeInfinity: "-oneindig", + positiveInfinity: "oneindig", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nl-NL.js b/pub/lib/globalize/cultures/globalize.culture.nl-NL.js index f397f3c7dd4d3..6b0f150229fbb 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nl-NL.js +++ b/pub/lib/globalize/cultures/globalize.culture.nl-NL.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture nl-NL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nl-NL", "default", { - name: "nl-NL", - englishName: "Dutch (Netherlands)", - nativeName: "Nederlands (Nederland)", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nl-NL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl-NL", "default", { + name: "nl-NL", + englishName: "Dutch (Netherlands)", + nativeName: "Nederlands (Nederland)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nl.js b/pub/lib/globalize/cultures/globalize.culture.nl.js index 2abf00bd437e7..38aac1d4738be 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nl.js +++ b/pub/lib/globalize/cultures/globalize.culture.nl.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture nl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nl", "default", { - name: "nl", - englishName: "Dutch", - nativeName: "Nederlands", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl", "default", { + name: "nl", + englishName: "Dutch", + nativeName: "Nederlands", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nn-NO.js b/pub/lib/globalize/cultures/globalize.culture.nn-NO.js index 59e352aa01290..6e91cff877f37 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nn-NO.js +++ b/pub/lib/globalize/cultures/globalize.culture.nn-NO.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture nn-NO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nn-NO", "default", { - name: "nn-NO", - englishName: "Norwegian, Nynorsk (Norway)", - nativeName: "norsk, nynorsk (Noreg)", - language: "nn", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], - namesAbbr: ["sø","må","ty","on","to","fr","la"], - namesShort: ["sø","må","ty","on","to","fr","la"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nn-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nn-NO", "default", { + name: "nn-NO", + englishName: "Norwegian, Nynorsk (Norway)", + nativeName: "norsk, nynorsk (Noreg)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","må","ty","on","to","fr","la"], + namesShort: ["sø","må","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nn.js b/pub/lib/globalize/cultures/globalize.culture.nn.js index 83779739ab1e5..da10646c21a15 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nn.js +++ b/pub/lib/globalize/cultures/globalize.culture.nn.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture nn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nn", "default", { - name: "nn", - englishName: "Norwegian (Nynorsk)", - nativeName: "norsk (nynorsk)", - language: "nn", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], - namesAbbr: ["sø","må","ty","on","to","fr","la"], - namesShort: ["sø","må","ty","on","to","fr","la"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nn", "default", { + name: "nn", + englishName: "Norwegian (Nynorsk)", + nativeName: "norsk (nynorsk)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","må","ty","on","to","fr","la"], + namesShort: ["sø","må","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.no.js b/pub/lib/globalize/cultures/globalize.culture.no.js index a91f83cd046be..b7b908cf38ebf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.no.js +++ b/pub/lib/globalize/cultures/globalize.culture.no.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture no - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "no", "default", { - name: "no", - englishName: "Norwegian", - nativeName: "norsk", - language: "no", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture no + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "no", "default", { + name: "no", + englishName: "Norwegian", + nativeName: "norsk", + language: "no", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nso-ZA.js b/pub/lib/globalize/cultures/globalize.culture.nso-ZA.js index 52e9df5c0fcd3..0037e2396a055 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nso-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.nso-ZA.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture nso-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nso-ZA", "default", { - name: "nso-ZA", - englishName: "Sesotho sa Leboa (South Africa)", - nativeName: "Sesotho sa Leboa (Afrika Borwa)", - language: "nso", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], - namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], - namesShort: ["L","M","L","L","L","L","M"] - }, - months: { - names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], - namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nso-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nso-ZA", "default", { + name: "nso-ZA", + englishName: "Sesotho sa Leboa (South Africa)", + nativeName: "Sesotho sa Leboa (Afrika Borwa)", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.nso.js b/pub/lib/globalize/cultures/globalize.culture.nso.js index 94f151d076ff4..f4d380f672397 100644 --- a/pub/lib/globalize/cultures/globalize.culture.nso.js +++ b/pub/lib/globalize/cultures/globalize.culture.nso.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture nso - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "nso", "default", { - name: "nso", - englishName: "Sesotho sa Leboa", - nativeName: "Sesotho sa Leboa", - language: "nso", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], - namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], - namesShort: ["L","M","L","L","L","L","M"] - }, - months: { - names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], - namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture nso + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nso", "default", { + name: "nso", + englishName: "Sesotho sa Leboa", + nativeName: "Sesotho sa Leboa", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.oc-FR.js b/pub/lib/globalize/cultures/globalize.culture.oc-FR.js index cc02fd73ff53f..b6c91d6ffd3fa 100644 --- a/pub/lib/globalize/cultures/globalize.culture.oc-FR.js +++ b/pub/lib/globalize/cultures/globalize.culture.oc-FR.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture oc-FR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "oc-FR", "default", { - name: "oc-FR", - englishName: "Occitan (France)", - nativeName: "Occitan (França)", - language: "oc", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numeric", - negativeInfinity: "-Infinit", - positiveInfinity: "+Infinit", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], - namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], - namesShort: ["di","lu","ma","mè","jò","ve","sa"] - }, - months: { - names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - monthsGenitive: { - names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - AM: null, - PM: null, - eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd,' lo 'd MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", - F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture oc-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "oc-FR", "default", { + name: "oc-FR", + englishName: "Occitan (France)", + nativeName: "Occitan (França)", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.oc.js b/pub/lib/globalize/cultures/globalize.culture.oc.js index 993ddb42c284c..fb492c3e5d2ad 100644 --- a/pub/lib/globalize/cultures/globalize.culture.oc.js +++ b/pub/lib/globalize/cultures/globalize.culture.oc.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture oc - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "oc", "default", { - name: "oc", - englishName: "Occitan", - nativeName: "Occitan", - language: "oc", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numeric", - negativeInfinity: "-Infinit", - positiveInfinity: "+Infinit", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], - namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], - namesShort: ["di","lu","ma","mè","jò","ve","sa"] - }, - months: { - names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - monthsGenitive: { - names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - AM: null, - PM: null, - eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd,' lo 'd MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", - F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture oc + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "oc", "default", { + name: "oc", + englishName: "Occitan", + nativeName: "Occitan", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.or-IN.js b/pub/lib/globalize/cultures/globalize.culture.or-IN.js index 04a2b676aa142..4c5ce570606e3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.or-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.or-IN.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture or-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "or-IN", "default", { - name: "or-IN", - englishName: "Oriya (India)", - nativeName: "ଓଡ଼ିଆ (ଭାରତ)", - language: "or", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ଟ" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], - namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], - namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] - }, - months: { - names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], - namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] - }, - eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture or-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "or-IN", "default", { + name: "or-IN", + englishName: "Oriya (India)", + nativeName: "ଓଡ଼ିଆ (ଭାରତ)", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] + }, + months: { + names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], + namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] + }, + eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.or.js b/pub/lib/globalize/cultures/globalize.culture.or.js index 55ae285abe842..aee0ddf6cfc4d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.or.js +++ b/pub/lib/globalize/cultures/globalize.culture.or.js @@ -1,70 +1,70 @@ -/** - * Globalize Culture or - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "or", "default", { - name: "or", - englishName: "Oriya", - nativeName: "ଓଡ଼ିଆ", - language: "or", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ଟ" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], - namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], - namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] - }, - months: { - names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], - namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] - }, - eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture or + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "or", "default", { + name: "or", + englishName: "Oriya", + nativeName: "ଓଡ଼ିଆ", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] + }, + months: { + names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], + namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] + }, + eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pa-IN.js b/pub/lib/globalize/cultures/globalize.culture.pa-IN.js index ab6b5f88da69b..2c240819dd962 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pa-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.pa-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture pa-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pa-IN", "default", { - name: "pa-IN", - englishName: "Punjabi (India)", - nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", - language: "pa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ਰੁ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], - namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], - namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] - }, - months: { - names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], - namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] - }, - AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], - PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy dddd", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "dd MMMM yyyy dddd tt hh:mm", - F: "dd MMMM yyyy dddd tt hh:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pa-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pa-IN", "default", { + name: "pa-IN", + englishName: "Punjabi (India)", + nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰੁ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pa.js b/pub/lib/globalize/cultures/globalize.culture.pa.js index ff2e9d44ec584..f9b804c47398b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pa.js +++ b/pub/lib/globalize/cultures/globalize.culture.pa.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture pa - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pa", "default", { - name: "pa", - englishName: "Punjabi", - nativeName: "ਪੰਜਾਬੀ", - language: "pa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ਰੁ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], - namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], - namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] - }, - months: { - names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], - namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] - }, - AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], - PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy dddd", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "dd MMMM yyyy dddd tt hh:mm", - F: "dd MMMM yyyy dddd tt hh:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pa", "default", { + name: "pa", + englishName: "Punjabi", + nativeName: "ਪੰਜਾਬੀ", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰੁ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pl-PL.js b/pub/lib/globalize/cultures/globalize.culture.pl-PL.js index 2b821b537399f..fb3149184bbac 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pl-PL.js +++ b/pub/lib/globalize/cultures/globalize.culture.pl-PL.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture pl-PL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pl-PL", "default", { - name: "pl-PL", - englishName: "Polish (Poland)", - nativeName: "polski (Polska)", - language: "pl", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nie jest liczbą", - negativeInfinity: "-nieskończoność", - positiveInfinity: "+nieskończoność", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "zł" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], - namesAbbr: ["niedz.","pon.","wt.","śr.","czw.","pt.","sob."], - namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] - }, - months: { - names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - monthsGenitive: { - names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pl-PL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pl-PL", "default", { + name: "pl-PL", + englishName: "Polish (Poland)", + nativeName: "polski (Polska)", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbą", + negativeInfinity: "-nieskończoność", + positiveInfinity: "+nieskończoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zł" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], + namesAbbr: ["niedz.","pon.","wt.","śr.","czw.","pt.","sob."], + namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] + }, + months: { + names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pl.js b/pub/lib/globalize/cultures/globalize.culture.pl.js index ef56c87ac5613..300997522b1be 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pl.js +++ b/pub/lib/globalize/cultures/globalize.culture.pl.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture pl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pl", "default", { - name: "pl", - englishName: "Polish", - nativeName: "polski", - language: "pl", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nie jest liczbą", - negativeInfinity: "-nieskończoność", - positiveInfinity: "+nieskończoność", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "zł" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], - namesAbbr: ["niedz.","pon.","wt.","śr.","czw.","pt.","sob."], - namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] - }, - months: { - names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - monthsGenitive: { - names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pl", "default", { + name: "pl", + englishName: "Polish", + nativeName: "polski", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbą", + negativeInfinity: "-nieskończoność", + positiveInfinity: "+nieskończoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zł" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], + namesAbbr: ["niedz.","pon.","wt.","śr.","czw.","pt.","sob."], + namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] + }, + months: { + names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.prs-AF.js b/pub/lib/globalize/cultures/globalize.culture.prs-AF.js index 71bf213d37b1b..6191b91df65df 100644 --- a/pub/lib/globalize/cultures/globalize.culture.prs-AF.js +++ b/pub/lib/globalize/cultures/globalize.culture.prs-AF.js @@ -1,174 +1,174 @@ -/** - * Globalize Culture prs-AF - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "prs-AF", "default", { - name: "prs-AF", - englishName: "Dari (Afghanistan)", - nativeName: "درى (افغانستان)", - language: "prs", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 5, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 5, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture prs-AF + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "prs-AF", "default", { + name: "prs-AF", + englishName: "Dari (Afghanistan)", + nativeName: "درى (افغانستان)", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.prs.js b/pub/lib/globalize/cultures/globalize.culture.prs.js index 47260f218b589..a309c09378153 100644 --- a/pub/lib/globalize/cultures/globalize.culture.prs.js +++ b/pub/lib/globalize/cultures/globalize.culture.prs.js @@ -1,174 +1,174 @@ -/** - * Globalize Culture prs - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "prs", "default", { - name: "prs", - englishName: "Dari", - nativeName: "درى", - language: "prs", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 5, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 5, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture prs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "prs", "default", { + name: "prs", + englishName: "Dari", + nativeName: "درى", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ps-AF.js b/pub/lib/globalize/cultures/globalize.culture.ps-AF.js index 30ba02362a18e..676bfc2ecf103 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ps-AF.js +++ b/pub/lib/globalize/cultures/globalize.culture.ps-AF.js @@ -1,176 +1,176 @@ -/** - * Globalize Culture ps-AF - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ps-AF", "default", { - name: "ps-AF", - englishName: "Pashto (Afghanistan)", - nativeName: "پښتو (افغانستان)", - language: "ps", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": "،", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": "،", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - ",": "٬", - ".": "٫", - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ps-AF + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ps-AF", "default", { + name: "ps-AF", + englishName: "Pashto (Afghanistan)", + nativeName: "پښتو (افغانستان)", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "،", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "،", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "٬", + ".": "٫", + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ps.js b/pub/lib/globalize/cultures/globalize.culture.ps.js index 59b5c843146d2..e6c766ccd7211 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ps.js +++ b/pub/lib/globalize/cultures/globalize.culture.ps.js @@ -1,176 +1,176 @@ -/** - * Globalize Culture ps - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ps", "default", { - name: "ps", - englishName: "Pashto", - nativeName: "پښتو", - language: "ps", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": "،", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": "،", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - ",": "٬", - ".": "٫", - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ps + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ps", "default", { + name: "ps", + englishName: "Pashto", + nativeName: "پښتو", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "،", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "،", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "٬", + ".": "٫", + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pt-BR.js b/pub/lib/globalize/cultures/globalize.culture.pt-BR.js index da89dd514daee..36883fe3455a5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pt-BR.js +++ b/pub/lib/globalize/cultures/globalize.culture.pt-BR.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture pt-BR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pt-BR", "default", { - name: "pt-BR", - englishName: "Portuguese (Brazil)", - nativeName: "Português (Brasil)", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "R$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], - namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pt-BR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt-BR", "default", { + name: "pt-BR", + englishName: "Portuguese (Brazil)", + nativeName: "Português (Brasil)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pt-PT.js b/pub/lib/globalize/cultures/globalize.culture.pt-PT.js index 22c7a37938d11..321c6296f34a9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pt-PT.js +++ b/pub/lib/globalize/cultures/globalize.culture.pt-PT.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture pt-PT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pt-PT", "default", { - name: "pt-PT", - englishName: "Portuguese (Portugal)", - nativeName: "português (Portugal)", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], - namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "d/M", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pt-PT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt-PT", "default", { + name: "pt-PT", + englishName: "Portuguese (Portugal)", + nativeName: "português (Portugal)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], + namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "d/M", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.pt.js b/pub/lib/globalize/cultures/globalize.culture.pt.js index 9f5cc96b0a53f..a9957e4481a87 100644 --- a/pub/lib/globalize/cultures/globalize.culture.pt.js +++ b/pub/lib/globalize/cultures/globalize.culture.pt.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture pt - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "pt", "default", { - name: "pt", - englishName: "Portuguese", - nativeName: "Português", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "R$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], - namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture pt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt", "default", { + name: "pt", + englishName: "Portuguese", + nativeName: "Português", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.qut-GT.js b/pub/lib/globalize/cultures/globalize.culture.qut-GT.js index 7c274fb3021a4..5f4294d3322f7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.qut-GT.js +++ b/pub/lib/globalize/cultures/globalize.culture.qut-GT.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture qut-GT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "qut-GT", "default", { - name: "qut-GT", - englishName: "K'iche (Guatemala)", - nativeName: "K'iche (Guatemala)", - language: "qut", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], - namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], - namesShort: ["ju","ka","ox","ka","jo","wa","wu"] - }, - months: { - names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], - namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture qut-GT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "qut-GT", "default", { + name: "qut-GT", + englishName: "K'iche (Guatemala)", + nativeName: "K'iche (Guatemala)", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.qut.js b/pub/lib/globalize/cultures/globalize.culture.qut.js index 94679f0768152..44a0ac5e27c83 100644 --- a/pub/lib/globalize/cultures/globalize.culture.qut.js +++ b/pub/lib/globalize/cultures/globalize.culture.qut.js @@ -1,69 +1,69 @@ -/** - * Globalize Culture qut - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "qut", "default", { - name: "qut", - englishName: "K'iche", - nativeName: "K'iche", - language: "qut", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], - namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], - namesShort: ["ju","ka","ox","ka","jo","wa","wu"] - }, - months: { - names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], - namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture qut + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "qut", "default", { + name: "qut", + englishName: "K'iche", + nativeName: "K'iche", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.quz-BO.js b/pub/lib/globalize/cultures/globalize.culture.quz-BO.js index b6d7ba6b97b89..9e1d31f8cde3d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.quz-BO.js +++ b/pub/lib/globalize/cultures/globalize.culture.quz-BO.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture quz-BO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "quz-BO", "default", { - name: "quz-BO", - englishName: "Quechua (Bolivia)", - nativeName: "runasimi (Qullasuyu)", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture quz-BO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-BO", "default", { + name: "quz-BO", + englishName: "Quechua (Bolivia)", + nativeName: "runasimi (Qullasuyu)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.quz-EC.js b/pub/lib/globalize/cultures/globalize.culture.quz-EC.js index 76f51589e8683..72bd712db3125 100644 --- a/pub/lib/globalize/cultures/globalize.culture.quz-EC.js +++ b/pub/lib/globalize/cultures/globalize.culture.quz-EC.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture quz-EC - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "quz-EC", "default", { - name: "quz-EC", - englishName: "Quechua (Ecuador)", - nativeName: "runasimi (Ecuador)", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture quz-EC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-EC", "default", { + name: "quz-EC", + englishName: "Quechua (Ecuador)", + nativeName: "runasimi (Ecuador)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.quz-PE.js b/pub/lib/globalize/cultures/globalize.culture.quz-PE.js index 516a550278c33..cfe9725fd7916 100644 --- a/pub/lib/globalize/cultures/globalize.culture.quz-PE.js +++ b/pub/lib/globalize/cultures/globalize.culture.quz-PE.js @@ -1,68 +1,68 @@ -/** - * Globalize Culture quz-PE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "quz-PE", "default", { - name: "quz-PE", - englishName: "Quechua (Peru)", - nativeName: "runasimi (Piruw)", - language: "quz", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$ -n","$ n"], - symbol: "S/." - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture quz-PE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-PE", "default", { + name: "quz-PE", + englishName: "Quechua (Peru)", + nativeName: "runasimi (Piruw)", + language: "quz", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.quz.js b/pub/lib/globalize/cultures/globalize.culture.quz.js index adaae8d860201..79b0f80aa3c5f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.quz.js +++ b/pub/lib/globalize/cultures/globalize.culture.quz.js @@ -1,74 +1,74 @@ -/** - * Globalize Culture quz - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "quz", "default", { - name: "quz", - englishName: "Quechua", - nativeName: "runasimi", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture quz + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz", "default", { + name: "quz", + englishName: "Quechua", + nativeName: "runasimi", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.rm-CH.js b/pub/lib/globalize/cultures/globalize.culture.rm-CH.js index f4a4c3e745a97..aa0dcf022adf0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.rm-CH.js +++ b/pub/lib/globalize/cultures/globalize.culture.rm-CH.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture rm-CH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "rm-CH", "default", { - name: "rm-CH", - englishName: "Romansh (Switzerland)", - nativeName: "Rumantsch (Svizra)", - language: "rm", - numberFormat: { - ",": "'", - "NaN": "betg def.", - negativeInfinity: "-infinit", - positiveInfinity: "+infinit", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], - namesAbbr: ["du","gli","ma","me","gie","ve","so"], - namesShort: ["du","gli","ma","me","gie","ve","so"] - }, - months: { - names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], - namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"s. Cr.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d MMMM yyyy HH:mm", - F: "dddd, d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture rm-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rm-CH", "default", { + name: "rm-CH", + englishName: "Romansh (Switzerland)", + nativeName: "Rumantsch (Svizra)", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.rm.js b/pub/lib/globalize/cultures/globalize.culture.rm.js index 201e36bf1d7c9..0b39881db7118 100644 --- a/pub/lib/globalize/cultures/globalize.culture.rm.js +++ b/pub/lib/globalize/cultures/globalize.culture.rm.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture rm - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "rm", "default", { - name: "rm", - englishName: "Romansh", - nativeName: "Rumantsch", - language: "rm", - numberFormat: { - ",": "'", - "NaN": "betg def.", - negativeInfinity: "-infinit", - positiveInfinity: "+infinit", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], - namesAbbr: ["du","gli","ma","me","gie","ve","so"], - namesShort: ["du","gli","ma","me","gie","ve","so"] - }, - months: { - names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], - namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"s. Cr.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d MMMM yyyy HH:mm", - F: "dddd, d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture rm + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rm", "default", { + name: "rm", + englishName: "Romansh", + nativeName: "Rumantsch", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ro-RO.js b/pub/lib/globalize/cultures/globalize.culture.ro-RO.js index 452146a5e428b..1335db4eee21a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ro-RO.js +++ b/pub/lib/globalize/cultures/globalize.culture.ro-RO.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture ro-RO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ro-RO", "default", { - name: "ro-RO", - englishName: "Romanian (Romania)", - nativeName: "română (România)", - language: "ro", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "lei" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], - namesAbbr: ["D","L","Ma","Mi","J","V","S"], - namesShort: ["D","L","Ma","Mi","J","V","S"] - }, - months: { - names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], - namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ro-RO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ro-RO", "default", { + name: "ro-RO", + englishName: "Romanian (Romania)", + nativeName: "română (România)", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ro.js b/pub/lib/globalize/cultures/globalize.culture.ro.js index ad11eaa9f0a58..6952e4cd01482 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ro.js +++ b/pub/lib/globalize/cultures/globalize.culture.ro.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture ro - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ro", "default", { - name: "ro", - englishName: "Romanian", - nativeName: "română", - language: "ro", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "lei" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], - namesAbbr: ["D","L","Ma","Mi","J","V","S"], - namesShort: ["D","L","Ma","Mi","J","V","S"] - }, - months: { - names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], - namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ro + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ro", "default", { + name: "ro", + englishName: "Romanian", + nativeName: "română", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ru-RU.js b/pub/lib/globalize/cultures/globalize.culture.ru-RU.js index 92b6f16ac44a1..5e246b4dca792 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ru-RU.js +++ b/pub/lib/globalize/cultures/globalize.culture.ru-RU.js @@ -1,82 +1,82 @@ -/** - * Globalize Culture ru-RU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ru-RU", "default", { - name: "ru-RU", - englishName: "Russian (Russia)", - nativeName: "русский (Россия)", - language: "ru", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], - namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - monthsGenitive: { - names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'г.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'г.' H:mm", - F: "d MMMM yyyy 'г.' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ru-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ru-RU", "default", { + name: "ru-RU", + englishName: "Russian (Russia)", + nativeName: "русский (Россия)", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], + namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + monthsGenitive: { + names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ru.js b/pub/lib/globalize/cultures/globalize.culture.ru.js index a8826b7442081..5f523659e391c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ru.js +++ b/pub/lib/globalize/cultures/globalize.culture.ru.js @@ -1,82 +1,82 @@ -/** - * Globalize Culture ru - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ru", "default", { - name: "ru", - englishName: "Russian", - nativeName: "русский", - language: "ru", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], - namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - monthsGenitive: { - names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'г.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'г.' H:mm", - F: "d MMMM yyyy 'г.' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ru + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ru", "default", { + name: "ru", + englishName: "Russian", + nativeName: "русский", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], + namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + monthsGenitive: { + names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.rw-RW.js b/pub/lib/globalize/cultures/globalize.culture.rw-RW.js index 75a2e55a8082f..71345fa4de7ff 100644 --- a/pub/lib/globalize/cultures/globalize.culture.rw-RW.js +++ b/pub/lib/globalize/cultures/globalize.culture.rw-RW.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture rw-RW - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "rw-RW", "default", { - name: "rw-RW", - englishName: "Kinyarwanda (Rwanda)", - nativeName: "Kinyarwanda (Rwanda)", - language: "rw", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "RWF" - } - }, - calendars: { - standard: { - days: { - names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], - namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], - namesShort: ["mb","ka","ga","ka","ga","ga","cy"] - }, - months: { - names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], - namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] - }, - AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], - PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], - eras: [{"name":"AD","start":null,"offset":0}] - } - } -}); - -}( this )); +/** + * Globalize Culture rw-RW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rw-RW", "default", { + name: "rw-RW", + englishName: "Kinyarwanda (Rwanda)", + nativeName: "Kinyarwanda (Rwanda)", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.rw.js b/pub/lib/globalize/cultures/globalize.culture.rw.js index 67563c2e892ce..94155def7cb2b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.rw.js +++ b/pub/lib/globalize/cultures/globalize.culture.rw.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture rw - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "rw", "default", { - name: "rw", - englishName: "Kinyarwanda", - nativeName: "Kinyarwanda", - language: "rw", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "RWF" - } - }, - calendars: { - standard: { - days: { - names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], - namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], - namesShort: ["mb","ka","ga","ka","ga","ga","cy"] - }, - months: { - names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], - namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] - }, - AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], - PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], - eras: [{"name":"AD","start":null,"offset":0}] - } - } -}); - -}( this )); +/** + * Globalize Culture rw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rw", "default", { + name: "rw", + englishName: "Kinyarwanda", + nativeName: "Kinyarwanda", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sa-IN.js b/pub/lib/globalize/cultures/globalize.culture.sa-IN.js index 80a240cc4e1d2..c9ba68490f6f9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sa-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.sa-IN.js @@ -1,71 +1,71 @@ -/** - * Globalize Culture sa-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sa-IN", "default", { - name: "sa-IN", - englishName: "Sanskrit (India)", - nativeName: "संस्कृत (भारतम्)", - language: "sa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sa-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sa-IN", "default", { + name: "sa-IN", + englishName: "Sanskrit (India)", + nativeName: "संस्कृत (भारतम्)", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sa.js b/pub/lib/globalize/cultures/globalize.culture.sa.js index 9cecc585193d4..ad1ec93262bdf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sa.js +++ b/pub/lib/globalize/cultures/globalize.culture.sa.js @@ -1,71 +1,71 @@ -/** - * Globalize Culture sa - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sa", "default", { - name: "sa", - englishName: "Sanskrit", - nativeName: "संस्कृत", - language: "sa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sa", "default", { + name: "sa", + englishName: "Sanskrit", + nativeName: "संस्कृत", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sah-RU.js b/pub/lib/globalize/cultures/globalize.culture.sah-RU.js index 78c78b3b2f5a4..d0ba553cc6cc2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sah-RU.js +++ b/pub/lib/globalize/cultures/globalize.culture.sah-RU.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture sah-RU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sah-RU", "default", { - name: "sah-RU", - englishName: "Yakut (Russia)", - nativeName: "саха (Россия)", - language: "sah", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NAN", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "с." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], - namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], - namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] - }, - months: { - names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - monthsGenitive: { - names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - AM: null, - PM: null, - patterns: { - d: "MM.dd.yyyy", - D: "MMMM d yyyy 'с.'", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d yyyy 'с.' H:mm", - F: "MMMM d yyyy 'с.' H:mm:ss", - Y: "MMMM yyyy 'с.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sah-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sah-RU", "default", { + name: "sah-RU", + englishName: "Yakut (Russia)", + nativeName: "саха (Россия)", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "с." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], + namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + monthsGenitive: { + names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'с.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'с.' H:mm", + F: "MMMM d yyyy 'с.' H:mm:ss", + Y: "MMMM yyyy 'с.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sah.js b/pub/lib/globalize/cultures/globalize.culture.sah.js index 11eb403d41cb4..d79571f5fa993 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sah.js +++ b/pub/lib/globalize/cultures/globalize.culture.sah.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture sah - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sah", "default", { - name: "sah", - englishName: "Yakut", - nativeName: "саха", - language: "sah", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NAN", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "с." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], - namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], - namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] - }, - months: { - names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - monthsGenitive: { - names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - AM: null, - PM: null, - patterns: { - d: "MM.dd.yyyy", - D: "MMMM d yyyy 'с.'", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d yyyy 'с.' H:mm", - F: "MMMM d yyyy 'с.' H:mm:ss", - Y: "MMMM yyyy 'с.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sah + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sah", "default", { + name: "sah", + englishName: "Yakut", + nativeName: "саха", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "с." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], + namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + monthsGenitive: { + names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'с.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'с.' H:mm", + F: "MMMM d yyyy 'с.' H:mm:ss", + Y: "MMMM yyyy 'с.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.se-FI.js b/pub/lib/globalize/cultures/globalize.culture.se-FI.js index 5f6de4ef7ae64..9d4ee4fabe987 100644 --- a/pub/lib/globalize/cultures/globalize.culture.se-FI.js +++ b/pub/lib/globalize/cultures/globalize.culture.se-FI.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture se-FI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "se-FI", "default", { - name: "se-FI", - englishName: "Sami, Northern (Finland)", - nativeName: "davvisámegiella (Suopma)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. b. 'yyyy H:mm", - F: "MMMM d'. b. 'yyyy H:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture se-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-FI", "default", { + name: "se-FI", + englishName: "Sami, Northern (Finland)", + nativeName: "davvisámegiella (Suopma)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. b. 'yyyy H:mm", + F: "MMMM d'. b. 'yyyy H:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.se-NO.js b/pub/lib/globalize/cultures/globalize.culture.se-NO.js index 84d49febb6381..07c0a3616f798 100644 --- a/pub/lib/globalize/cultures/globalize.culture.se-NO.js +++ b/pub/lib/globalize/cultures/globalize.culture.se-NO.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture se-NO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "se-NO", "default", { - name: "se-NO", - englishName: "Sami, Northern (Norway)", - nativeName: "davvisámegiella (Norga)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture se-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-NO", "default", { + name: "se-NO", + englishName: "Sami, Northern (Norway)", + nativeName: "davvisámegiella (Norga)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.se-SE.js b/pub/lib/globalize/cultures/globalize.culture.se-SE.js index 112700acbd38e..a1031090d7a21 100644 --- a/pub/lib/globalize/cultures/globalize.culture.se-SE.js +++ b/pub/lib/globalize/cultures/globalize.culture.se-SE.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture se-SE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "se-SE", "default", { - name: "se-SE", - englishName: "Sami, Northern (Sweden)", - nativeName: "davvisámegiella (Ruoŧŧa)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture se-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-SE", "default", { + name: "se-SE", + englishName: "Sami, Northern (Sweden)", + nativeName: "davvisámegiella (Ruoŧŧa)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.se.js b/pub/lib/globalize/cultures/globalize.culture.se.js index 21617a8c9063c..9327f03ba5d07 100644 --- a/pub/lib/globalize/cultures/globalize.culture.se.js +++ b/pub/lib/globalize/cultures/globalize.culture.se.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture se - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "se", "default", { - name: "se", - englishName: "Sami (Northern)", - nativeName: "davvisámegiella", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture se + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se", "default", { + name: "se", + englishName: "Sami (Northern)", + nativeName: "davvisámegiella", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.si-LK.js b/pub/lib/globalize/cultures/globalize.culture.si-LK.js index 919597e81e4dc..0dcc6c55d6914 100644 --- a/pub/lib/globalize/cultures/globalize.culture.si-LK.js +++ b/pub/lib/globalize/cultures/globalize.culture.si-LK.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture si-LK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "si-LK", "default", { - name: "si-LK", - englishName: "Sinhala (Sri Lanka)", - nativeName: "සිංහල (ශ්\u200dරී ලංකා)", - language: "si", - numberFormat: { - groupSizes: [3,2], - negativeInfinity: "-අනන්තය", - positiveInfinity: "අනන්තය", - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["($ n)","$ n"], - symbol: "රු." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], - namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], - namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] - }, - months: { - names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], - namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] - }, - AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], - PM: ["ප.ව.","ප.ව.","ප.ව."], - eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", - f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", - F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", - Y: "yyyy MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture si-LK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "si-LK", "default", { + name: "si-LK", + englishName: "Sinhala (Sri Lanka)", + nativeName: "සිංහල (ශ්\u200dරී ලංකා)", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], + namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], + namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], + namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] + }, + AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], + PM: ["ප.ව.","ප.ව.","ප.ව."], + eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", + f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.si.js b/pub/lib/globalize/cultures/globalize.culture.si.js index 31c424a6ef2c1..d6fb518b90aae 100644 --- a/pub/lib/globalize/cultures/globalize.culture.si.js +++ b/pub/lib/globalize/cultures/globalize.culture.si.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture si - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "si", "default", { - name: "si", - englishName: "Sinhala", - nativeName: "සිංහල", - language: "si", - numberFormat: { - groupSizes: [3,2], - negativeInfinity: "-අනන්තය", - positiveInfinity: "අනන්තය", - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["($ n)","$ n"], - symbol: "රු." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], - namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], - namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] - }, - months: { - names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], - namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] - }, - AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], - PM: ["ප.ව.","ප.ව.","ප.ව."], - eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", - f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", - F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", - Y: "yyyy MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture si + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "si", "default", { + name: "si", + englishName: "Sinhala", + nativeName: "සිංහල", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], + namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], + namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], + namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] + }, + AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], + PM: ["ප.ව.","ප.ව.","ප.ව."], + eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", + f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sk-SK.js b/pub/lib/globalize/cultures/globalize.culture.sk-SK.js index d92af5dec965c..708a7aae8a507 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sk-SK.js +++ b/pub/lib/globalize/cultures/globalize.culture.sk-SK.js @@ -1,85 +1,85 @@ -/** - * Globalize Culture sk-SK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sk-SK", "default", { - name: "sk-SK", - englishName: "Slovak (Slovakia)", - nativeName: "slovenčina (Slovenská republika)", - language: "sk", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Nie je číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], - namesAbbr: ["ne","po","ut","st","št","pi","so"], - namesShort: ["ne","po","ut","st","št","pi","so"] - }, - months: { - names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sk-SK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sk-SK", "default", { + name: "sk-SK", + englishName: "Slovak (Slovakia)", + nativeName: "slovenčina (Slovenská republika)", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","št","pi","so"], + namesShort: ["ne","po","ut","st","št","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sk.js b/pub/lib/globalize/cultures/globalize.culture.sk.js index c5c69e46c5434..2f05718e3ba35 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sk.js +++ b/pub/lib/globalize/cultures/globalize.culture.sk.js @@ -1,85 +1,85 @@ -/** - * Globalize Culture sk - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sk", "default", { - name: "sk", - englishName: "Slovak", - nativeName: "slovenčina", - language: "sk", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Nie je číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], - namesAbbr: ["ne","po","ut","st","št","pi","so"], - namesShort: ["ne","po","ut","st","št","pi","so"] - }, - months: { - names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sk", "default", { + name: "sk", + englishName: "Slovak", + nativeName: "slovenčina", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","št","pi","so"], + namesShort: ["ne","po","ut","st","št","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sl-SI.js b/pub/lib/globalize/cultures/globalize.culture.sl-SI.js index a20b8d56bf45f..66b776197ce0f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sl-SI.js +++ b/pub/lib/globalize/cultures/globalize.culture.sl-SI.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture sl-SI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sl-SI", "default", { - name: "sl-SI", - englishName: "Slovenian (Slovenia)", - nativeName: "slovenski (Slovenija)", - language: "sl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-neskončnost", - positiveInfinity: "neskončnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], - namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], - namesShort: ["ne","po","to","sr","če","pe","so"] - }, - months: { - names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sl-SI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sl-SI", "default", { + name: "sl-SI", + englishName: "Slovenian (Slovenia)", + nativeName: "slovenski (Slovenija)", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskončnost", + positiveInfinity: "neskončnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], + namesShort: ["ne","po","to","sr","če","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sl.js b/pub/lib/globalize/cultures/globalize.culture.sl.js index 0134adf51df32..94d4d6782cac1 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sl.js +++ b/pub/lib/globalize/cultures/globalize.culture.sl.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture sl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sl", "default", { - name: "sl", - englishName: "Slovenian", - nativeName: "slovenski", - language: "sl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-neskončnost", - positiveInfinity: "neskončnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], - namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], - namesShort: ["ne","po","to","sr","če","pe","so"] - }, - months: { - names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sl", "default", { + name: "sl", + englishName: "Slovenian", + nativeName: "slovenski", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskončnost", + positiveInfinity: "neskončnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], + namesShort: ["ne","po","to","sr","če","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sma-NO.js b/pub/lib/globalize/cultures/globalize.culture.sma-NO.js index 977aa832c6f51..120607559e381 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sma-NO.js +++ b/pub/lib/globalize/cultures/globalize.culture.sma-NO.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture sma-NO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sma-NO", "default", { - name: "sma-NO", - englishName: "Sami, Southern (Norway)", - nativeName: "åarjelsaemiengiele (Nöörje)", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sma-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma-NO", "default", { + name: "sma-NO", + englishName: "Sami, Southern (Norway)", + nativeName: "åarjelsaemiengiele (Nöörje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sma-SE.js b/pub/lib/globalize/cultures/globalize.culture.sma-SE.js index 0012dcca4e1cf..3c73b5c40c2e1 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sma-SE.js +++ b/pub/lib/globalize/cultures/globalize.culture.sma-SE.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sma-SE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sma-SE", "default", { - name: "sma-SE", - englishName: "Sami, Southern (Sweden)", - nativeName: "åarjelsaemiengiele (Sveerje)", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sma-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma-SE", "default", { + name: "sma-SE", + englishName: "Sami, Southern (Sweden)", + nativeName: "åarjelsaemiengiele (Sveerje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sma.js b/pub/lib/globalize/cultures/globalize.culture.sma.js index 28df18d8d8b8e..16140d5a0d707 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sma.js +++ b/pub/lib/globalize/cultures/globalize.culture.sma.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sma - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sma", "default", { - name: "sma", - englishName: "Sami (Southern)", - nativeName: "åarjelsaemiengiele", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sma + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma", "default", { + name: "sma", + englishName: "Sami (Southern)", + nativeName: "åarjelsaemiengiele", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.smj-NO.js b/pub/lib/globalize/cultures/globalize.culture.smj-NO.js index df610e3e5c2fb..5c28cd3c59f32 100644 --- a/pub/lib/globalize/cultures/globalize.culture.smj-NO.js +++ b/pub/lib/globalize/cultures/globalize.culture.smj-NO.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture smj-NO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "smj-NO", "default", { - name: "smj-NO", - englishName: "Sami, Lule (Norway)", - nativeName: "julevusámegiella (Vuodna)", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sådnåbiejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["såd","mán","dis","gas","duor","bier","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture smj-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj-NO", "default", { + name: "smj-NO", + englishName: "Sami, Lule (Norway)", + nativeName: "julevusámegiella (Vuodna)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sådnåbiejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["såd","mán","dis","gas","duor","bier","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.smj-SE.js b/pub/lib/globalize/cultures/globalize.culture.smj-SE.js index b20cdf1bb6a14..5dd2b123faffc 100644 --- a/pub/lib/globalize/cultures/globalize.culture.smj-SE.js +++ b/pub/lib/globalize/cultures/globalize.culture.smj-SE.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture smj-SE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "smj-SE", "default", { - name: "smj-SE", - englishName: "Sami, Lule (Sweden)", - nativeName: "julevusámegiella (Svierik)", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], - namesShort: ["á","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture smj-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj-SE", "default", { + name: "smj-SE", + englishName: "Sami, Lule (Sweden)", + nativeName: "julevusámegiella (Svierik)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.smj.js b/pub/lib/globalize/cultures/globalize.culture.smj.js index 0e34402b73ab8..1b61e4d6ff6c2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.smj.js +++ b/pub/lib/globalize/cultures/globalize.culture.smj.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture smj - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "smj", "default", { - name: "smj", - englishName: "Sami (Lule)", - nativeName: "julevusámegiella", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], - namesShort: ["á","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture smj + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj", "default", { + name: "smj", + englishName: "Sami (Lule)", + nativeName: "julevusámegiella", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.smn-FI.js b/pub/lib/globalize/cultures/globalize.culture.smn-FI.js index 78bd44989f754..6ca13b8a9b457 100644 --- a/pub/lib/globalize/cultures/globalize.culture.smn-FI.js +++ b/pub/lib/globalize/cultures/globalize.culture.smn-FI.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture smn-FI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "smn-FI", "default", { - name: "smn-FI", - englishName: "Sami, Inari (Finland)", - nativeName: "sämikielâ (Suomâ)", - language: "smn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], - namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], - namesShort: ["p","v","m","k","t","v","l"] - }, - months: { - names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], - namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture smn-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smn-FI", "default", { + name: "smn-FI", + englishName: "Sami, Inari (Finland)", + nativeName: "sämikielâ (Suomâ)", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.smn.js b/pub/lib/globalize/cultures/globalize.culture.smn.js index 599b1d4065e83..c43c7e3da6015 100644 --- a/pub/lib/globalize/cultures/globalize.culture.smn.js +++ b/pub/lib/globalize/cultures/globalize.culture.smn.js @@ -1,76 +1,76 @@ -/** - * Globalize Culture smn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "smn", "default", { - name: "smn", - englishName: "Sami (Inari)", - nativeName: "sämikielâ", - language: "smn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], - namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], - namesShort: ["p","v","m","k","t","v","l"] - }, - months: { - names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], - namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture smn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smn", "default", { + name: "smn", + englishName: "Sami (Inari)", + nativeName: "sämikielâ", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sms-FI.js b/pub/lib/globalize/cultures/globalize.culture.sms-FI.js index 3d2dd095c02a8..4fa333ca67422 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sms-FI.js +++ b/pub/lib/globalize/cultures/globalize.culture.sms-FI.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sms-FI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sms-FI", "default", { - name: "sms-FI", - englishName: "Sami, Skolt (Finland)", - nativeName: "sääm´ǩiõll (Lää´ddjânnam)", - language: "sms", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], - namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], - namesShort: ["p","v","m","s","n","p","s"] - }, - months: { - names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - monthsGenitive: { - names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sms-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sms-FI", "default", { + name: "sms-FI", + englishName: "Sami, Skolt (Finland)", + nativeName: "sääm´ǩiõll (Lää´ddjânnam)", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + monthsGenitive: { + names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sms.js b/pub/lib/globalize/cultures/globalize.culture.sms.js index e36cfbc58b0cd..e71dffa832a0f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sms.js +++ b/pub/lib/globalize/cultures/globalize.culture.sms.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sms - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sms", "default", { - name: "sms", - englishName: "Sami (Skolt)", - nativeName: "sääm´ǩiõll", - language: "sms", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], - namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], - namesShort: ["p","v","m","s","n","p","s"] - }, - months: { - names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - monthsGenitive: { - names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sms + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sms", "default", { + name: "sms", + englishName: "Sami (Skolt)", + nativeName: "sääm´ǩiõll", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + monthsGenitive: { + names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sq-AL.js b/pub/lib/globalize/cultures/globalize.culture.sq-AL.js index 46030d4dba0ff..49435fe3521e0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sq-AL.js +++ b/pub/lib/globalize/cultures/globalize.culture.sq-AL.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture sq-AL - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sq-AL", "default", { - name: "sq-AL", - englishName: "Albanian (Albania)", - nativeName: "shqipe (Shqipëria)", - language: "sq", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-infinit", - positiveInfinity: "infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": ".", - ".": ",", - symbol: "Lek" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], - namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], - namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] - }, - months: { - names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], - namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] - }, - AM: ["PD","pd","PD"], - PM: ["MD","md","MD"], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy-MM-dd", - t: "h:mm.tt", - T: "h:mm:ss.tt", - f: "yyyy-MM-dd h:mm.tt", - F: "yyyy-MM-dd h:mm:ss.tt", - Y: "yyyy-MM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sq-AL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sq-AL", "default", { + name: "sq-AL", + englishName: "Albanian (Albania)", + nativeName: "shqipe (Shqipëria)", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sq.js b/pub/lib/globalize/cultures/globalize.culture.sq.js index fc57a06957190..87d204f54c5d9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sq.js +++ b/pub/lib/globalize/cultures/globalize.culture.sq.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture sq - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sq", "default", { - name: "sq", - englishName: "Albanian", - nativeName: "shqipe", - language: "sq", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-infinit", - positiveInfinity: "infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": ".", - ".": ",", - symbol: "Lek" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], - namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], - namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] - }, - months: { - names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], - namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] - }, - AM: ["PD","pd","PD"], - PM: ["MD","md","MD"], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy-MM-dd", - t: "h:mm.tt", - T: "h:mm:ss.tt", - f: "yyyy-MM-dd h:mm.tt", - F: "yyyy-MM-dd h:mm:ss.tt", - Y: "yyyy-MM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sq + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sq", "default", { + name: "sq", + englishName: "Albanian", + nativeName: "shqipe", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-BA.js b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-BA.js index 74796e6ef4306..f26fc41ddd725 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-BA.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-BA.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture sr-Cyrl-BA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { - name: "sr-Cyrl-BA", - englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", - nativeName: "српски (Босна и Херцеговина)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Cyrl-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { + name: "sr-Cyrl-BA", + englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "српски (Босна и Херцеговина)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-CS.js b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-CS.js index 2b2a15b75dd1d..bf82b5d78bf7a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-CS.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-CS.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Cyrl-CS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { - name: "sr-Cyrl-CS", - englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", - nativeName: "српски (Србија и Црна Гора (Претходно))", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Cyrl-CS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { + name: "sr-Cyrl-CS", + englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", + nativeName: "српски (Србија и Црна Гора (Претходно))", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-ME.js b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-ME.js index c633650c88a53..0a5b6704deab9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-ME.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-ME.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Cyrl-ME - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { - name: "sr-Cyrl-ME", - englishName: "Serbian (Cyrillic, Montenegro)", - nativeName: "српски (Црна Гора)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Cyrl-ME + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { + name: "sr-Cyrl-ME", + englishName: "Serbian (Cyrillic, Montenegro)", + nativeName: "српски (Црна Гора)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-RS.js b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-RS.js index 6ea169d3340ee..5536d7fc11498 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-RS.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl-RS.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Cyrl-RS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { - name: "sr-Cyrl-RS", - englishName: "Serbian (Cyrillic, Serbia)", - nativeName: "српски (Србија)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Cyrl-RS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { + name: "sr-Cyrl-RS", + englishName: "Serbian (Cyrillic, Serbia)", + nativeName: "српски (Србија)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl.js index a3f879f1df810..b8a70d16b32aa 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Cyrl.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Cyrl", "default", { - name: "sr-Cyrl", - englishName: "Serbian (Cyrillic)", - nativeName: "српски", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl", "default", { + name: "sr-Cyrl", + englishName: "Serbian (Cyrillic)", + nativeName: "српски", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-BA.js b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-BA.js index 76119e762ed2c..35ea151474e7b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-BA.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-BA.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture sr-Latn-BA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Latn-BA", "default", { - name: "sr-Latn-BA", - englishName: "Serbian (Latin, Bosnia and Herzegovina)", - nativeName: "srpski (Bosna i Hercegovina)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Latn-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-BA", "default", { + name: "sr-Latn-BA", + englishName: "Serbian (Latin, Bosnia and Herzegovina)", + nativeName: "srpski (Bosna i Hercegovina)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-CS.js b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-CS.js index c5b30ab302f27..f36b5a9d0608d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-CS.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-CS.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Latn-CS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Latn-CS", "default", { - name: "sr-Latn-CS", - englishName: "Serbian (Latin, Serbia and Montenegro (Former))", - nativeName: "srpski (Srbija i Crna Gora (Prethodno))", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Latn-CS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-CS", "default", { + name: "sr-Latn-CS", + englishName: "Serbian (Latin, Serbia and Montenegro (Former))", + nativeName: "srpski (Srbija i Crna Gora (Prethodno))", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-ME.js b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-ME.js index 017b34cd4d012..0c3cccc9b4c9c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-ME.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-ME.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Latn-ME - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Latn-ME", "default", { - name: "sr-Latn-ME", - englishName: "Serbian (Latin, Montenegro)", - nativeName: "srpski (Crna Gora)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Latn-ME + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-ME", "default", { + name: "sr-Latn-ME", + englishName: "Serbian (Latin, Montenegro)", + nativeName: "srpski (Crna Gora)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-RS.js b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-RS.js index 40882d5730224..1d45759b306a9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Latn-RS.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Latn-RS.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Latn-RS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Latn-RS", "default", { - name: "sr-Latn-RS", - englishName: "Serbian (Latin, Serbia)", - nativeName: "srpski (Srbija)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Latn-RS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-RS", "default", { + name: "sr-Latn-RS", + englishName: "Serbian (Latin, Serbia)", + nativeName: "srpski (Srbija)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr-Latn.js b/pub/lib/globalize/cultures/globalize.culture.sr-Latn.js index d2ef247db5ca9..fe197d669f1e3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr-Latn.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr-Latn", "default", { - name: "sr-Latn", - englishName: "Serbian (Latin)", - nativeName: "srpski", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn", "default", { + name: "sr-Latn", + englishName: "Serbian (Latin)", + nativeName: "srpski", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sr.js b/pub/lib/globalize/cultures/globalize.culture.sr.js index 75e26368d7e4e..284001f172ae9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sr.js +++ b/pub/lib/globalize/cultures/globalize.culture.sr.js @@ -1,80 +1,80 @@ -/** - * Globalize Culture sr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sr", "default", { - name: "sr", - englishName: "Serbian", - nativeName: "srpski", - language: "sr", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr", "default", { + name: "sr", + englishName: "Serbian", + nativeName: "srpski", + language: "sr", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sv-FI.js b/pub/lib/globalize/cultures/globalize.culture.sv-FI.js index a11225e6a1472..9067d4c0a1f25 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sv-FI.js +++ b/pub/lib/globalize/cultures/globalize.culture.sv-FI.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture sv-FI - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sv-FI", "default", { - name: "sv-FI", - englishName: "Swedish (Finland)", - nativeName: "svenska (Finland)", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sv-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv-FI", "default", { + name: "sv-FI", + englishName: "Swedish (Finland)", + nativeName: "svenska (Finland)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sv-SE.js b/pub/lib/globalize/cultures/globalize.culture.sv-SE.js index 294b777810a41..5cf059e3388ec 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sv-SE.js +++ b/pub/lib/globalize/cultures/globalize.culture.sv-SE.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture sv-SE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sv-SE", "default", { - name: "sv-SE", - englishName: "Swedish (Sweden)", - nativeName: "svenska (Sverige)", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sv-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv-SE", "default", { + name: "sv-SE", + englishName: "Swedish (Sweden)", + nativeName: "svenska (Sverige)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sv.js b/pub/lib/globalize/cultures/globalize.culture.sv.js index a8047405b7ed8..8c370284208e5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sv.js +++ b/pub/lib/globalize/cultures/globalize.culture.sv.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture sv - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sv", "default", { - name: "sv", - englishName: "Swedish", - nativeName: "svenska", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture sv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv", "default", { + name: "sv", + englishName: "Swedish", + nativeName: "svenska", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sw-KE.js b/pub/lib/globalize/cultures/globalize.culture.sw-KE.js index 99fa104f7f9fd..236bb277f2d63 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sw-KE.js +++ b/pub/lib/globalize/cultures/globalize.culture.sw-KE.js @@ -1,53 +1,53 @@ -/** - * Globalize Culture sw-KE - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sw-KE", "default", { - name: "sw-KE", - englishName: "Kiswahili (Kenya)", - nativeName: "Kiswahili (Kenya)", - language: "sw", - numberFormat: { - currency: { - symbol: "S" - } - }, - calendars: { - standard: { - days: { - names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], - namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], - namesShort: ["P","T","N","T","A","I","M"] - }, - months: { - names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] - } - } - } -}); - -}( this )); +/** + * Globalize Culture sw-KE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sw-KE", "default", { + name: "sw-KE", + englishName: "Kiswahili (Kenya)", + nativeName: "Kiswahili (Kenya)", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.sw.js b/pub/lib/globalize/cultures/globalize.culture.sw.js index b978458cb44f8..c3c313c1e29e4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.sw.js +++ b/pub/lib/globalize/cultures/globalize.culture.sw.js @@ -1,53 +1,53 @@ -/** - * Globalize Culture sw - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "sw", "default", { - name: "sw", - englishName: "Kiswahili", - nativeName: "Kiswahili", - language: "sw", - numberFormat: { - currency: { - symbol: "S" - } - }, - calendars: { - standard: { - days: { - names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], - namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], - namesShort: ["P","T","N","T","A","I","M"] - }, - months: { - names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] - } - } - } -}); - -}( this )); +/** + * Globalize Culture sw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sw", "default", { + name: "sw", + englishName: "Kiswahili", + nativeName: "Kiswahili", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.syr-SY.js b/pub/lib/globalize/cultures/globalize.culture.syr-SY.js index aed5ed0d1c107..b3fa598720129 100644 --- a/pub/lib/globalize/cultures/globalize.culture.syr-SY.js +++ b/pub/lib/globalize/cultures/globalize.culture.syr-SY.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture syr-SY - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "syr-SY", "default", { - name: "syr-SY", - englishName: "Syriac (Syria)", - nativeName: "ܣܘܪܝܝܐ (سوريا)", - language: "syr", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], - namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], - namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] - }, - months: { - names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], - namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] - }, - AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], - PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture syr-SY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "syr-SY", "default", { + name: "syr-SY", + englishName: "Syriac (Syria)", + nativeName: "ܣܘܪܝܝܐ (سوريا)", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], + namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], + namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] + }, + months: { + names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], + namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] + }, + AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], + PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.syr.js b/pub/lib/globalize/cultures/globalize.culture.syr.js index 6af9565eabf20..f48dfdacf690f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.syr.js +++ b/pub/lib/globalize/cultures/globalize.culture.syr.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture syr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "syr", "default", { - name: "syr", - englishName: "Syriac", - nativeName: "ܣܘܪܝܝܐ", - language: "syr", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], - namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], - namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] - }, - months: { - names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], - namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] - }, - AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], - PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture syr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "syr", "default", { + name: "syr", + englishName: "Syriac", + nativeName: "ܣܘܪܝܝܐ", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], + namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], + namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] + }, + months: { + names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], + namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] + }, + AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], + PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ta-IN.js b/pub/lib/globalize/cultures/globalize.culture.ta-IN.js index 3d43b072a97bb..fff637cbe4de3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ta-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ta-IN.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture ta-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ta-IN", "default", { - name: "ta-IN", - englishName: "Tamil (India)", - nativeName: "தமிழ் (இந்தியா)", - language: "ta", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ரூ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], - namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], - namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] - }, - months: { - names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], - namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] - }, - AM: ["காலை","காலை","காலை"], - PM: ["மாலை","மாலை","மாலை"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ta-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ta-IN", "default", { + name: "ta-IN", + englishName: "Tamil (India)", + nativeName: "தமிழ் (இந்தியா)", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], + namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], + namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], + namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ta.js b/pub/lib/globalize/cultures/globalize.culture.ta.js index e5290094d09b0..669306503eddf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ta.js +++ b/pub/lib/globalize/cultures/globalize.culture.ta.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture ta - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ta", "default", { - name: "ta", - englishName: "Tamil", - nativeName: "தமிழ்", - language: "ta", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ரூ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], - namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], - namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] - }, - months: { - names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], - namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] - }, - AM: ["காலை","காலை","காலை"], - PM: ["மாலை","மாலை","மாலை"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ta + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ta", "default", { + name: "ta", + englishName: "Tamil", + nativeName: "தமிழ்", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], + namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], + namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], + namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.te-IN.js b/pub/lib/globalize/cultures/globalize.culture.te-IN.js index 779bbf9aee257..9b7afdae7d9a1 100644 --- a/pub/lib/globalize/cultures/globalize.culture.te-IN.js +++ b/pub/lib/globalize/cultures/globalize.culture.te-IN.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture te-IN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "te-IN", "default", { - name: "te-IN", - englishName: "Telugu (India)", - nativeName: "తెలుగు (భారత దేశం)", - language: "te", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "రూ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], - namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], - namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] - }, - months: { - names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], - namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] - }, - AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], - PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture te-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "te-IN", "default", { + name: "te-IN", + englishName: "Telugu (India)", + nativeName: "తెలుగు (భారత దేశం)", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], + namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] + }, + months: { + names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], + namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] + }, + AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], + PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.te.js b/pub/lib/globalize/cultures/globalize.culture.te.js index a81b01d2ad2bb..44ff542337294 100644 --- a/pub/lib/globalize/cultures/globalize.culture.te.js +++ b/pub/lib/globalize/cultures/globalize.culture.te.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture te - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "te", "default", { - name: "te", - englishName: "Telugu", - nativeName: "తెలుగు", - language: "te", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "రూ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], - namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], - namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] - }, - months: { - names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], - namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] - }, - AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], - PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture te + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "te", "default", { + name: "te", + englishName: "Telugu", + nativeName: "తెలుగు", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], + namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] + }, + months: { + names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], + namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] + }, + AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], + PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js b/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js index 038d009f1829c..c831495c69a1b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js +++ b/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture tg-Cyrl-TJ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { - name: "tg-Cyrl-TJ", - englishName: "Tajik (Cyrillic, Tajikistan)", - nativeName: "Тоҷикӣ (Тоҷикистон)", - language: "tg-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tg-Cyrl-TJ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { + name: "tg-Cyrl-TJ", + englishName: "Tajik (Cyrillic, Tajikistan)", + nativeName: "Тоҷикӣ (Тоҷикистон)", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl.js index 30215df7a312f..fceb858e1bfcf 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.tg-Cyrl.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture tg-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tg-Cyrl", "default", { - name: "tg-Cyrl", - englishName: "Tajik (Cyrillic)", - nativeName: "Тоҷикӣ", - language: "tg-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tg-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg-Cyrl", "default", { + name: "tg-Cyrl", + englishName: "Tajik (Cyrillic)", + nativeName: "Тоҷикӣ", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tg.js b/pub/lib/globalize/cultures/globalize.culture.tg.js index 26679a4a9ec18..c8dbc2a820457 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tg.js +++ b/pub/lib/globalize/cultures/globalize.culture.tg.js @@ -1,84 +1,84 @@ -/** - * Globalize Culture tg - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tg", "default", { - name: "tg", - englishName: "Tajik", - nativeName: "Тоҷикӣ", - language: "tg", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tg + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg", "default", { + name: "tg", + englishName: "Tajik", + nativeName: "Тоҷикӣ", + language: "tg", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.th-TH.js b/pub/lib/globalize/cultures/globalize.culture.th-TH.js index bf4de91b0e213..e963b58526f5c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.th-TH.js +++ b/pub/lib/globalize/cultures/globalize.culture.th-TH.js @@ -1,90 +1,90 @@ -/** - * Globalize Culture th-TH - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "th-TH", "default", { - name: "th-TH", - englishName: "Thai (Thailand)", - nativeName: "ไทย (ไทย)", - language: "th", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "฿" - } - }, - calendars: { - standard: { - name: "ThaiBuddhist", - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - eras: [{"name":"พ.ศ.","start":null,"offset":-543}], - twoDigitYearMax: 2572, - patterns: { - d: "d/M/yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Gregorian_Localized: { - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - patterns: { - d: "d/M/yyyy", - D: "'วัน'dddd'ที่' d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", - F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture th-TH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "th-TH", "default", { + name: "th-TH", + englishName: "Thai (Thailand)", + nativeName: "ไทย (ไทย)", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.th.js b/pub/lib/globalize/cultures/globalize.culture.th.js index 73e1b55156278..d8baae5fe5eb7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.th.js +++ b/pub/lib/globalize/cultures/globalize.culture.th.js @@ -1,90 +1,90 @@ -/** - * Globalize Culture th - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "th", "default", { - name: "th", - englishName: "Thai", - nativeName: "ไทย", - language: "th", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "฿" - } - }, - calendars: { - standard: { - name: "ThaiBuddhist", - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - eras: [{"name":"พ.ศ.","start":null,"offset":-543}], - twoDigitYearMax: 2572, - patterns: { - d: "d/M/yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Gregorian_Localized: { - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - patterns: { - d: "d/M/yyyy", - D: "'วัน'dddd'ที่' d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", - F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture th + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "th", "default", { + name: "th", + englishName: "Thai", + nativeName: "ไทย", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tk-TM.js b/pub/lib/globalize/cultures/globalize.culture.tk-TM.js index 57278e2612801..e1367edfe77fa 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tk-TM.js +++ b/pub/lib/globalize/cultures/globalize.culture.tk-TM.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture tk-TM - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tk-TM", "default", { - name: "tk-TM", - englishName: "Turkmen (Turkmenistan)", - nativeName: "türkmençe (Türkmenistan)", - language: "tk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-üznüksizlik", - positiveInfinity: "üznüksizlik", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "m." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], - namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], - namesShort: ["D","S","Ç","P","A","Ş","Ý"] - }, - months: { - names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], - namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "yyyy 'ý.' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'ý.' MMMM d H:mm", - F: "yyyy 'ý.' MMMM d H:mm:ss", - Y: "yyyy 'ý.' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tk-TM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tk-TM", "default", { + name: "tk-TM", + englishName: "Turkmen (Turkmenistan)", + nativeName: "türkmençe (Türkmenistan)", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], + namesShort: ["D","S","Ç","P","A","Ş","Ý"] + }, + months: { + names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tk.js b/pub/lib/globalize/cultures/globalize.culture.tk.js index afa4162cfb23e..de58ad4b8f6a8 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tk.js +++ b/pub/lib/globalize/cultures/globalize.culture.tk.js @@ -1,78 +1,78 @@ -/** - * Globalize Culture tk - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tk", "default", { - name: "tk", - englishName: "Turkmen", - nativeName: "türkmençe", - language: "tk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-üznüksizlik", - positiveInfinity: "üznüksizlik", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "m." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], - namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], - namesShort: ["D","S","Ç","P","A","Ş","Ý"] - }, - months: { - names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], - namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "yyyy 'ý.' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'ý.' MMMM d H:mm", - F: "yyyy 'ý.' MMMM d H:mm:ss", - Y: "yyyy 'ý.' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tk", "default", { + name: "tk", + englishName: "Turkmen", + nativeName: "türkmençe", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], + namesShort: ["D","S","Ç","P","A","Ş","Ý"] + }, + months: { + names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tn-ZA.js b/pub/lib/globalize/cultures/globalize.culture.tn-ZA.js index 2d521ed8b6e1f..e46d573c5442e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tn-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.tn-ZA.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture tn-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tn-ZA", "default", { - name: "tn-ZA", - englishName: "Setswana (South Africa)", - nativeName: "Setswana (Aforika Borwa)", - language: "tn", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], - namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], - namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] - }, - months: { - names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], - namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tn-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tn-ZA", "default", { + name: "tn-ZA", + englishName: "Setswana (South Africa)", + nativeName: "Setswana (Aforika Borwa)", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tn.js b/pub/lib/globalize/cultures/globalize.culture.tn.js index c2296bd4b229c..2d19780ba9dc3 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tn.js +++ b/pub/lib/globalize/cultures/globalize.culture.tn.js @@ -1,67 +1,67 @@ -/** - * Globalize Culture tn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tn", "default", { - name: "tn", - englishName: "Setswana", - nativeName: "Setswana", - language: "tn", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], - namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], - namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] - }, - months: { - names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], - namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tn", "default", { + name: "tn", + englishName: "Setswana", + nativeName: "Setswana", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tr-TR.js b/pub/lib/globalize/cultures/globalize.culture.tr-TR.js index 6c4b728901b59..f3188223041da 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tr-TR.js +++ b/pub/lib/globalize/cultures/globalize.culture.tr-TR.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture tr-TR - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tr-TR", "default", { - name: "tr-TR", - englishName: "Turkish (Turkey)", - nativeName: "Türkçe (Türkiye)", - language: "tr", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "TL" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], - namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], - namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] - }, - months: { - names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], - namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tr-TR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tr-TR", "default", { + name: "tr-TR", + englishName: "Turkish (Turkey)", + nativeName: "Türkçe (Türkiye)", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tr.js b/pub/lib/globalize/cultures/globalize.culture.tr.js index ffd5a2e0db231..1f38d83c2d12d 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tr.js +++ b/pub/lib/globalize/cultures/globalize.culture.tr.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture tr - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tr", "default", { - name: "tr", - englishName: "Turkish", - nativeName: "Türkçe", - language: "tr", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "TL" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], - namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], - namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] - }, - months: { - names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], - namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tr", "default", { + name: "tr", + englishName: "Turkish", + nativeName: "Türkçe", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tt-RU.js b/pub/lib/globalize/cultures/globalize.culture.tt-RU.js index bbb4b24ad8022..434e6a6fac62c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tt-RU.js +++ b/pub/lib/globalize/cultures/globalize.culture.tt-RU.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture tt-RU - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tt-RU", "default", { - name: "tt-RU", - englishName: "Tatar (Russia)", - nativeName: "Татар (Россия)", - language: "tt", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], - namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], - namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] - }, - months: { - names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] - }, - monthsGenitive: { - names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], - namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tt-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tt-RU", "default", { + name: "tt-RU", + englishName: "Tatar (Russia)", + nativeName: "Татар (Россия)", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tt.js b/pub/lib/globalize/cultures/globalize.culture.tt.js index 13df0594b6079..ee9c11bf08677 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tt.js +++ b/pub/lib/globalize/cultures/globalize.culture.tt.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture tt - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tt", "default", { - name: "tt", - englishName: "Tatar", - nativeName: "Татар", - language: "tt", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], - namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], - namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] - }, - months: { - names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] - }, - monthsGenitive: { - names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], - namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tt", "default", { + name: "tt", + englishName: "Tatar", + nativeName: "Татар", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tzm-Latn-DZ.js b/pub/lib/globalize/cultures/globalize.culture.tzm-Latn-DZ.js index bed67fa895e30..d6ece98f2904c 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tzm-Latn-DZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.tzm-Latn-DZ.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture tzm-Latn-DZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { - name: "tzm-Latn-DZ", - englishName: "Tamazight (Latin, Algeria)", - nativeName: "Tamazight (Djazaïr)", - language: "tzm-Latn", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tzm-Latn-DZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { + name: "tzm-Latn-DZ", + englishName: "Tamazight (Latin, Algeria)", + nativeName: "Tamazight (Djazaïr)", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tzm-Latn.js b/pub/lib/globalize/cultures/globalize.culture.tzm-Latn.js index 8a3f0062fb8ab..b201d1f656cf5 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tzm-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.tzm-Latn.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture tzm-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tzm-Latn", "default", { - name: "tzm-Latn", - englishName: "Tamazight (Latin)", - nativeName: "Tamazight", - language: "tzm-Latn", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tzm-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm-Latn", "default", { + name: "tzm-Latn", + englishName: "Tamazight (Latin)", + nativeName: "Tamazight", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.tzm.js b/pub/lib/globalize/cultures/globalize.culture.tzm.js index ac43440be4e5b..acd6ccd88e331 100644 --- a/pub/lib/globalize/cultures/globalize.culture.tzm.js +++ b/pub/lib/globalize/cultures/globalize.culture.tzm.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture tzm - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "tzm", "default", { - name: "tzm", - englishName: "Tamazight", - nativeName: "Tamazight", - language: "tzm", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture tzm + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm", "default", { + name: "tzm", + englishName: "Tamazight", + nativeName: "Tamazight", + language: "tzm", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ug-CN.js b/pub/lib/globalize/cultures/globalize.culture.ug-CN.js index e053128a34be9..41af88fe7cb00 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ug-CN.js +++ b/pub/lib/globalize/cultures/globalize.culture.ug-CN.js @@ -1,75 +1,75 @@ -/** - * Globalize Culture ug-CN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ug-CN", "default", { - name: "ug-CN", - englishName: "Uyghur (PRC)", - nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", - language: "ug", - isRTL: true, - numberFormat: { - "NaN": "سان ئەمەس", - negativeInfinity: "مەنپىي چەكسىزلىك", - positiveInfinity: "مۇسبەت چەكسىزلىك", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], - namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], - namesShort: ["ي","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], - namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] - }, - AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], - PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], - eras: [{"name":"مىلادى","start":null,"offset":0}], - patterns: { - d: "yyyy-M-d", - D: "yyyy-'يىلى' MMMM d-'كۈنى،'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", - F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", - M: "MMMM d'-كۈنى'", - Y: "yyyy-'يىلى' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ug-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ug-CN", "default", { + name: "ug-CN", + englishName: "Uyghur (PRC)", + nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], + namesShort: ["ي","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ug.js b/pub/lib/globalize/cultures/globalize.culture.ug.js index 62b8f92e7b7f8..3f95c4b6c9c97 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ug.js +++ b/pub/lib/globalize/cultures/globalize.culture.ug.js @@ -1,75 +1,75 @@ -/** - * Globalize Culture ug - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ug", "default", { - name: "ug", - englishName: "Uyghur", - nativeName: "ئۇيغۇرچە", - language: "ug", - isRTL: true, - numberFormat: { - "NaN": "سان ئەمەس", - negativeInfinity: "مەنپىي چەكسىزلىك", - positiveInfinity: "مۇسبەت چەكسىزلىك", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], - namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], - namesShort: ["ي","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], - namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] - }, - AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], - PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], - eras: [{"name":"مىلادى","start":null,"offset":0}], - patterns: { - d: "yyyy-M-d", - D: "yyyy-'يىلى' MMMM d-'كۈنى،'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", - F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", - M: "MMMM d'-كۈنى'", - Y: "yyyy-'يىلى' MMMM" - } - } - } -}); - -}( this )); +/** + * Globalize Culture ug + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ug", "default", { + name: "ug", + englishName: "Uyghur", + nativeName: "ئۇيغۇرچە", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], + namesShort: ["ي","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uk-UA.js b/pub/lib/globalize/cultures/globalize.culture.uk-UA.js index b9345cb7c555e..84653b470f4df 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uk-UA.js +++ b/pub/lib/globalize/cultures/globalize.culture.uk-UA.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture uk-UA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uk-UA", "default", { - name: "uk-UA", - englishName: "Ukrainian (Ukraine)", - nativeName: "українська (Україна)", - language: "uk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-безмежність", - positiveInfinity: "безмежність", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₴" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], - namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], - namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] - }, - monthsGenitive: { - names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], - namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy' р.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy' р.' H:mm", - F: "d MMMM yyyy' р.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy' р.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uk-UA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uk-UA", "default", { + name: "uk-UA", + englishName: "Ukrainian (Ukraine)", + nativeName: "українська (Україна)", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежність", + positiveInfinity: "безмежність", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₴" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], + namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] + }, + monthsGenitive: { + names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], + namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' р.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' р.' H:mm", + F: "d MMMM yyyy' р.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' р.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uk.js b/pub/lib/globalize/cultures/globalize.culture.uk.js index 9a1006d1d5dae..e1951bc11af63 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uk.js +++ b/pub/lib/globalize/cultures/globalize.culture.uk.js @@ -1,83 +1,83 @@ -/** - * Globalize Culture uk - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uk", "default", { - name: "uk", - englishName: "Ukrainian", - nativeName: "українська", - language: "uk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-безмежність", - positiveInfinity: "безмежність", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₴" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], - namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], - namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] - }, - monthsGenitive: { - names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], - namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy' р.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy' р.' H:mm", - F: "d MMMM yyyy' р.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy' р.'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uk", "default", { + name: "uk", + englishName: "Ukrainian", + nativeName: "українська", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежність", + positiveInfinity: "безмежність", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₴" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], + namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] + }, + monthsGenitive: { + names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], + namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' р.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' р.' H:mm", + F: "d MMMM yyyy' р.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' р.'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ur-PK.js b/pub/lib/globalize/cultures/globalize.culture.ur-PK.js index 9f16c9f6ad87b..62438a1bc4824 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ur-PK.js +++ b/pub/lib/globalize/cultures/globalize.culture.ur-PK.js @@ -1,157 +1,157 @@ -/** - * Globalize Culture ur-PK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ur-PK", "default", { - name: "ur-PK", - englishName: "Urdu (Islamic Republic of Pakistan)", - nativeName: "اُردو (پاکستان)", - language: "ur", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$n"], - symbol: "Rs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesShort: ["ا","پ","م","ب","ج","ج","ه"] - }, - months: { - names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], - namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - f: "dd MMMM, yyyy h:mm tt", - F: "dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - } - } -}); - -}( this )); +/** + * Globalize Culture ur-PK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ur-PK", "default", { + name: "ur-PK", + englishName: "Urdu (Islamic Republic of Pakistan)", + nativeName: "اُردو (پاکستان)", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesShort: ["ا","پ","م","ب","ج","ج","ه"] + }, + months: { + names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.ur.js b/pub/lib/globalize/cultures/globalize.culture.ur.js index 62fbdf41dd83f..a2a364100f773 100644 --- a/pub/lib/globalize/cultures/globalize.culture.ur.js +++ b/pub/lib/globalize/cultures/globalize.culture.ur.js @@ -1,157 +1,157 @@ -/** - * Globalize Culture ur - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ur", "default", { - name: "ur", - englishName: "Urdu", - nativeName: "اُردو", - language: "ur", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$n"], - symbol: "Rs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesShort: ["ا","پ","م","ب","ج","ج","ه"] - }, - months: { - names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], - namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - f: "dd MMMM, yyyy h:mm tt", - F: "dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - } - } -}); - -}( this )); +/** + * Globalize Culture ur + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ur", "default", { + name: "ur", + englishName: "Urdu", + nativeName: "اُردو", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesShort: ["ا","پ","م","ب","ج","ج","ه"] + }, + months: { + names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js b/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js index d5d39a41ad7e2..df24315e4a5ab 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture uz-Cyrl-UZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { - name: "uz-Cyrl-UZ", - englishName: "Uzbek (Cyrillic, Uzbekistan)", - nativeName: "Ўзбек (Ўзбекистон)", - language: "uz-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "сўм" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], - namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], - namesShort: ["я","д","с","ч","п","ж","ш"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'йил' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'йил' d-MMMM HH:mm", - F: "yyyy 'йил' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uz-Cyrl-UZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { + name: "uz-Cyrl-UZ", + englishName: "Uzbek (Cyrillic, Uzbekistan)", + nativeName: "Ўзбек (Ўзбекистон)", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "сўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], + namesShort: ["я","д","с","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl.js b/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl.js index 0cd187e771ca0..8fb8aad8fff0a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl.js +++ b/pub/lib/globalize/cultures/globalize.culture.uz-Cyrl.js @@ -1,81 +1,81 @@ -/** - * Globalize Culture uz-Cyrl - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uz-Cyrl", "default", { - name: "uz-Cyrl", - englishName: "Uzbek (Cyrillic)", - nativeName: "Ўзбек", - language: "uz-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "сўм" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], - namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], - namesShort: ["я","д","с","ч","п","ж","ш"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'йил' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'йил' d-MMMM HH:mm", - F: "yyyy 'йил' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uz-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Cyrl", "default", { + name: "uz-Cyrl", + englishName: "Uzbek (Cyrillic)", + nativeName: "Ўзбек", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "сўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], + namesShort: ["я","д","с","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uz-Latn-UZ.js b/pub/lib/globalize/cultures/globalize.culture.uz-Latn-UZ.js index 14c0d6e2e1d07..2ce219cb68902 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uz-Latn-UZ.js +++ b/pub/lib/globalize/cultures/globalize.culture.uz-Latn-UZ.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture uz-Latn-UZ - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uz-Latn-UZ", "default", { - name: "uz-Latn-UZ", - englishName: "Uzbek (Latin, Uzbekistan)", - nativeName: "U'zbek (U'zbekiston Respublikasi)", - language: "uz-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uz-Latn-UZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Latn-UZ", "default", { + name: "uz-Latn-UZ", + englishName: "Uzbek (Latin, Uzbekistan)", + nativeName: "U'zbek (U'zbekiston Respublikasi)", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uz-Latn.js b/pub/lib/globalize/cultures/globalize.culture.uz-Latn.js index 6eba1eb7d5238..ab03776adcc89 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uz-Latn.js +++ b/pub/lib/globalize/cultures/globalize.culture.uz-Latn.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture uz-Latn - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uz-Latn", "default", { - name: "uz-Latn", - englishName: "Uzbek (Latin)", - nativeName: "U'zbek", - language: "uz-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uz-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Latn", "default", { + name: "uz-Latn", + englishName: "Uzbek (Latin)", + nativeName: "U'zbek", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.uz.js b/pub/lib/globalize/cultures/globalize.culture.uz.js index 2372fb59ce9ee..c5e752fd66b31 100644 --- a/pub/lib/globalize/cultures/globalize.culture.uz.js +++ b/pub/lib/globalize/cultures/globalize.culture.uz.js @@ -1,77 +1,77 @@ -/** - * Globalize Culture uz - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "uz", "default", { - name: "uz", - englishName: "Uzbek", - nativeName: "U'zbek", - language: "uz", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture uz + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz", "default", { + name: "uz", + englishName: "Uzbek", + nativeName: "U'zbek", + language: "uz", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.vi-VN.js b/pub/lib/globalize/cultures/globalize.culture.vi-VN.js index 939614f6bbfae..7e4194908a310 100644 --- a/pub/lib/globalize/cultures/globalize.culture.vi-VN.js +++ b/pub/lib/globalize/cultures/globalize.culture.vi-VN.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture vi-VN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "vi-VN", "default", { - name: "vi-VN", - englishName: "Vietnamese (Vietnam)", - nativeName: "Tiếng Việt (Việt Nam)", - language: "vi", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "₫" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], - namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], - namesShort: ["C","H","B","T","N","S","B"] - }, - months: { - names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], - namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] - }, - AM: ["SA","sa","SA"], - PM: ["CH","ch","CH"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - f: "dd MMMM yyyy h:mm tt", - F: "dd MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture vi-VN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "vi-VN", "default", { + name: "vi-VN", + englishName: "Vietnamese (Vietnam)", + nativeName: "Tiếng Việt (Việt Nam)", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "₫" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], + namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.vi.js b/pub/lib/globalize/cultures/globalize.culture.vi.js index 4ff4bb8b52ff9..63aea14a78d71 100644 --- a/pub/lib/globalize/cultures/globalize.culture.vi.js +++ b/pub/lib/globalize/cultures/globalize.culture.vi.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture vi - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "vi", "default", { - name: "vi", - englishName: "Vietnamese", - nativeName: "Tiếng Việt", - language: "vi", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "₫" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], - namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], - namesShort: ["C","H","B","T","N","S","B"] - }, - months: { - names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], - namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] - }, - AM: ["SA","sa","SA"], - PM: ["CH","ch","CH"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - f: "dd MMMM yyyy h:mm tt", - F: "dd MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture vi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "vi", "default", { + name: "vi", + englishName: "Vietnamese", + nativeName: "Tiếng Việt", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "₫" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], + namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.wo-SN.js b/pub/lib/globalize/cultures/globalize.culture.wo-SN.js index 59fc4790e9f80..3d57db287d601 100644 --- a/pub/lib/globalize/cultures/globalize.culture.wo-SN.js +++ b/pub/lib/globalize/cultures/globalize.culture.wo-SN.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture wo-SN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "wo-SN", "default", { - name: "wo-SN", - englishName: "Wolof (Senegal)", - nativeName: "Wolof (Sénégal)", - language: "wo", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "XOF" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture wo-SN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "wo-SN", "default", { + name: "wo-SN", + englishName: "Wolof (Senegal)", + nativeName: "Wolof (Sénégal)", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.wo.js b/pub/lib/globalize/cultures/globalize.culture.wo.js index 8af211beaa8ca..de914b02b0747 100644 --- a/pub/lib/globalize/cultures/globalize.culture.wo.js +++ b/pub/lib/globalize/cultures/globalize.culture.wo.js @@ -1,79 +1,79 @@ -/** - * Globalize Culture wo - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "wo", "default", { - name: "wo", - englishName: "Wolof", - nativeName: "Wolof", - language: "wo", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "XOF" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture wo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "wo", "default", { + name: "wo", + englishName: "Wolof", + nativeName: "Wolof", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.xh-ZA.js b/pub/lib/globalize/cultures/globalize.culture.xh-ZA.js index a71e22eb7d614..8cd414b70ea6a 100644 --- a/pub/lib/globalize/cultures/globalize.culture.xh-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.xh-ZA.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture xh-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "xh-ZA", "default", { - name: "xh-ZA", - englishName: "isiXhosa (South Africa)", - nativeName: "isiXhosa (uMzantsi Afrika)", - language: "xh", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] - }, - months: { - names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture xh-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "xh-ZA", "default", { + name: "xh-ZA", + englishName: "isiXhosa (South Africa)", + nativeName: "isiXhosa (uMzantsi Afrika)", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.xh.js b/pub/lib/globalize/cultures/globalize.culture.xh.js index 06ba9eef0c304..44b023c7d5e68 100644 --- a/pub/lib/globalize/cultures/globalize.culture.xh.js +++ b/pub/lib/globalize/cultures/globalize.culture.xh.js @@ -1,65 +1,65 @@ -/** - * Globalize Culture xh - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "xh", "default", { - name: "xh", - englishName: "isiXhosa", - nativeName: "isiXhosa", - language: "xh", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] - }, - months: { - names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture xh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "xh", "default", { + name: "xh", + englishName: "isiXhosa", + nativeName: "isiXhosa", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.yo-NG.js b/pub/lib/globalize/cultures/globalize.culture.yo-NG.js index 15b94c6192b08..1f8bb4f239f5e 100644 --- a/pub/lib/globalize/cultures/globalize.culture.yo-NG.js +++ b/pub/lib/globalize/cultures/globalize.culture.yo-NG.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture yo-NG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "yo-NG", "default", { - name: "yo-NG", - englishName: "Yoruba (Nigeria)", - nativeName: "Yoruba (Nigeria)", - language: "yo", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], - namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] - }, - AM: ["Owuro","owuro","OWURO"], - PM: ["Ale","ale","ALE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture yo-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "yo-NG", "default", { + name: "yo-NG", + englishName: "Yoruba (Nigeria)", + nativeName: "Yoruba (Nigeria)", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.yo.js b/pub/lib/globalize/cultures/globalize.culture.yo.js index 2318d971dbe13..a081e59ccf05f 100644 --- a/pub/lib/globalize/cultures/globalize.culture.yo.js +++ b/pub/lib/globalize/cultures/globalize.culture.yo.js @@ -1,60 +1,60 @@ -/** - * Globalize Culture yo - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "yo", "default", { - name: "yo", - englishName: "Yoruba", - nativeName: "Yoruba", - language: "yo", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], - namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] - }, - AM: ["Owuro","owuro","OWURO"], - PM: ["Ale","ale","ALE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture yo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "yo", "default", { + name: "yo", + englishName: "Yoruba", + nativeName: "Yoruba", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-CHS.js b/pub/lib/globalize/cultures/globalize.culture.zh-CHS.js index e97430986b3ff..a34813129f582 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-CHS.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-CHS.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture zh-CHS - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-CHS", "default", { - name: "zh-CHS", - englishName: "Chinese (Simplified) Legacy", - nativeName: "中文(简体) 旧版", - language: "zh-CHS", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-CHS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CHS", "default", { + name: "zh-CHS", + englishName: "Chinese (Simplified) Legacy", + nativeName: "中文(简体) 旧版", + language: "zh-CHS", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-CHT.js b/pub/lib/globalize/cultures/globalize.culture.zh-CHT.js index fc068a98a823d..3449b909607ca 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-CHT.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-CHT.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture zh-CHT - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-CHT", "default", { - name: "zh-CHT", - englishName: "Chinese (Traditional) Legacy", - nativeName: "中文(繁體) 舊版", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-CHT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CHT", "default", { + name: "zh-CHT", + englishName: "Chinese (Traditional) Legacy", + nativeName: "中文(繁體) 舊版", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-CN.js b/pub/lib/globalize/cultures/globalize.culture.zh-CN.js index 531f529304d02..88d67b3cf9ad4 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-CN.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-CN.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture zh-CN - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-CN", "default", { - name: "zh-CN", - englishName: "Chinese (Simplified, PRC)", - nativeName: "中文(中华人民共和国)", - language: "zh-CHS", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CN", "default", { + name: "zh-CN", + englishName: "Chinese (Simplified, PRC)", + nativeName: "中文(中华人民共和国)", + language: "zh-CHS", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-HK.js b/pub/lib/globalize/cultures/globalize.culture.zh-HK.js index 7448fef7589d9..0886288c2adc9 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-HK.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-HK.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture zh-HK - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-HK", "default", { - name: "zh-HK", - englishName: "Chinese (Traditional, Hong Kong S.A.R.)", - nativeName: "中文(香港特別行政區)", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-HK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-HK", "default", { + name: "zh-HK", + englishName: "Chinese (Traditional, Hong Kong S.A.R.)", + nativeName: "中文(香港特別行政區)", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-Hans.js b/pub/lib/globalize/cultures/globalize.culture.zh-Hans.js index 01fd7afd4bfed..c18946e317134 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-Hans.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-Hans.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture zh-Hans - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-Hans", "default", { - name: "zh-Hans", - englishName: "Chinese (Simplified)", - nativeName: "中文(简体)", - language: "zh-Hans", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-Hans + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-Hans", "default", { + name: "zh-Hans", + englishName: "Chinese (Simplified)", + nativeName: "中文(简体)", + language: "zh-Hans", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-Hant.js b/pub/lib/globalize/cultures/globalize.culture.zh-Hant.js index d1e6fbf50bda7..d34fa0309a2d2 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-Hant.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-Hant.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture zh-Hant - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-Hant", "default", { - name: "zh-Hant", - englishName: "Chinese (Traditional)", - nativeName: "中文(繁體)", - language: "zh-Hant", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-Hant + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-Hant", "default", { + name: "zh-Hant", + englishName: "Chinese (Traditional)", + nativeName: "中文(繁體)", + language: "zh-Hant", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-MO.js b/pub/lib/globalize/cultures/globalize.culture.zh-MO.js index 7cfb6bdd5b860..4c138a5b75491 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-MO.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-MO.js @@ -1,72 +1,72 @@ -/** - * Globalize Culture zh-MO - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-MO", "default", { - name: "zh-MO", - englishName: "Chinese (Traditional, Macao S.A.R.)", - nativeName: "中文(澳門特別行政區)", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "MOP" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-MO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-MO", "default", { + name: "zh-MO", + englishName: "Chinese (Traditional, Macao S.A.R.)", + nativeName: "中文(澳門特別行政區)", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "MOP" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-SG.js b/pub/lib/globalize/cultures/globalize.culture.zh-SG.js index ce5b4220b543b..1e982e97687d0 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-SG.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-SG.js @@ -1,63 +1,63 @@ -/** - * Globalize Culture zh-SG - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-SG", "default", { - name: "zh-SG", - englishName: "Chinese (Simplified, Singapore)", - nativeName: "中文(新加坡)", - language: "zh-CHS", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'年'M'月'd'日' tt h:mm", - F: "yyyy'年'M'月'd'日' tt h:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-SG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-SG", "default", { + name: "zh-SG", + englishName: "Chinese (Simplified, Singapore)", + nativeName: "中文(新加坡)", + language: "zh-CHS", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'年'M'月'd'日' tt h:mm", + F: "yyyy'年'M'月'd'日' tt h:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh-TW.js b/pub/lib/globalize/cultures/globalize.culture.zh-TW.js index 2b46fcb102cdc..67a71b98f9a9b 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh-TW.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh-TW.js @@ -1,99 +1,99 @@ -/** - * Globalize Culture zh-TW - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh-TW", "default", { - name: "zh-TW", - englishName: "Chinese (Traditional, Taiwan)", - nativeName: "中文(台灣)", - language: "zh-CHT", - numberFormat: { - "NaN": "不是一個數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "NT$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"西元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "yyyy'年'M'月'd'日' tt hh:mm", - F: "yyyy'年'M'月'd'日' tt hh:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Taiwan: { - name: "Taiwan", - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"","start":null,"offset":1911}], - twoDigitYearMax: 99, - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "yyyy'年'M'月'd'日' tt hh:mm", - F: "yyyy'年'M'月'd'日' tt hh:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh-TW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-TW", "default", { + name: "zh-TW", + englishName: "Chinese (Traditional, Taiwan)", + nativeName: "中文(台灣)", + language: "zh-CHT", + numberFormat: { + "NaN": "不是一個數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "NT$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"西元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'年'M'月'd'日' tt hh:mm", + F: "yyyy'年'M'月'd'日' tt hh:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Taiwan: { + name: "Taiwan", + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"","start":null,"offset":1911}], + twoDigitYearMax: 99, + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'年'M'月'd'日' tt hh:mm", + F: "yyyy'年'M'月'd'日' tt hh:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zh.js b/pub/lib/globalize/cultures/globalize.culture.zh.js index f012948432cae..5d4ea5c76ef53 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zh.js +++ b/pub/lib/globalize/cultures/globalize.culture.zh.js @@ -1,73 +1,73 @@ -/** - * Globalize Culture zh - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zh", "default", { - name: "zh", - englishName: "Chinese", - nativeName: "中文", - language: "zh", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh", "default", { + name: "zh", + englishName: "Chinese", + nativeName: "中文", + language: "zh", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zu-ZA.js b/pub/lib/globalize/cultures/globalize.culture.zu-ZA.js index f0fc50ce97a6f..45aeea1ec1ae7 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zu-ZA.js +++ b/pub/lib/globalize/cultures/globalize.culture.zu-ZA.js @@ -1,66 +1,66 @@ -/** - * Globalize Culture zu-ZA - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zu-ZA", "default", { - name: "zu-ZA", - englishName: "isiZulu (South Africa)", - nativeName: "isiZulu (iNingizimu Afrika)", - language: "zu", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] - }, - months: { - names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], - namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zu-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zu-ZA", "default", { + name: "zu-ZA", + englishName: "isiZulu (South Africa)", + nativeName: "isiZulu (iNingizimu Afrika)", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.culture.zu.js b/pub/lib/globalize/cultures/globalize.culture.zu.js index a4752ad657b60..74981993eb2e6 100644 --- a/pub/lib/globalize/cultures/globalize.culture.zu.js +++ b/pub/lib/globalize/cultures/globalize.culture.zu.js @@ -1,66 +1,66 @@ -/** - * Globalize Culture zu - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "zu", "default", { - name: "zu", - englishName: "isiZulu", - nativeName: "isiZulu", - language: "zu", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] - }, - months: { - names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], - namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -}( this )); +/** + * Globalize Culture zu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zu", "default", { + name: "zu", + englishName: "isiZulu", + nativeName: "isiZulu", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/cultures/globalize.cultures.js b/pub/lib/globalize/cultures/globalize.cultures.js index 2f725b2c7851a..71f5f4bf96256 100644 --- a/pub/lib/globalize/cultures/globalize.cultures.js +++ b/pub/lib/globalize/cultures/globalize.cultures.js @@ -1,24063 +1,24063 @@ -/** - * Globalize Cultures - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * This file was generated by the Globalize Culture Generator - * Translation: bugs found in this file need to be fixed in the generator - */ - -(function( window, undefined ) { - -var Globalize; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - Globalize = require( "globalize" ); -} else { - // Global variable - Globalize = window.Globalize; -} - -Globalize.addCultureInfo( "ar", "default", { - name: "ar", - englishName: "Arabic", - nativeName: "العربية", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.س.\u200f" - } - }, - calendars: { - standard: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "bg", "default", { - name: "bg", - englishName: "Bulgarian", - nativeName: "български", - language: "bg", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "- безкрайност", - positiveInfinity: "+ безкрайност", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "лв." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], - namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], - namesShort: ["н","п","в","с","ч","п","с"] - }, - months: { - names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], - namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] - }, - AM: null, - PM: null, - eras: [{"name":"след новата ера","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy 'г.'", - D: "dd MMMM yyyy 'г.'", - t: "HH:mm 'ч.'", - T: "HH:mm:ss 'ч.'", - f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", - F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", - M: "dd MMMM", - Y: "MMMM yyyy 'г.'" - } - } - } -}); - -Globalize.addCultureInfo( "ca", "default", { - name: "ca", - englishName: "Catalan", - nativeName: "català", - language: "ca", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinit", - positiveInfinity: "Infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], - namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], - namesShort: ["dg","dl","dt","dc","dj","dv","ds"] - }, - months: { - names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], - namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' / 'MMMM' / 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", - F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM' / 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zh-Hans", "default", { - name: "zh-Hans", - englishName: "Chinese (Simplified)", - nativeName: "中文(简体)", - language: "zh-Hans", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "cs", "default", { - name: "cs", - englishName: "Czech", - nativeName: "čeština", - language: "cs", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Není číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Kč" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], - namesAbbr: ["ne","po","út","st","čt","pá","so"], - namesShort: ["ne","po","út","st","čt","pá","so"] - }, - months: { - names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["dop.","dop.","DOP."], - PM: ["odp.","odp.","ODP."], - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "da", "default", { - name: "da", - englishName: "Danish", - nativeName: "dansk", - language: "da", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "de", "default", { - name: "de", - englishName: "German", - nativeName: "Deutsch", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "el", "default", { - name: "el", - englishName: "Greek", - nativeName: "Ελληνικά", - language: "el", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "μη αριθμός", - negativeInfinity: "-Άπειρο", - positiveInfinity: "Άπειρο", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], - namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], - namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] - }, - months: { - names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - monthsGenitive: { - names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - AM: ["πμ","πμ","ΠΜ"], - PM: ["μμ","μμ","ΜΜ"], - eras: [{"name":"μ.Χ.","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es", "default", { - name: "es", - englishName: "Spanish", - nativeName: "español", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fi", "default", { - name: "fi", - englishName: "Finnish", - nativeName: "suomi", - language: "fi", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], - namesAbbr: ["su","ma","ti","ke","to","pe","la"], - namesShort: ["su","ma","ti","ke","to","pe","la"] - }, - months: { - names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], - namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM'ta 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM'ta 'yyyy H:mm", - F: "d. MMMM'ta 'yyyy H:mm:ss", - M: "d. MMMM'ta'", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr", "default", { - name: "fr", - englishName: "French", - nativeName: "français", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "he", "default", { - name: "he", - englishName: "Hebrew", - nativeName: "עברית", - language: "he", - isRTL: true, - numberFormat: { - "NaN": "לא מספר", - negativeInfinity: "אינסוף שלילי", - positiveInfinity: "אינסוף חיובי", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "₪" - } - }, - calendars: { - standard: { - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], - namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] - }, - eras: [{"name":"לספירה","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Hebrew: { - name: "Hebrew", - "/": " ", - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], - namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] - }, - eras: [{"name":"C.E.","start":null,"offset":0}], - twoDigitYearMax: 5790, - patterns: { - d: "dd MMMM yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hu", "default", { - name: "hu", - englishName: "Hungarian", - nativeName: "magyar", - language: "hu", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nem szám", - negativeInfinity: "negatív végtelen", - positiveInfinity: "végtelen", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Ft" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], - namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], - namesShort: ["V","H","K","Sze","Cs","P","Szo"] - }, - months: { - names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], - namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] - }, - AM: ["de.","de.","DE."], - PM: ["du.","du.","DU."], - eras: [{"name":"i.sz.","start":null,"offset":0}], - patterns: { - d: "yyyy.MM.dd.", - D: "yyyy. MMMM d.", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy. MMMM d. H:mm", - F: "yyyy. MMMM d. H:mm:ss", - M: "MMMM d.", - Y: "yyyy. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "is", "default", { - name: "is", - englishName: "Icelandic", - nativeName: "íslenska", - language: "is", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], - namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], - namesShort: ["su","má","þr","mi","fi","fö","la"] - }, - months: { - names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], - namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "it", "default", { - name: "it", - englishName: "Italian", - nativeName: "italiano", - language: "it", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ja", "default", { - name: "ja", - englishName: "Japanese", - nativeName: "日本語", - language: "ja", - numberFormat: { - "NaN": "NaN (非数値)", - negativeInfinity: "-∞", - positiveInfinity: "+∞", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"西暦","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Japanese: { - name: "Japanese", - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], - twoDigitYearMax: 99, - patterns: { - d: "gg y/M/d", - D: "gg y'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "gg y'年'M'月'd'日' H:mm", - F: "gg y'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "gg y'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "ko", "default", { - name: "ko", - englishName: "Korean", - nativeName: "한국어", - language: "ko", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "₩" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"서기","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'년' M'월' d'일' dddd tt h:mm", - F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "yyyy'년' M'월'" - } - }, - Korean: { - name: "Korean", - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"단기","start":null,"offset":-2333}], - twoDigitYearMax: 4362, - patterns: { - d: "gg yyyy-MM-dd", - D: "gg yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", - F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "gg yyyy'년' M'월'" - } - } - } -}); - -Globalize.addCultureInfo( "nl", "default", { - name: "nl", - englishName: "Dutch", - nativeName: "Nederlands", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "no", "default", { - name: "no", - englishName: "Norwegian", - nativeName: "norsk", - language: "no", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "pl", "default", { - name: "pl", - englishName: "Polish", - nativeName: "polski", - language: "pl", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nie jest liczbą", - negativeInfinity: "-nieskończoność", - positiveInfinity: "+nieskończoność", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "zł" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], - namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"], - namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] - }, - months: { - names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - monthsGenitive: { - names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "pt", "default", { - name: "pt", - englishName: "Portuguese", - nativeName: "Português", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "R$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], - namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "rm", "default", { - name: "rm", - englishName: "Romansh", - nativeName: "Rumantsch", - language: "rm", - numberFormat: { - ",": "'", - "NaN": "betg def.", - negativeInfinity: "-infinit", - positiveInfinity: "+infinit", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], - namesAbbr: ["du","gli","ma","me","gie","ve","so"], - namesShort: ["du","gli","ma","me","gie","ve","so"] - }, - months: { - names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], - namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"s. Cr.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d MMMM yyyy HH:mm", - F: "dddd, d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ro", "default", { - name: "ro", - englishName: "Romanian", - nativeName: "română", - language: "ro", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "lei" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], - namesAbbr: ["D","L","Ma","Mi","J","V","S"], - namesShort: ["D","L","Ma","Mi","J","V","S"] - }, - months: { - names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], - namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ru", "default", { - name: "ru", - englishName: "Russian", - nativeName: "русский", - language: "ru", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], - namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - monthsGenitive: { - names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'г.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'г.' H:mm", - F: "d MMMM yyyy 'г.' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hr", "default", { - name: "hr", - englishName: "Croatian", - nativeName: "hrvatski", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kn" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sk", "default", { - name: "sk", - englishName: "Slovak", - nativeName: "slovenčina", - language: "sk", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Nie je číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], - namesAbbr: ["ne","po","ut","st","št","pi","so"], - namesShort: ["ne","po","ut","st","št","pi","so"] - }, - months: { - names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sq", "default", { - name: "sq", - englishName: "Albanian", - nativeName: "shqipe", - language: "sq", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-infinit", - positiveInfinity: "infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": ".", - ".": ",", - symbol: "Lek" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], - namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], - namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] - }, - months: { - names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], - namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] - }, - AM: ["PD","pd","PD"], - PM: ["MD","md","MD"], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy-MM-dd", - t: "h:mm.tt", - T: "h:mm:ss.tt", - f: "yyyy-MM-dd h:mm.tt", - F: "yyyy-MM-dd h:mm:ss.tt", - Y: "yyyy-MM" - } - } - } -}); - -Globalize.addCultureInfo( "sv", "default", { - name: "sv", - englishName: "Swedish", - nativeName: "svenska", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "th", "default", { - name: "th", - englishName: "Thai", - nativeName: "ไทย", - language: "th", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "฿" - } - }, - calendars: { - standard: { - name: "ThaiBuddhist", - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - eras: [{"name":"พ.ศ.","start":null,"offset":-543}], - twoDigitYearMax: 2572, - patterns: { - d: "d/M/yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Gregorian_Localized: { - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - patterns: { - d: "d/M/yyyy", - D: "'วัน'dddd'ที่' d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", - F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tr", "default", { - name: "tr", - englishName: "Turkish", - nativeName: "Türkçe", - language: "tr", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "TL" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], - namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], - namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] - }, - months: { - names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], - namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ur", "default", { - name: "ur", - englishName: "Urdu", - nativeName: "اُردو", - language: "ur", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$n"], - symbol: "Rs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesShort: ["ا","پ","م","ب","ج","ج","ه"] - }, - months: { - names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], - namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - f: "dd MMMM, yyyy h:mm tt", - F: "dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - } - } -}); - -Globalize.addCultureInfo( "id", "default", { - name: "id", - englishName: "Indonesian", - nativeName: "Bahasa Indonesia", - language: "id", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": ",", - symbol: "Rp" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], - namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], - namesShort: ["M","S","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "uk", "default", { - name: "uk", - englishName: "Ukrainian", - nativeName: "українська", - language: "uk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-безмежність", - positiveInfinity: "безмежність", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₴" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], - namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], - namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] - }, - monthsGenitive: { - names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], - namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy' р.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy' р.' H:mm", - F: "d MMMM yyyy' р.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy' р.'" - } - } - } -}); - -Globalize.addCultureInfo( "be", "default", { - name: "be", - englishName: "Belarusian", - nativeName: "Беларускі", - language: "be", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], - namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], - namesShort: ["нд","пн","аў","ср","чц","пт","сб"] - }, - months: { - names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - monthsGenitive: { - names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sl", "default", { - name: "sl", - englishName: "Slovenian", - nativeName: "slovenski", - language: "sl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-neskončnost", - positiveInfinity: "neskončnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], - namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], - namesShort: ["ne","po","to","sr","če","pe","so"] - }, - months: { - names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "et", "default", { - name: "et", - englishName: "Estonian", - nativeName: "eesti", - language: "et", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "avaldamatu", - negativeInfinity: "miinuslõpmatus", - positiveInfinity: "plusslõpmatus", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], - namesAbbr: ["P","E","T","K","N","R","L"], - namesShort: ["P","E","T","K","N","R","L"] - }, - months: { - names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], - namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] - }, - AM: ["EL","el","EL"], - PM: ["PL","pl","PL"], - patterns: { - d: "d.MM.yyyy", - D: "d. MMMM yyyy'. a.'", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy'. a.' H:mm", - F: "d. MMMM yyyy'. a.' H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy'. a.'" - } - } - } -}); - -Globalize.addCultureInfo( "lv", "default", { - name: "lv", - englishName: "Latvian", - nativeName: "latviešu", - language: "lv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-bezgalība", - positiveInfinity: "bezgalība", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": " ", - ".": ",", - symbol: "Ls" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], - namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], - namesShort: ["sv","pr","ot","tr","ce","pk","se"] - }, - months: { - names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - monthsGenitive: { - names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd.", - D: "dddd, yyyy'. gada 'd. MMMM", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, yyyy'. gada 'd. MMMM H:mm", - F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", - M: "d. MMMM", - Y: "yyyy. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "lt", "default", { - name: "lt", - englishName: "Lithuanian", - nativeName: "lietuvių", - language: "lt", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-begalybė", - positiveInfinity: "begalybė", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Lt" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], - namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], - namesShort: ["S","P","A","T","K","Pn","Š"] - }, - months: { - names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - monthsGenitive: { - names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd", - D: "yyyy 'm.' MMMM d 'd.'", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'm.' MMMM d 'd.' HH:mm", - F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", - M: "MMMM d 'd.'", - Y: "yyyy 'm.' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "tg", "default", { - name: "tg", - englishName: "Tajik", - nativeName: "Тоҷикӣ", - language: "tg", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fa", "default", { - name: "fa", - englishName: "Persian", - nativeName: "فارسى", - language: "fa", - isRTL: true, - numberFormat: { - pattern: ["n-"], - currency: { - pattern: ["$n-","$ n"], - ".": "/", - symbol: "ريال" - } - }, - calendars: { - standard: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], - namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy/MM/dd", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "yyyy/MM/dd hh:mm tt", - F: "yyyy/MM/dd hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "vi", "default", { - name: "vi", - englishName: "Vietnamese", - nativeName: "Tiếng Việt", - language: "vi", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "₫" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], - namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], - namesShort: ["C","H","B","T","N","S","B"] - }, - months: { - names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], - namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] - }, - AM: ["SA","sa","SA"], - PM: ["CH","ch","CH"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - f: "dd MMMM yyyy h:mm tt", - F: "dd MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hy", "default", { - name: "hy", - englishName: "Armenian", - nativeName: "Հայերեն", - language: "hy", - numberFormat: { - currency: { - pattern: ["-n $","n $"], - symbol: "դր." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], - namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], - namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] - }, - months: { - names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], - namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM, yyyy H:mm", - F: "d MMMM, yyyy H:mm:ss", - M: "d MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "az", "default", { - name: "az", - englishName: "Azeri", - nativeName: "Azərbaycan\xadılı", - language: "az", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "eu", "default", { - name: "eu", - englishName: "Basque", - nativeName: "euskara", - language: "eu", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "EdZ", - negativeInfinity: "-Infinitu", - positiveInfinity: "Infinitu", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], - namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], - namesShort: ["ig","al","as","az","og","or","lr"] - }, - months: { - names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], - namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "dddd, yyyy.'eko' MMMM'k 'd", - t: "HH:mm", - T: "H:mm:ss", - f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", - F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", - Y: "yyyy.'eko' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "hsb", "default", { - name: "hsb", - englishName: "Upper Sorbian", - nativeName: "hornjoserbšćina", - language: "hsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekónčne", - positiveInfinity: "+njekónčne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], - namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], - namesShort: ["n","p","w","s","š","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'hodź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "mk", "default", { - name: "mk", - englishName: "Macedonian (FYROM)", - nativeName: "македонски јазик", - language: "mk", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "ден." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], - namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], - namesShort: ["не","по","вт","ср","че","пе","са"] - }, - months: { - names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], - namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd MMMM yyyy HH:mm", - F: "dddd, dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tn", "default", { - name: "tn", - englishName: "Setswana", - nativeName: "Setswana", - language: "tn", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], - namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], - namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] - }, - months: { - names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], - namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "xh", "default", { - name: "xh", - englishName: "isiXhosa", - nativeName: "isiXhosa", - language: "xh", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] - }, - months: { - names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zu", "default", { - name: "zu", - englishName: "isiZulu", - nativeName: "isiZulu", - language: "zu", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] - }, - months: { - names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], - namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "af", "default", { - name: "af", - englishName: "Afrikaans", - nativeName: "Afrikaans", - language: "af", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], - namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], - namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] - }, - months: { - names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ka", "default", { - name: "ka", - englishName: "Georgian", - nativeName: "ქართული", - language: "ka", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Lari" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] - }, - months: { - names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], - namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'წლის' dd MM, dddd", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'წლის' dd MM, dddd H:mm", - F: "yyyy 'წლის' dd MM, dddd H:mm:ss", - M: "dd MM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fo", "default", { - name: "fo", - englishName: "Faroese", - nativeName: "føroyskt", - language: "fo", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], - namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], - namesShort: ["su","má","tý","mi","hó","fr","ley"] - }, - months: { - names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hi", "default", { - name: "hi", - englishName: "Hindi", - nativeName: "हिंदी", - language: "hi", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mt", "default", { - name: "mt", - englishName: "Maltese", - nativeName: "Malti", - language: "mt", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], - namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], - namesShort: ["I","I","I","L","I","I","I"] - }, - months: { - names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], - namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' ta\\' 'MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", - F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", - M: "d' ta\\' 'MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "se", "default", { - name: "se", - englishName: "Sami (Northern)", - nativeName: "davvisámegiella", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ga", "default", { - name: "ga", - englishName: "Irish", - nativeName: "Gaeilge", - language: "ga", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], - namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], - namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] - }, - months: { - names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], - namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] - }, - AM: ["r.n.","r.n.","R.N."], - PM: ["i.n.","i.n.","I.N."], - patterns: { - d: "dd/MM/yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ms", "default", { - name: "ms", - englishName: "Malay", - nativeName: "Bahasa Melayu", - language: "ms", - numberFormat: { - currency: { - decimals: 0, - symbol: "RM" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kk", "default", { - name: "kk", - englishName: "Kazakh", - nativeName: "Қазақ", - language: "kk", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$n","$n"], - ",": " ", - ".": "-", - symbol: "Т" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], - namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], - namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] - }, - months: { - names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], - namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'ж.' H:mm", - F: "d MMMM yyyy 'ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ky", "default", { - name: "ky", - englishName: "Kyrgyz", - nativeName: "Кыргыз", - language: "ky", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": "-", - symbol: "сом" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], - namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], - namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d'-'MMMM yyyy'-ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d'-'MMMM yyyy'-ж.' H:mm", - F: "d'-'MMMM yyyy'-ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy'-ж.'" - } - } - } -}); - -Globalize.addCultureInfo( "sw", "default", { - name: "sw", - englishName: "Kiswahili", - nativeName: "Kiswahili", - language: "sw", - numberFormat: { - currency: { - symbol: "S" - } - }, - calendars: { - standard: { - days: { - names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], - namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], - namesShort: ["P","T","N","T","A","I","M"] - }, - months: { - names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] - } - } - } -}); - -Globalize.addCultureInfo( "tk", "default", { - name: "tk", - englishName: "Turkmen", - nativeName: "türkmençe", - language: "tk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-üznüksizlik", - positiveInfinity: "üznüksizlik", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "m." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], - namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], - namesShort: ["D","S","Ç","P","A","Ş","Ý"] - }, - months: { - names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], - namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "yyyy 'ý.' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'ý.' MMMM d H:mm", - F: "yyyy 'ý.' MMMM d H:mm:ss", - Y: "yyyy 'ý.' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "uz", "default", { - name: "uz", - englishName: "Uzbek", - nativeName: "U'zbek", - language: "uz", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tt", "default", { - name: "tt", - englishName: "Tatar", - nativeName: "Татар", - language: "tt", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], - namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], - namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] - }, - months: { - names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] - }, - monthsGenitive: { - names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], - namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bn", "default", { - name: "bn", - englishName: "Bengali", - nativeName: "বাংলা", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "টা" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "pa", "default", { - name: "pa", - englishName: "Punjabi", - nativeName: "ਪੰਜਾਬੀ", - language: "pa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ਰੁ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], - namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], - namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] - }, - months: { - names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], - namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] - }, - AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], - PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy dddd", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "dd MMMM yyyy dddd tt hh:mm", - F: "dd MMMM yyyy dddd tt hh:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "gu", "default", { - name: "gu", - englishName: "Gujarati", - nativeName: "ગુજરાતી", - language: "gu", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "રૂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], - namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], - namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] - }, - months: { - names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], - namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] - }, - AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], - PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "or", "default", { - name: "or", - englishName: "Oriya", - nativeName: "ଓଡ଼ିଆ", - language: "or", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ଟ" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], - namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], - namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] - }, - months: { - names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], - namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] - }, - eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ta", "default", { - name: "ta", - englishName: "Tamil", - nativeName: "தமிழ்", - language: "ta", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ரூ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], - namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], - namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] - }, - months: { - names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], - namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] - }, - AM: ["காலை","காலை","காலை"], - PM: ["மாலை","மாலை","மாலை"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "te", "default", { - name: "te", - englishName: "Telugu", - nativeName: "తెలుగు", - language: "te", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "రూ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], - namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], - namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] - }, - months: { - names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], - namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] - }, - AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], - PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "kn", "default", { - name: "kn", - englishName: "Kannada", - nativeName: "ಕನ್ನಡ", - language: "kn", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ರೂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], - namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], - namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] - }, - months: { - names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], - namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] - }, - AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], - PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ml", "default", { - name: "ml", - englishName: "Malayalam", - nativeName: "മലയാളം", - language: "ml", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ക" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], - namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], - namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] - }, - months: { - names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], - namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] - }, - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "as", "default", { - name: "as", - englishName: "Assamese", - nativeName: "অসমীয়া", - language: "as", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","n$"], - groupSizes: [3,2], - symbol: "ট" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], - namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], - namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] - }, - months: { - names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], - namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] - }, - AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], - PM: ["আবেলি","আবেলি","আবেলি"], - eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "yyyy,MMMM dd, dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy,MMMM dd, dddd tt h:mm", - F: "yyyy,MMMM dd, dddd tt h:mm:ss", - M: "dd MMMM", - Y: "MMMM,yy" - } - } - } -}); - -Globalize.addCultureInfo( "mr", "default", { - name: "mr", - englishName: "Marathi", - nativeName: "मराठी", - language: "mr", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], - namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sa", "default", { - name: "sa", - englishName: "Sanskrit", - nativeName: "संस्कृत", - language: "sa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mn", "default", { - name: "mn", - englishName: "Mongolian", - nativeName: "Монгол хэл", - language: "mn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "bo", "default", { - name: "bo", - englishName: "Tibetan", - nativeName: "བོད་ཡིག", - language: "bo", - numberFormat: { - groupSizes: [3,0], - "NaN": "ཨང་ཀི་མིན་པ།", - negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", - positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], - namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], - namesShort: ["༧","༡","༢","༣","༤","༥","༦"] - }, - months: { - names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], - namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] - }, - AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], - PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], - eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", - F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", - M: "'ཟླ་' M'ཚེས'd", - Y: "yyyy.M" - } - } - } -}); - -Globalize.addCultureInfo( "cy", "default", { - name: "cy", - englishName: "Welsh", - nativeName: "Cymraeg", - language: "cy", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], - namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], - namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] - }, - months: { - names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], - namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "km", "default", { - name: "km", - englishName: "Khmer", - nativeName: "ខ្មែរ", - language: "km", - numberFormat: { - pattern: ["- n"], - groupSizes: [3,0], - "NaN": "NAN", - negativeInfinity: "-- អនន្ត", - positiveInfinity: "អនន្ត", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["-n$","n$"], - symbol: "៛" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], - namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], - namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] - }, - months: { - names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], - namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "d MMMM yyyy H:mm tt", - F: "d MMMM yyyy HH:mm:ss", - M: "'ថ្ងៃទី' dd 'ខែ' MM", - Y: "'ខែ' MM 'ឆ្នាំ' yyyy" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm tt", - F: "dddd, MMMM dd, yyyy HH:mm:ss" - } - } - } -}); - -Globalize.addCultureInfo( "lo", "default", { - name: "lo", - englishName: "Lao", - nativeName: "ລາວ", - language: "lo", - numberFormat: { - pattern: ["(n)"], - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - }, - currency: { - pattern: ["(n$)","n$"], - groupSizes: [3,0], - symbol: "₭" - } - }, - calendars: { - standard: { - days: { - names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], - namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], - namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] - }, - months: { - names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], - namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] - }, - AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], - PM: ["ແລງ","ແລງ","ແລງ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dd MMMM yyyy H:mm tt", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gl", "default", { - name: "gl", - englishName: "Galician", - nativeName: "galego", - language: "gl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], - namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], - namesShort: ["do","lu","ma","mé","xo","ve","sá"] - }, - months: { - names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], - namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kok", "default", { - name: "kok", - englishName: "Konkani", - nativeName: "कोंकणी", - language: "kok", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], - namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], - namesShort: ["आ","स","म","ब","ब","स","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], - namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "syr", "default", { - name: "syr", - englishName: "Syriac", - nativeName: "ܣܘܪܝܝܐ", - language: "syr", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], - namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], - namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] - }, - months: { - names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], - namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] - }, - AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], - PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "si", "default", { - name: "si", - englishName: "Sinhala", - nativeName: "සිංහල", - language: "si", - numberFormat: { - groupSizes: [3,2], - negativeInfinity: "-අනන්තය", - positiveInfinity: "අනන්තය", - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["($ n)","$ n"], - symbol: "රු." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], - namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], - namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] - }, - months: { - names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], - namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] - }, - AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], - PM: ["ප.ව.","ප.ව.","ප.ව."], - eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", - f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", - F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", - Y: "yyyy MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "iu", "default", { - name: "iu", - englishName: "Inuktitut", - nativeName: "Inuktitut", - language: "iu", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "am", "default", { - name: "am", - englishName: "Amharic", - nativeName: "አማርኛ", - language: "am", - numberFormat: { - decimals: 1, - groupSizes: [3,0], - "NaN": "NAN", - percent: { - pattern: ["-n%","n%"], - decimals: 1, - groupSizes: [3,0] - }, - currency: { - pattern: ["-$n","$n"], - groupSizes: [3,0], - symbol: "ETB" - } - }, - calendars: { - standard: { - days: { - names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] - }, - months: { - names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], - namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] - }, - AM: ["ጡዋት","ጡዋት","ጡዋት"], - PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], - eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd '፣' MMMM d 'ቀን' yyyy", - f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", - F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", - M: "MMMM d ቀን", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tzm", "default", { - name: "tzm", - englishName: "Tamazight", - nativeName: "Tamazight", - language: "tzm", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ne", "default", { - name: "ne", - englishName: "Nepali", - nativeName: "नेपाली", - language: "ne", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "रु" - } - }, - calendars: { - standard: { - days: { - names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], - namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], - namesShort: ["आ","सो","म","बु","बि","शु","श"] - }, - months: { - names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], - namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] - }, - AM: ["विहानी","विहानी","विहानी"], - PM: ["बेलुकी","बेलुकी","बेलुकी"], - eras: [{"name":"a.d.","start":null,"offset":0}], - patterns: { - Y: "MMMM,yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fy", "default", { - name: "fy", - englishName: "Frisian", - nativeName: "Frysk", - language: "fy", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], - namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], - namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ps", "default", { - name: "ps", - englishName: "Pashto", - nativeName: "پښتو", - language: "ps", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": "،", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": "،", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - ",": "٬", - ".": "٫", - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fil", "default", { - name: "fil", - englishName: "Filipino", - nativeName: "Filipino", - language: "fil", - numberFormat: { - currency: { - symbol: "PhP" - } - }, - calendars: { - standard: { - days: { - names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], - namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], - namesShort: ["L","L","M","M","H","B","S"] - }, - months: { - names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], - namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] - }, - eras: [{"name":"Anno Domini","start":null,"offset":0}] - } - } -}); - -Globalize.addCultureInfo( "dv", "default", { - name: "dv", - englishName: "Divehi", - nativeName: "ދިވެހިބަސް", - language: "dv", - isRTL: true, - numberFormat: { - currency: { - pattern: ["n $-","n $"], - symbol: "ރ." - } - }, - calendars: { - standard: { - name: "Hijri", - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], - namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd/MM/yyyy HH:mm", - F: "dd/MM/yyyy HH:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], - namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"މީލާދީ","start":null,"offset":0}], - patterns: { - d: "dd/MM/yy", - D: "ddd, yyyy MMMM dd", - t: "HH:mm", - T: "HH:mm:ss", - f: "ddd, yyyy MMMM dd HH:mm", - F: "ddd, yyyy MMMM dd HH:mm:ss", - Y: "yyyy, MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ha", "default", { - name: "ha", - englishName: "Hausa", - nativeName: "Hausa", - language: "ha", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "yo", "default", { - name: "yo", - englishName: "Yoruba", - nativeName: "Yoruba", - language: "yo", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], - namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] - }, - AM: ["Owuro","owuro","OWURO"], - PM: ["Ale","ale","ALE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "quz", "default", { - name: "quz", - englishName: "Quechua", - nativeName: "runasimi", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "nso", "default", { - name: "nso", - englishName: "Sesotho sa Leboa", - nativeName: "Sesotho sa Leboa", - language: "nso", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], - namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], - namesShort: ["L","M","L","L","L","L","M"] - }, - months: { - names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], - namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ba", "default", { - name: "ba", - englishName: "Bashkir", - nativeName: "Башҡорт", - language: "ba", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ",", - symbol: "һ." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], - namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], - namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] - }, - months: { - names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], - namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy 'й'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'й' H:mm", - F: "d MMMM yyyy 'й' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "lb", "default", { - name: "lb", - englishName: "Luxembourgish", - nativeName: "Lëtzebuergesch", - language: "lb", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "n. num.", - negativeInfinity: "-onendlech", - positiveInfinity: "+onendlech", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], - namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], - namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kl", "default", { - name: "kl", - englishName: "Greenlandic", - nativeName: "kalaallisut", - language: "kl", - numberFormat: { - ",": ".", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - groupSizes: [3,0], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], - namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], - namesShort: ["sa","at","ma","pi","si","ta","ar"] - }, - months: { - names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ig", "default", { - name: "ig", - englishName: "Igbo", - nativeName: "Igbo", - language: "ig", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], - namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] - }, - AM: ["Ututu","ututu","UTUTU"], - PM: ["Efifie","efifie","EFIFIE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ii", "default", { - name: "ii", - englishName: "Yi", - nativeName: "ꆈꌠꁱꂷ", - language: "ii", - numberFormat: { - groupSizes: [3,0], - "NaN": "ꌗꂷꀋꉬ", - negativeInfinity: "ꀄꊭꌐꀋꉆ", - positiveInfinity: "ꈤꇁꑖꀋꉬ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], - namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], - namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] - }, - months: { - names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], - namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] - }, - AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], - PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], - eras: [{"name":"ꇬꑼ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", - t: "tt h:mm", - T: "H:mm:ss", - f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", - F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", - M: "M'ꆪ' d'ꑍ'", - Y: "yyyy'ꈎ' M'ꆪ'" - } - } - } -}); - -Globalize.addCultureInfo( "arn", "default", { - name: "arn", - englishName: "Mapudungun", - nativeName: "Mapudungun", - language: "arn", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "moh", "default", { - name: "moh", - englishName: "Mohawk", - nativeName: "Kanien'kéha", - language: "moh", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] - } - } - } -}); - -Globalize.addCultureInfo( "br", "default", { - name: "br", - englishName: "Breton", - nativeName: "brezhoneg", - language: "br", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NkN", - negativeInfinity: "-Anfin", - positiveInfinity: "+Anfin", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], - namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], - namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] - }, - months: { - names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], - namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] - }, - AM: null, - PM: null, - eras: [{"name":"g. J.-K.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ug", "default", { - name: "ug", - englishName: "Uyghur", - nativeName: "ئۇيغۇرچە", - language: "ug", - isRTL: true, - numberFormat: { - "NaN": "سان ئەمەس", - negativeInfinity: "مەنپىي چەكسىزلىك", - positiveInfinity: "مۇسبەت چەكسىزلىك", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], - namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], - namesShort: ["ي","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], - namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] - }, - AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], - PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], - eras: [{"name":"مىلادى","start":null,"offset":0}], - patterns: { - d: "yyyy-M-d", - D: "yyyy-'يىلى' MMMM d-'كۈنى،'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", - F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", - M: "MMMM d'-كۈنى'", - Y: "yyyy-'يىلى' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mi", "default", { - name: "mi", - englishName: "Maori", - nativeName: "Reo Māori", - language: "mi", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], - namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], - namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] - }, - months: { - names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], - namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM, yyyy", - f: "dddd, dd MMMM, yyyy h:mm tt", - F: "dddd, dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM, yy" - } - } - } -}); - -Globalize.addCultureInfo( "oc", "default", { - name: "oc", - englishName: "Occitan", - nativeName: "Occitan", - language: "oc", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numeric", - negativeInfinity: "-Infinit", - positiveInfinity: "+Infinit", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], - namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], - namesShort: ["di","lu","ma","mè","jò","ve","sa"] - }, - months: { - names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - monthsGenitive: { - names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - AM: null, - PM: null, - eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd,' lo 'd MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", - F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "co", "default", { - name: "co", - englishName: "Corsican", - nativeName: "Corsu", - language: "co", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Mica numericu", - negativeInfinity: "-Infinitu", - positiveInfinity: "+Infinitu", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], - namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], - namesShort: ["du","lu","ma","me","gh","ve","sa"] - }, - months: { - names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], - namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] - }, - AM: null, - PM: null, - eras: [{"name":"dopu J-C","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gsw", "default", { - name: "gsw", - englishName: "Alsatian", - nativeName: "Elsässisch", - language: "gsw", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Ohne Nummer", - negativeInfinity: "-Unendlich", - positiveInfinity: "+Unendlich", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], - namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], - namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] - }, - months: { - names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], - namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] - }, - AM: null, - PM: null, - eras: [{"name":"Vor J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sah", "default", { - name: "sah", - englishName: "Yakut", - nativeName: "саха", - language: "sah", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NAN", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "с." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], - namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], - namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] - }, - months: { - names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - monthsGenitive: { - names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - AM: null, - PM: null, - patterns: { - d: "MM.dd.yyyy", - D: "MMMM d yyyy 'с.'", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d yyyy 'с.' H:mm", - F: "MMMM d yyyy 'с.' H:mm:ss", - Y: "MMMM yyyy 'с.'" - } - } - } -}); - -Globalize.addCultureInfo( "qut", "default", { - name: "qut", - englishName: "K'iche", - nativeName: "K'iche", - language: "qut", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], - namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], - namesShort: ["ju","ka","ox","ka","jo","wa","wu"] - }, - months: { - names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], - namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "rw", "default", { - name: "rw", - englishName: "Kinyarwanda", - nativeName: "Kinyarwanda", - language: "rw", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "RWF" - } - }, - calendars: { - standard: { - days: { - names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], - namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], - namesShort: ["mb","ka","ga","ka","ga","ga","cy"] - }, - months: { - names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], - namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] - }, - AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], - PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], - eras: [{"name":"AD","start":null,"offset":0}] - } - } -}); - -Globalize.addCultureInfo( "wo", "default", { - name: "wo", - englishName: "Wolof", - nativeName: "Wolof", - language: "wo", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "XOF" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "prs", "default", { - name: "prs", - englishName: "Dari", - nativeName: "درى", - language: "prs", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 5, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 5, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gd", "default", { - name: "gd", - englishName: "Scottish Gaelic", - nativeName: "Gàidhlig", - language: "gd", - numberFormat: { - negativeInfinity: "-Neo-chrìochnachd", - positiveInfinity: "Neo-chrìochnachd", - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], - namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], - namesShort: ["D","L","M","C","A","H","S"] - }, - months: { - names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], - namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] - }, - AM: ["m","m","M"], - PM: ["f","f","F"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-SA", "default", { - name: "ar-SA", - englishName: "Arabic (Saudi Arabia)", - nativeName: "العربية (المملكة العربية السعودية)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.س.\u200f" - } - }, - calendars: { - standard: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "bg-BG", "default", { - name: "bg-BG", - englishName: "Bulgarian (Bulgaria)", - nativeName: "български (България)", - language: "bg", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "- безкрайност", - positiveInfinity: "+ безкрайност", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "лв." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], - namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], - namesShort: ["н","п","в","с","ч","п","с"] - }, - months: { - names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], - namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] - }, - AM: null, - PM: null, - eras: [{"name":"след новата ера","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy 'г.'", - D: "dd MMMM yyyy 'г.'", - t: "HH:mm 'ч.'", - T: "HH:mm:ss 'ч.'", - f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", - F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", - M: "dd MMMM", - Y: "MMMM yyyy 'г.'" - } - } - } -}); - -Globalize.addCultureInfo( "ca-ES", "default", { - name: "ca-ES", - englishName: "Catalan (Catalan)", - nativeName: "català (català)", - language: "ca", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinit", - positiveInfinity: "Infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], - namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], - namesShort: ["dg","dl","dt","dc","dj","dv","ds"] - }, - months: { - names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], - namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' / 'MMMM' / 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", - F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM' / 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zh-TW", "default", { - name: "zh-TW", - englishName: "Chinese (Traditional, Taiwan)", - nativeName: "中文(台灣)", - language: "zh-CHT", - numberFormat: { - "NaN": "不是一個數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "NT$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"西元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "yyyy'年'M'月'd'日' tt hh:mm", - F: "yyyy'年'M'月'd'日' tt hh:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Taiwan: { - name: "Taiwan", - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"","start":null,"offset":1911}], - twoDigitYearMax: 99, - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "yyyy'年'M'月'd'日' tt hh:mm", - F: "yyyy'年'M'月'd'日' tt hh:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "cs-CZ", "default", { - name: "cs-CZ", - englishName: "Czech (Czech Republic)", - nativeName: "čeština (Česká republika)", - language: "cs", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Není číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Kč" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], - namesAbbr: ["ne","po","út","st","čt","pá","so"], - namesShort: ["ne","po","út","st","čt","pá","so"] - }, - months: { - names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["dop.","dop.","DOP."], - PM: ["odp.","odp.","ODP."], - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "da-DK", "default", { - name: "da-DK", - englishName: "Danish (Denmark)", - nativeName: "dansk (Danmark)", - language: "da", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "de-DE", "default", { - name: "de-DE", - englishName: "German (Germany)", - nativeName: "Deutsch (Deutschland)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "el-GR", "default", { - name: "el-GR", - englishName: "Greek (Greece)", - nativeName: "Ελληνικά (Ελλάδα)", - language: "el", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "μη αριθμός", - negativeInfinity: "-Άπειρο", - positiveInfinity: "Άπειρο", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], - namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], - namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] - }, - months: { - names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - monthsGenitive: { - names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], - namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] - }, - AM: ["πμ","πμ","ΠΜ"], - PM: ["μμ","μμ","ΜΜ"], - eras: [{"name":"μ.Χ.","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-US", "default", { - name: "en-US", - englishName: "English (United States)" -}); - -Globalize.addCultureInfo( "fi-FI", "default", { - name: "fi-FI", - englishName: "Finnish (Finland)", - nativeName: "suomi (Suomi)", - language: "fi", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], - namesAbbr: ["su","ma","ti","ke","to","pe","la"], - namesShort: ["su","ma","ti","ke","to","pe","la"] - }, - months: { - names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], - namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM'ta 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM'ta 'yyyy H:mm", - F: "d. MMMM'ta 'yyyy H:mm:ss", - M: "d. MMMM'ta'", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-FR", "default", { - name: "fr-FR", - englishName: "French (France)", - nativeName: "français (France)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "he-IL", "default", { - name: "he-IL", - englishName: "Hebrew (Israel)", - nativeName: "עברית (ישראל)", - language: "he", - isRTL: true, - numberFormat: { - "NaN": "לא מספר", - negativeInfinity: "אינסוף שלילי", - positiveInfinity: "אינסוף חיובי", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "₪" - } - }, - calendars: { - standard: { - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], - namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] - }, - eras: [{"name":"לספירה","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Hebrew: { - name: "Hebrew", - "/": " ", - days: { - names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], - namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], - namesShort: ["א","ב","ג","ד","ה","ו","ש"] - }, - months: { - names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], - namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] - }, - eras: [{"name":"C.E.","start":null,"offset":0}], - twoDigitYearMax: 5790, - patterns: { - d: "dd MMMM yyyy", - D: "dddd dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd dd MMMM yyyy HH:mm", - F: "dddd dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hu-HU", "default", { - name: "hu-HU", - englishName: "Hungarian (Hungary)", - nativeName: "magyar (Magyarország)", - language: "hu", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nem szám", - negativeInfinity: "negatív végtelen", - positiveInfinity: "végtelen", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Ft" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], - namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], - namesShort: ["V","H","K","Sze","Cs","P","Szo"] - }, - months: { - names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], - namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] - }, - AM: ["de.","de.","DE."], - PM: ["du.","du.","DU."], - eras: [{"name":"i.sz.","start":null,"offset":0}], - patterns: { - d: "yyyy.MM.dd.", - D: "yyyy. MMMM d.", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy. MMMM d. H:mm", - F: "yyyy. MMMM d. H:mm:ss", - M: "MMMM d.", - Y: "yyyy. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "is-IS", "default", { - name: "is-IS", - englishName: "Icelandic (Iceland)", - nativeName: "íslenska (Ísland)", - language: "is", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], - namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], - namesShort: ["su","má","þr","mi","fi","fö","la"] - }, - months: { - names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], - namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "it-IT", "default", { - name: "it-IT", - englishName: "Italian (Italy)", - nativeName: "italiano (Italia)", - language: "it", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ja-JP", "default", { - name: "ja-JP", - englishName: "Japanese (Japan)", - nativeName: "日本語 (日本)", - language: "ja", - numberFormat: { - "NaN": "NaN (非数値)", - negativeInfinity: "-∞", - positiveInfinity: "+∞", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"西暦","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - }, - Japanese: { - name: "Japanese", - days: { - names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], - namesAbbr: ["日","月","火","水","木","金","土"], - namesShort: ["日","月","火","水","木","金","土"] - }, - months: { - names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["午前","午前","午前"], - PM: ["午後","午後","午後"], - eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], - twoDigitYearMax: 99, - patterns: { - d: "gg y/M/d", - D: "gg y'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "gg y'年'M'月'd'日' H:mm", - F: "gg y'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "gg y'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "ko-KR", "default", { - name: "ko-KR", - englishName: "Korean (Korea)", - nativeName: "한국어 (대한민국)", - language: "ko", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - decimals: 0, - symbol: "₩" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"서기","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'년' M'월' d'일' dddd tt h:mm", - F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "yyyy'년' M'월'" - } - }, - Korean: { - name: "Korean", - "/": "-", - days: { - names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], - namesAbbr: ["일","월","화","수","목","금","토"], - namesShort: ["일","월","화","수","목","금","토"] - }, - months: { - names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: ["오전","오전","오전"], - PM: ["오후","오후","오후"], - eras: [{"name":"단기","start":null,"offset":-2333}], - twoDigitYearMax: 4362, - patterns: { - d: "gg yyyy-MM-dd", - D: "gg yyyy'년' M'월' d'일' dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", - F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", - M: "M'월' d'일'", - Y: "gg yyyy'년' M'월'" - } - } - } -}); - -Globalize.addCultureInfo( "nl-NL", "default", { - name: "nl-NL", - englishName: "Dutch (Netherlands)", - nativeName: "Nederlands (Nederland)", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "nb-NO", "default", { - name: "nb-NO", - englishName: "Norwegian, Bokmål (Norway)", - nativeName: "norsk, bokmål (Norge)", - language: "nb", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "pl-PL", "default", { - name: "pl-PL", - englishName: "Polish (Poland)", - nativeName: "polski (Polska)", - language: "pl", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "nie jest liczbą", - negativeInfinity: "-nieskończoność", - positiveInfinity: "+nieskończoność", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "zł" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], - namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"], - namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] - }, - months: { - names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - monthsGenitive: { - names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], - namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "pt-BR", "default", { - name: "pt-BR", - englishName: "Portuguese (Brazil)", - nativeName: "Português (Brasil)", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "R$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], - namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "rm-CH", "default", { - name: "rm-CH", - englishName: "Romansh (Switzerland)", - nativeName: "Rumantsch (Svizra)", - language: "rm", - numberFormat: { - ",": "'", - "NaN": "betg def.", - negativeInfinity: "-infinit", - positiveInfinity: "+infinit", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], - namesAbbr: ["du","gli","ma","me","gie","ve","so"], - namesShort: ["du","gli","ma","me","gie","ve","so"] - }, - months: { - names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], - namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"s. Cr.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d MMMM yyyy HH:mm", - F: "dddd, d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ro-RO", "default", { - name: "ro-RO", - englishName: "Romanian (Romania)", - nativeName: "română (România)", - language: "ro", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "lei" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], - namesAbbr: ["D","L","Ma","Mi","J","V","S"], - namesShort: ["D","L","Ma","Mi","J","V","S"] - }, - months: { - names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], - namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ru-RU", "default", { - name: "ru-RU", - englishName: "Russian (Russia)", - nativeName: "русский (Россия)", - language: "ru", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], - namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - monthsGenitive: { - names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], - namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'г.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'г.' H:mm", - F: "d MMMM yyyy 'г.' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hr-HR", "default", { - name: "hr-HR", - englishName: "Croatian (Croatia)", - nativeName: "hrvatski (Hrvatska)", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kn" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sk-SK", "default", { - name: "sk-SK", - englishName: "Slovak (Slovakia)", - nativeName: "slovenčina (Slovenská republika)", - language: "sk", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Nie je číslo", - negativeInfinity: "-nekonečno", - positiveInfinity: "+nekonečno", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], - namesAbbr: ["ne","po","ut","st","št","pi","so"], - namesShort: ["ne","po","ut","st","št","pi","so"] - }, - months: { - names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - monthsGenitive: { - names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], - namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. l.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sq-AL", "default", { - name: "sq-AL", - englishName: "Albanian (Albania)", - nativeName: "shqipe (Shqipëria)", - language: "sq", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-infinit", - positiveInfinity: "infinit", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": ".", - ".": ",", - symbol: "Lek" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], - namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], - namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] - }, - months: { - names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], - namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] - }, - AM: ["PD","pd","PD"], - PM: ["MD","md","MD"], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy-MM-dd", - t: "h:mm.tt", - T: "h:mm:ss.tt", - f: "yyyy-MM-dd h:mm.tt", - F: "yyyy-MM-dd h:mm:ss.tt", - Y: "yyyy-MM" - } - } - } -}); - -Globalize.addCultureInfo( "sv-SE", "default", { - name: "sv-SE", - englishName: "Swedish (Sweden)", - nativeName: "svenska (Sverige)", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "th-TH", "default", { - name: "th-TH", - englishName: "Thai (Thailand)", - nativeName: "ไทย (ไทย)", - language: "th", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "฿" - } - }, - calendars: { - standard: { - name: "ThaiBuddhist", - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - eras: [{"name":"พ.ศ.","start":null,"offset":-543}], - twoDigitYearMax: 2572, - patterns: { - d: "d/M/yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - }, - Gregorian_Localized: { - firstDay: 1, - days: { - names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], - namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], - namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] - }, - months: { - names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], - namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] - }, - patterns: { - d: "d/M/yyyy", - D: "'วัน'dddd'ที่' d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", - F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tr-TR", "default", { - name: "tr-TR", - englishName: "Turkish (Turkey)", - nativeName: "Türkçe (Türkiye)", - language: "tr", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "TL" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], - namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], - namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] - }, - months: { - names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], - namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ur-PK", "default", { - name: "ur-PK", - englishName: "Urdu (Islamic Republic of Pakistan)", - nativeName: "اُردو (پاکستان)", - language: "ur", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$n"], - symbol: "Rs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], - namesShort: ["ا","پ","م","ب","ج","ج","ه"] - }, - months: { - names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], - namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - f: "dd MMMM, yyyy h:mm tt", - F: "dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - } - } -}); - -Globalize.addCultureInfo( "id-ID", "default", { - name: "id-ID", - englishName: "Indonesian (Indonesia)", - nativeName: "Bahasa Indonesia (Indonesia)", - language: "id", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": ",", - symbol: "Rp" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], - namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], - namesShort: ["M","S","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "uk-UA", "default", { - name: "uk-UA", - englishName: "Ukrainian (Ukraine)", - nativeName: "українська (Україна)", - language: "uk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-безмежність", - positiveInfinity: "безмежність", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₴" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], - namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], - namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] - }, - months: { - names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], - namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] - }, - monthsGenitive: { - names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], - namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy' р.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy' р.' H:mm", - F: "d MMMM yyyy' р.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy' р.'" - } - } - } -}); - -Globalize.addCultureInfo( "be-BY", "default", { - name: "be-BY", - englishName: "Belarusian (Belarus)", - nativeName: "Беларускі (Беларусь)", - language: "be", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], - namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], - namesShort: ["нд","пн","аў","ср","чц","пт","сб"] - }, - months: { - names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - monthsGenitive: { - names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], - namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sl-SI", "default", { - name: "sl-SI", - englishName: "Slovenian (Slovenia)", - nativeName: "slovenski (Slovenija)", - language: "sl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-neskončnost", - positiveInfinity: "neskončnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], - namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], - namesShort: ["ne","po","to","sr","če","pe","so"] - }, - months: { - names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "et-EE", "default", { - name: "et-EE", - englishName: "Estonian (Estonia)", - nativeName: "eesti (Eesti)", - language: "et", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "avaldamatu", - negativeInfinity: "miinuslõpmatus", - positiveInfinity: "plusslõpmatus", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], - namesAbbr: ["P","E","T","K","N","R","L"], - namesShort: ["P","E","T","K","N","R","L"] - }, - months: { - names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], - namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] - }, - AM: ["EL","el","EL"], - PM: ["PL","pl","PL"], - patterns: { - d: "d.MM.yyyy", - D: "d. MMMM yyyy'. a.'", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy'. a.' H:mm", - F: "d. MMMM yyyy'. a.' H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy'. a.'" - } - } - } -}); - -Globalize.addCultureInfo( "lv-LV", "default", { - name: "lv-LV", - englishName: "Latvian (Latvia)", - nativeName: "latviešu (Latvija)", - language: "lv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-bezgalība", - positiveInfinity: "bezgalība", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": " ", - ".": ",", - symbol: "Ls" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], - namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], - namesShort: ["sv","pr","ot","tr","ce","pk","se"] - }, - months: { - names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - monthsGenitive: { - names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], - namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd.", - D: "dddd, yyyy'. gada 'd. MMMM", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, yyyy'. gada 'd. MMMM H:mm", - F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", - M: "d. MMMM", - Y: "yyyy. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "lt-LT", "default", { - name: "lt-LT", - englishName: "Lithuanian (Lithuania)", - nativeName: "lietuvių (Lietuva)", - language: "lt", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-begalybė", - positiveInfinity: "begalybė", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Lt" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], - namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], - namesShort: ["S","P","A","T","K","Pn","Š"] - }, - months: { - names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - monthsGenitive: { - names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], - namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy.MM.dd", - D: "yyyy 'm.' MMMM d 'd.'", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'm.' MMMM d 'd.' HH:mm", - F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", - M: "MMMM d 'd.'", - Y: "yyyy 'm.' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { - name: "tg-Cyrl-TJ", - englishName: "Tajik (Cyrillic, Tajikistan)", - nativeName: "Тоҷикӣ (Тоҷикистон)", - language: "tg-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fa-IR", "default", { - name: "fa-IR", - englishName: "Persian", - nativeName: "فارسى (ایران)", - language: "fa", - isRTL: true, - numberFormat: { - pattern: ["n-"], - currency: { - pattern: ["$n-","$ n"], - ".": "/", - symbol: "ريال" - } - }, - calendars: { - standard: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], - namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - patterns: { - d: "yyyy/MM/dd", - D: "yyyy/MM/dd", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "yyyy/MM/dd hh:mm tt", - F: "yyyy/MM/dd hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ق.ظ","ق.ظ","ق.ظ"], - PM: ["ب.ظ","ب.ظ","ب.ظ"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "vi-VN", "default", { - name: "vi-VN", - englishName: "Vietnamese (Vietnam)", - nativeName: "Tiếng Việt (Việt Nam)", - language: "vi", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "₫" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], - namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], - namesShort: ["C","H","B","T","N","S","B"] - }, - months: { - names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], - namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] - }, - AM: ["SA","sa","SA"], - PM: ["CH","ch","CH"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - f: "dd MMMM yyyy h:mm tt", - F: "dd MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hy-AM", "default", { - name: "hy-AM", - englishName: "Armenian (Armenia)", - nativeName: "Հայերեն (Հայաստան)", - language: "hy", - numberFormat: { - currency: { - pattern: ["-n $","n $"], - symbol: "դր." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], - namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], - namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] - }, - months: { - names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], - namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM, yyyy H:mm", - F: "d MMMM, yyyy H:mm:ss", - M: "d MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "az-Latn-AZ", "default", { - name: "az-Latn-AZ", - englishName: "Azeri (Latin, Azerbaijan)", - nativeName: "Azərbaycan\xadılı (Azərbaycan)", - language: "az-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "eu-ES", "default", { - name: "eu-ES", - englishName: "Basque (Basque)", - nativeName: "euskara (euskara)", - language: "eu", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "EdZ", - negativeInfinity: "-Infinitu", - positiveInfinity: "Infinitu", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], - namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], - namesShort: ["ig","al","as","az","og","or","lr"] - }, - months: { - names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], - namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "yyyy/MM/dd", - D: "dddd, yyyy.'eko' MMMM'k 'd", - t: "HH:mm", - T: "H:mm:ss", - f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", - F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", - Y: "yyyy.'eko' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "hsb-DE", "default", { - name: "hsb-DE", - englishName: "Upper Sorbian (Germany)", - nativeName: "hornjoserbšćina (Němska)", - language: "hsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekónčne", - positiveInfinity: "+njekónčne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], - namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], - namesShort: ["n","p","w","s","š","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'hodź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "mk-MK", "default", { - name: "mk-MK", - englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", - nativeName: "македонски јазик (Македонија)", - language: "mk", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "ден." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], - namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], - namesShort: ["не","по","вт","ср","че","пе","са"] - }, - months: { - names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], - namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd MMMM yyyy HH:mm", - F: "dddd, dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tn-ZA", "default", { - name: "tn-ZA", - englishName: "Setswana (South Africa)", - nativeName: "Setswana (Aforika Borwa)", - language: "tn", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], - namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], - namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] - }, - months: { - names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], - namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "xh-ZA", "default", { - name: "xh-ZA", - englishName: "isiXhosa (South Africa)", - nativeName: "isiXhosa (uMzantsi Afrika)", - language: "xh", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] - }, - months: { - names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zu-ZA", "default", { - name: "zu-ZA", - englishName: "isiZulu (South Africa)", - nativeName: "isiZulu (iNingizimu Afrika)", - language: "zu", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], - namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] - }, - months: { - names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], - namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "af-ZA", "default", { - name: "af-ZA", - englishName: "Afrikaans (South Africa)", - nativeName: "Afrikaans (Suid Afrika)", - language: "af", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], - namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], - namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] - }, - months: { - names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], - namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ka-GE", "default", { - name: "ka-GE", - englishName: "Georgian (Georgia)", - nativeName: "ქართული (საქართველო)", - language: "ka", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "Lari" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], - namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] - }, - months: { - names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], - namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'წლის' dd MM, dddd", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'წლის' dd MM, dddd H:mm", - F: "yyyy 'წლის' dd MM, dddd H:mm:ss", - M: "dd MM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fo-FO", "default", { - name: "fo-FO", - englishName: "Faroese (Faroe Islands)", - nativeName: "føroyskt (Føroyar)", - language: "fo", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], - namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], - namesShort: ["su","má","tý","mi","hó","fr","ley"] - }, - months: { - names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hi-IN", "default", { - name: "hi-IN", - englishName: "Hindi (India)", - nativeName: "हिंदी (भारत)", - language: "hi", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mt-MT", "default", { - name: "mt-MT", - englishName: "Maltese (Malta)", - nativeName: "Malti (Malta)", - language: "mt", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], - namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], - namesShort: ["I","I","I","L","I","I","I"] - }, - months: { - names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], - namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] - }, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, d' ta\\' 'MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", - F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", - M: "d' ta\\' 'MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "se-NO", "default", { - name: "se-NO", - englishName: "Sami, Northern (Norway)", - nativeName: "davvisámegiella (Norga)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ms-MY", "default", { - name: "ms-MY", - englishName: "Malay (Malaysia)", - nativeName: "Bahasa Melayu (Malaysia)", - language: "ms", - numberFormat: { - currency: { - decimals: 0, - symbol: "RM" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kk-KZ", "default", { - name: "kk-KZ", - englishName: "Kazakh (Kazakhstan)", - nativeName: "Қазақ (Қазақстан)", - language: "kk", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-$n","$n"], - ",": " ", - ".": "-", - symbol: "Т" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], - namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], - namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] - }, - months: { - names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], - namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy 'ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'ж.' H:mm", - F: "d MMMM yyyy 'ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ky-KG", "default", { - name: "ky-KG", - englishName: "Kyrgyz (Kyrgyzstan)", - nativeName: "Кыргыз (Кыргызстан)", - language: "ky", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": "-", - symbol: "сом" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], - namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], - namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] - }, - months: { - names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d'-'MMMM yyyy'-ж.'", - t: "H:mm", - T: "H:mm:ss", - f: "d'-'MMMM yyyy'-ж.' H:mm", - F: "d'-'MMMM yyyy'-ж.' H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy'-ж.'" - } - } - } -}); - -Globalize.addCultureInfo( "sw-KE", "default", { - name: "sw-KE", - englishName: "Kiswahili (Kenya)", - nativeName: "Kiswahili (Kenya)", - language: "sw", - numberFormat: { - currency: { - symbol: "S" - } - }, - calendars: { - standard: { - days: { - names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], - namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], - namesShort: ["P","T","N","T","A","I","M"] - }, - months: { - names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] - } - } - } -}); - -Globalize.addCultureInfo( "tk-TM", "default", { - name: "tk-TM", - englishName: "Turkmen (Turkmenistan)", - nativeName: "türkmençe (Türkmenistan)", - language: "tk", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-üznüksizlik", - positiveInfinity: "üznüksizlik", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "m." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], - namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], - namesShort: ["D","S","Ç","P","A","Ş","Ý"] - }, - months: { - names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], - namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "yyyy 'ý.' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'ý.' MMMM d H:mm", - F: "yyyy 'ý.' MMMM d H:mm:ss", - Y: "yyyy 'ý.' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "uz-Latn-UZ", "default", { - name: "uz-Latn-UZ", - englishName: "Uzbek (Latin, Uzbekistan)", - nativeName: "U'zbek (U'zbekiston Respublikasi)", - language: "uz-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tt-RU", "default", { - name: "tt-RU", - englishName: "Tatar (Russia)", - nativeName: "Татар (Россия)", - language: "tt", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "р." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], - namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], - namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] - }, - months: { - names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], - namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] - }, - monthsGenitive: { - names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], - namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bn-IN", "default", { - name: "bn-IN", - englishName: "Bengali (India)", - nativeName: "বাংলা (ভারত)", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "টা" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "pa-IN", "default", { - name: "pa-IN", - englishName: "Punjabi (India)", - nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", - language: "pa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ਰੁ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], - namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], - namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] - }, - months: { - names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], - namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] - }, - AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], - PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy dddd", - t: "tt hh:mm", - T: "tt hh:mm:ss", - f: "dd MMMM yyyy dddd tt hh:mm", - F: "dd MMMM yyyy dddd tt hh:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "gu-IN", "default", { - name: "gu-IN", - englishName: "Gujarati (India)", - nativeName: "ગુજરાતી (ભારત)", - language: "gu", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "રૂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], - namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], - namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] - }, - months: { - names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], - namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] - }, - AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], - PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "or-IN", "default", { - name: "or-IN", - englishName: "Oriya (India)", - nativeName: "ଓଡ଼ିଆ (ଭାରତ)", - language: "or", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ଟ" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], - namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], - namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] - }, - months: { - names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], - namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] - }, - eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ta-IN", "default", { - name: "ta-IN", - englishName: "Tamil (India)", - nativeName: "தமிழ் (இந்தியா)", - language: "ta", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ரூ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], - namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], - namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] - }, - months: { - names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], - namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] - }, - AM: ["காலை","காலை","காலை"], - PM: ["மாலை","மாலை","மாலை"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "te-IN", "default", { - name: "te-IN", - englishName: "Telugu (India)", - nativeName: "తెలుగు (భారత దేశం)", - language: "te", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "రూ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], - namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], - namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] - }, - months: { - names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], - namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] - }, - AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], - PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "kn-IN", "default", { - name: "kn-IN", - englishName: "Kannada (India)", - nativeName: "ಕನ್ನಡ (ಭಾರತ)", - language: "kn", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ರೂ" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], - namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], - namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] - }, - months: { - names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], - namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] - }, - AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], - PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ml-IN", "default", { - name: "ml-IN", - englishName: "Malayalam (India)", - nativeName: "മലയാളം (ഭാരതം)", - language: "ml", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "ക" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], - namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], - namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] - }, - months: { - names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], - namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] - }, - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "as-IN", "default", { - name: "as-IN", - englishName: "Assamese (India)", - nativeName: "অসমীয়া (ভাৰত)", - language: "as", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","n$"], - groupSizes: [3,2], - symbol: "ট" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], - namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], - namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] - }, - months: { - names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], - namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] - }, - AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], - PM: ["আবেলি","আবেলি","আবেলি"], - eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "yyyy,MMMM dd, dddd", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy,MMMM dd, dddd tt h:mm", - F: "yyyy,MMMM dd, dddd tt h:mm:ss", - M: "dd MMMM", - Y: "MMMM,yy" - } - } - } -}); - -Globalize.addCultureInfo( "mr-IN", "default", { - name: "mr-IN", - englishName: "Marathi (India)", - nativeName: "मराठी (भारत)", - language: "mr", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], - namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], - namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sa-IN", "default", { - name: "sa-IN", - englishName: "Sanskrit (India)", - nativeName: "संस्कृत (भारतम्)", - language: "sa", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], - namesShort: ["र","स","म","ब","ग","श","श"] - }, - months: { - names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], - namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] - }, - AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], - PM: ["अपराह्न","अपराह्न","अपराह्न"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy dddd", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy dddd HH:mm", - F: "dd MMMM yyyy dddd HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mn-MN", "default", { - name: "mn-MN", - englishName: "Mongolian (Cyrillic, Mongolia)", - nativeName: "Монгол хэл (Монгол улс)", - language: "mn-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "bo-CN", "default", { - name: "bo-CN", - englishName: "Tibetan (PRC)", - nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།)", - language: "bo", - numberFormat: { - groupSizes: [3,0], - "NaN": "ཨང་ཀི་མིན་པ།", - negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", - positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], - namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], - namesShort: ["༧","༡","༢","༣","༤","༥","༦"] - }, - months: { - names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], - namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] - }, - AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], - PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], - eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", - F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", - M: "'ཟླ་' M'ཚེས'd", - Y: "yyyy.M" - } - } - } -}); - -Globalize.addCultureInfo( "cy-GB", "default", { - name: "cy-GB", - englishName: "Welsh (United Kingdom)", - nativeName: "Cymraeg (y Deyrnas Unedig)", - language: "cy", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], - namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], - namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] - }, - months: { - names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], - namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "km-KH", "default", { - name: "km-KH", - englishName: "Khmer (Cambodia)", - nativeName: "ខ្មែរ (កម្ពុជា)", - language: "km", - numberFormat: { - pattern: ["- n"], - groupSizes: [3,0], - "NaN": "NAN", - negativeInfinity: "-- អនន្ត", - positiveInfinity: "អនន្ត", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["-n$","n$"], - symbol: "៛" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], - namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], - namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] - }, - months: { - names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], - namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "d MMMM yyyy H:mm tt", - F: "d MMMM yyyy HH:mm:ss", - M: "'ថ្ងៃទី' dd 'ខែ' MM", - Y: "'ខែ' MM 'ឆ្នាំ' yyyy" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], - PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm tt", - F: "dddd, MMMM dd, yyyy HH:mm:ss" - } - } - } -}); - -Globalize.addCultureInfo( "lo-LA", "default", { - name: "lo-LA", - englishName: "Lao (Lao P.D.R.)", - nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", - language: "lo", - numberFormat: { - pattern: ["(n)"], - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - }, - currency: { - pattern: ["(n$)","n$"], - groupSizes: [3,0], - symbol: "₭" - } - }, - calendars: { - standard: { - days: { - names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], - namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], - namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] - }, - months: { - names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], - namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] - }, - AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], - PM: ["ແລງ","ແລງ","ແລງ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm tt", - T: "HH:mm:ss", - f: "dd MMMM yyyy H:mm tt", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gl-ES", "default", { - name: "gl-ES", - englishName: "Galician (Galician)", - nativeName: "galego (galego)", - language: "gl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], - namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], - namesShort: ["do","lu","ma","mé","xo","ve","sá"] - }, - months: { - names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], - namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kok-IN", "default", { - name: "kok-IN", - englishName: "Konkani (India)", - nativeName: "कोंकणी (भारत)", - language: "kok", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "रु" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], - namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], - namesShort: ["आ","स","म","ब","ब","स","श"] - }, - months: { - names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], - namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] - }, - AM: ["म.पू.","म.पू.","म.पू."], - PM: ["म.नं.","म.नं.","म.नं."], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "syr-SY", "default", { - name: "syr-SY", - englishName: "Syriac (Syria)", - nativeName: "ܣܘܪܝܝܐ (سوريا)", - language: "syr", - isRTL: true, - numberFormat: { - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], - namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], - namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] - }, - months: { - names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], - namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] - }, - AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], - PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "si-LK", "default", { - name: "si-LK", - englishName: "Sinhala (Sri Lanka)", - nativeName: "සිංහල (ශ්\u200dරී ලංකා)", - language: "si", - numberFormat: { - groupSizes: [3,2], - negativeInfinity: "-අනන්තය", - positiveInfinity: "අනන්තය", - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["($ n)","$ n"], - symbol: "රු." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], - namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], - namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] - }, - months: { - names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], - namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] - }, - AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], - PM: ["ප.ව.","ප.ව.","ප.ව."], - eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", - f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", - F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", - Y: "yyyy MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "iu-Cans-CA", "default", { - name: "iu-Cans-CA", - englishName: "Inuktitut (Syllabics, Canada)", - nativeName: "ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕᒥ)", - language: "iu-Cans", - numberFormat: { - groupSizes: [3,0], - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], - namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], - namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] - }, - months: { - names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], - namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd,MMMM dd,yyyy", - f: "dddd,MMMM dd,yyyy h:mm tt", - F: "dddd,MMMM dd,yyyy h:mm:ss tt", - Y: "MMMM,yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "am-ET", "default", { - name: "am-ET", - englishName: "Amharic (Ethiopia)", - nativeName: "አማርኛ (ኢትዮጵያ)", - language: "am", - numberFormat: { - decimals: 1, - groupSizes: [3,0], - "NaN": "NAN", - percent: { - pattern: ["-n%","n%"], - decimals: 1, - groupSizes: [3,0] - }, - currency: { - pattern: ["-$n","$n"], - groupSizes: [3,0], - symbol: "ETB" - } - }, - calendars: { - standard: { - days: { - names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], - namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] - }, - months: { - names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], - namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] - }, - AM: ["ጡዋት","ጡዋት","ጡዋት"], - PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], - eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "dddd '፣' MMMM d 'ቀን' yyyy", - f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", - F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", - M: "MMMM d ቀን", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ne-NP", "default", { - name: "ne-NP", - englishName: "Nepali (Nepal)", - nativeName: "नेपाली (नेपाल)", - language: "ne", - numberFormat: { - groupSizes: [3,2], - "NaN": "nan", - negativeInfinity: "-infinity", - positiveInfinity: "infinity", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,2] - }, - currency: { - pattern: ["-$n","$n"], - symbol: "रु" - } - }, - calendars: { - standard: { - days: { - names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], - namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], - namesShort: ["आ","सो","म","बु","बि","शु","श"] - }, - months: { - names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], - namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] - }, - AM: ["विहानी","विहानी","विहानी"], - PM: ["बेलुकी","बेलुकी","बेलुकी"], - eras: [{"name":"a.d.","start":null,"offset":0}], - patterns: { - Y: "MMMM,yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fy-NL", "default", { - name: "fy-NL", - englishName: "Frisian (Netherlands)", - nativeName: "Frysk (Nederlân)", - language: "fy", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], - namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], - namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "d-M-yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ps-AF", "default", { - name: "ps-AF", - englishName: "Pashto (Afghanistan)", - nativeName: "پښتو (افغانستان)", - language: "ps", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": "،", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": "،", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - ",": "٬", - ".": "٫", - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 6, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fil-PH", "default", { - name: "fil-PH", - englishName: "Filipino (Philippines)", - nativeName: "Filipino (Pilipinas)", - language: "fil", - numberFormat: { - currency: { - symbol: "PhP" - } - }, - calendars: { - standard: { - days: { - names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], - namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], - namesShort: ["L","L","M","M","H","B","S"] - }, - months: { - names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], - namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] - }, - eras: [{"name":"Anno Domini","start":null,"offset":0}] - } - } -}); - -Globalize.addCultureInfo( "dv-MV", "default", { - name: "dv-MV", - englishName: "Divehi (Maldives)", - nativeName: "ދިވެހިބަސް (ދިވެހި ރާއްޖެ)", - language: "dv", - isRTL: true, - numberFormat: { - currency: { - pattern: ["n $-","n $"], - symbol: "ރ." - } - }, - calendars: { - standard: { - name: "Hijri", - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], - namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"ހިޖްރީ","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd/MM/yyyy HH:mm", - F: "dd/MM/yyyy HH:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - days: { - names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], - namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] - }, - months: { - names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], - namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] - }, - AM: ["މކ","މކ","މކ"], - PM: ["މފ","މފ","މފ"], - eras: [{"name":"މީލާދީ","start":null,"offset":0}], - patterns: { - d: "dd/MM/yy", - D: "ddd, yyyy MMMM dd", - t: "HH:mm", - T: "HH:mm:ss", - f: "ddd, yyyy MMMM dd HH:mm", - F: "ddd, yyyy MMMM dd HH:mm:ss", - Y: "yyyy, MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ha-Latn-NG", "default", { - name: "ha-Latn-NG", - englishName: "Hausa (Latin, Nigeria)", - nativeName: "Hausa (Nigeria)", - language: "ha-Latn", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "yo-NG", "default", { - name: "yo-NG", - englishName: "Yoruba (Nigeria)", - nativeName: "Yoruba (Nigeria)", - language: "yo", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], - namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] - }, - AM: ["Owuro","owuro","OWURO"], - PM: ["Ale","ale","ALE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "quz-BO", "default", { - name: "quz-BO", - englishName: "Quechua (Bolivia)", - nativeName: "runasimi (Qullasuyu)", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "nso-ZA", "default", { - name: "nso-ZA", - englishName: "Sesotho sa Leboa (South Africa)", - nativeName: "Sesotho sa Leboa (Afrika Borwa)", - language: "nso", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$-n","$ n"], - symbol: "R" - } - }, - calendars: { - standard: { - days: { - names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], - namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], - namesShort: ["L","M","L","L","L","L","M"] - }, - months: { - names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], - namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] - }, - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ba-RU", "default", { - name: "ba-RU", - englishName: "Bashkir (Russia)", - nativeName: "Башҡорт (Россия)", - language: "ba", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ",", - symbol: "һ." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], - namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], - namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] - }, - months: { - names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], - namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy 'й'", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy 'й' H:mm", - F: "d MMMM yyyy 'й' H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "lb-LU", "default", { - name: "lb-LU", - englishName: "Luxembourgish (Luxembourg)", - nativeName: "Lëtzebuergesch (Luxembourg)", - language: "lb", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "n. num.", - negativeInfinity: "-onendlech", - positiveInfinity: "+onendlech", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], - namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], - namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "kl-GL", "default", { - name: "kl-GL", - englishName: "Greenlandic (Greenland)", - nativeName: "kalaallisut (Kalaallit Nunaat)", - language: "kl", - numberFormat: { - ",": ".", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - groupSizes: [3,0], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - ",": ".", - ".": ",", - symbol: "kr." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], - namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], - namesShort: ["sa","at","ma","pi","si","ta","ar"] - }, - months: { - names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ig-NG", "default", { - name: "ig-NG", - englishName: "Igbo (Nigeria)", - nativeName: "Igbo (Nigeria)", - language: "ig", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], - namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], - namesShort: ["A","A","I","O","O","E","A"] - }, - months: { - names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], - namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] - }, - AM: ["Ututu","ututu","UTUTU"], - PM: ["Efifie","efifie","EFIFIE"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ii-CN", "default", { - name: "ii-CN", - englishName: "Yi (PRC)", - nativeName: "ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ)", - language: "ii", - numberFormat: { - groupSizes: [3,0], - "NaN": "ꌗꂷꀋꉬ", - negativeInfinity: "ꀄꊭꌐꀋꉆ", - positiveInfinity: "ꈤꇁꑖꀋꉬ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], - namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], - namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] - }, - months: { - names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], - namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] - }, - AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], - PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], - eras: [{"name":"ꇬꑼ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", - t: "tt h:mm", - T: "H:mm:ss", - f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", - F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", - M: "M'ꆪ' d'ꑍ'", - Y: "yyyy'ꈎ' M'ꆪ'" - } - } - } -}); - -Globalize.addCultureInfo( "arn-CL", "default", { - name: "arn-CL", - englishName: "Mapudungun (Chile)", - nativeName: "Mapudungun (Chile)", - language: "arn", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "moh-CA", "default", { - name: "moh-CA", - englishName: "Mohawk (Mohawk)", - nativeName: "Kanien'kéha", - language: "moh", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], - namesShort: ["S","M","T","W","T","F","S"] - }, - months: { - names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] - } - } - } -}); - -Globalize.addCultureInfo( "br-FR", "default", { - name: "br-FR", - englishName: "Breton (France)", - nativeName: "brezhoneg (Frañs)", - language: "br", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NkN", - negativeInfinity: "-Anfin", - positiveInfinity: "+Anfin", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], - namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], - namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] - }, - months: { - names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], - namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] - }, - AM: null, - PM: null, - eras: [{"name":"g. J.-K.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ug-CN", "default", { - name: "ug-CN", - englishName: "Uyghur (PRC)", - nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", - language: "ug", - isRTL: true, - numberFormat: { - "NaN": "سان ئەمەس", - negativeInfinity: "مەنپىي چەكسىزلىك", - positiveInfinity: "مۇسبەت چەكسىزلىك", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], - namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], - namesShort: ["ي","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], - namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] - }, - AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], - PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], - eras: [{"name":"مىلادى","start":null,"offset":0}], - patterns: { - d: "yyyy-M-d", - D: "yyyy-'يىلى' MMMM d-'كۈنى،'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", - F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", - M: "MMMM d'-كۈنى'", - Y: "yyyy-'يىلى' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mi-NZ", "default", { - name: "mi-NZ", - englishName: "Maori (New Zealand)", - nativeName: "Reo Māori (Aotearoa)", - language: "mi", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], - namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], - namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] - }, - months: { - names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], - namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM, yyyy", - f: "dddd, dd MMMM, yyyy h:mm tt", - F: "dddd, dd MMMM, yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM, yy" - } - } - } -}); - -Globalize.addCultureInfo( "oc-FR", "default", { - name: "oc-FR", - englishName: "Occitan (France)", - nativeName: "Occitan (França)", - language: "oc", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numeric", - negativeInfinity: "-Infinit", - positiveInfinity: "+Infinit", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], - namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], - namesShort: ["di","lu","ma","mè","jò","ve","sa"] - }, - months: { - names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - monthsGenitive: { - names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], - namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] - }, - AM: null, - PM: null, - eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd,' lo 'd MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", - F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "co-FR", "default", { - name: "co-FR", - englishName: "Corsican (France)", - nativeName: "Corsu (France)", - language: "co", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Mica numericu", - negativeInfinity: "-Infinitu", - positiveInfinity: "+Infinitu", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], - namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], - namesShort: ["du","lu","ma","me","gh","ve","sa"] - }, - months: { - names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], - namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] - }, - AM: null, - PM: null, - eras: [{"name":"dopu J-C","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gsw-FR", "default", { - name: "gsw-FR", - englishName: "Alsatian (France)", - nativeName: "Elsässisch (Frànkrisch)", - language: "gsw", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Ohne Nummer", - negativeInfinity: "-Unendlich", - positiveInfinity: "+Unendlich", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], - namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], - namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] - }, - months: { - names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], - namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] - }, - AM: null, - PM: null, - eras: [{"name":"Vor J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sah-RU", "default", { - name: "sah-RU", - englishName: "Yakut (Russia)", - nativeName: "саха (Россия)", - language: "sah", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "NAN", - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "с." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], - namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], - namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] - }, - months: { - names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - monthsGenitive: { - names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], - namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] - }, - AM: null, - PM: null, - patterns: { - d: "MM.dd.yyyy", - D: "MMMM d yyyy 'с.'", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d yyyy 'с.' H:mm", - F: "MMMM d yyyy 'с.' H:mm:ss", - Y: "MMMM yyyy 'с.'" - } - } - } -}); - -Globalize.addCultureInfo( "qut-GT", "default", { - name: "qut-GT", - englishName: "K'iche (Guatemala)", - nativeName: "K'iche (Guatemala)", - language: "qut", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], - namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], - namesShort: ["ju","ka","ox","ka","jo","wa","wu"] - }, - months: { - names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], - namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "rw-RW", "default", { - name: "rw-RW", - englishName: "Kinyarwanda (Rwanda)", - nativeName: "Kinyarwanda (Rwanda)", - language: "rw", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "RWF" - } - }, - calendars: { - standard: { - days: { - names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], - namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], - namesShort: ["mb","ka","ga","ka","ga","ga","cy"] - }, - months: { - names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], - namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] - }, - AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], - PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], - eras: [{"name":"AD","start":null,"offset":0}] - } - } -}); - -Globalize.addCultureInfo( "wo-SN", "default", { - name: "wo-SN", - englishName: "Wolof (Senegal)", - nativeName: "Wolof (Sénégal)", - language: "wo", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "XOF" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "prs-AF", "default", { - name: "prs-AF", - englishName: "Dari (Afghanistan)", - nativeName: "درى (افغانستان)", - language: "prs", - isRTL: true, - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "غ ع", - negativeInfinity: "-∞", - positiveInfinity: "∞", - percent: { - pattern: ["%n-","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$n-","$n"], - symbol: "؋" - } - }, - calendars: { - standard: { - name: "Hijri", - firstDay: 5, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - f: "dd/MM/yyyy h:mm tt", - F: "dd/MM/yyyy h:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_Localized: { - firstDay: 5, - days: { - names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], - namesShort: ["ی","د","س","چ","پ","ج","ش"] - }, - months: { - names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], - namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] - }, - AM: ["غ.م","غ.م","غ.م"], - PM: ["غ.و","غ.و","غ.و"], - eras: [{"name":"ل.ه","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy, dd, MMMM, dddd", - f: "yyyy, dd, MMMM, dddd h:mm tt", - F: "yyyy, dd, MMMM, dddd h:mm:ss tt", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "gd-GB", "default", { - name: "gd-GB", - englishName: "Scottish Gaelic (United Kingdom)", - nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", - language: "gd", - numberFormat: { - negativeInfinity: "-Neo-chrìochnachd", - positiveInfinity: "Neo-chrìochnachd", - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], - namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], - namesShort: ["D","L","M","C","A","H","S"] - }, - months: { - names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], - namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] - }, - AM: ["m","m","M"], - PM: ["f","f","F"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-IQ", "default", { - name: "ar-IQ", - englishName: "Arabic (Iraq)", - nativeName: "العربية (العراق)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.ع.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "zh-CN", "default", { - name: "zh-CN", - englishName: "Chinese (Simplified, PRC)", - nativeName: "中文(中华人民共和国)", - language: "zh-CHS", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "de-CH", "default", { - name: "de-CH", - englishName: "German (Switzerland)", - nativeName: "Deutsch (Schweiz)", - language: "de", - numberFormat: { - ",": "'", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "Fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-GB", "default", { - name: "en-GB", - englishName: "English (United Kingdom)", - nativeName: "English (United Kingdom)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "£" - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-MX", "default", { - name: "es-MX", - englishName: "Spanish (Mexico)", - nativeName: "Español (México)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-BE", "default", { - name: "fr-BE", - englishName: "French (Belgium)", - nativeName: "français (Belgique)", - language: "fr", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "d/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "it-CH", "default", { - name: "it-CH", - englishName: "Italian (Switzerland)", - nativeName: "italiano (Svizzera)", - language: "it", - numberFormat: { - ",": "'", - "NaN": "Non un numero reale", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], - namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], - namesShort: ["do","lu","ma","me","gi","ve","sa"] - }, - months: { - names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], - namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "nl-BE", "default", { - name: "nl-BE", - englishName: "Dutch (Belgium)", - nativeName: "Nederlands (België)", - language: "nl", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Niet-een-getal)", - negativeInfinity: "-oneindig", - positiveInfinity: "oneindig", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], - namesAbbr: ["zo","ma","di","wo","do","vr","za"], - namesShort: ["zo","ma","di","wo","do","vr","za"] - }, - months: { - names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd d MMMM yyyy H:mm", - F: "dddd d MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "nn-NO", "default", { - name: "nn-NO", - englishName: "Norwegian, Nynorsk (Norway)", - nativeName: "norsk, nynorsk (Noreg)", - language: "nn", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], - namesAbbr: ["sø","må","ty","on","to","fr","la"], - namesShort: ["sø","må","ty","on","to","fr","la"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "pt-PT", "default", { - name: "pt-PT", - englishName: "Portuguese (Portugal)", - nativeName: "português (Portugal)", - language: "pt", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NaN (Não é um número)", - negativeInfinity: "-Infinito", - positiveInfinity: "+Infinito", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], - namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], - namesShort: ["D","S","T","Q","Q","S","S"] - }, - months: { - names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], - namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, d' de 'MMMM' de 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", - F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", - M: "d/M", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Latn-CS", "default", { - name: "sr-Latn-CS", - englishName: "Serbian (Latin, Serbia and Montenegro (Former))", - nativeName: "srpski (Srbija i Crna Gora (Prethodno))", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sv-FI", "default", { - name: "sv-FI", - englishName: "Swedish (Finland)", - nativeName: "svenska (Finland)", - language: "sv", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], - namesAbbr: ["sö","må","ti","on","to","fr","lö"], - namesShort: ["sö","må","ti","on","to","fr","lö"] - }, - months: { - names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "'den 'd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "'den 'd MMMM yyyy HH:mm", - F: "'den 'd MMMM yyyy HH:mm:ss", - M: "'den 'd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { - name: "az-Cyrl-AZ", - englishName: "Azeri (Cyrillic, Azerbaijan)", - nativeName: "Азәрбајҹан (Азәрбајҹан)", - language: "az-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "ман." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], - namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], - namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] - }, - months: { - names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "dsb-DE", "default", { - name: "dsb-DE", - englishName: "Lower Sorbian (Germany)", - nativeName: "dolnoserbšćina (Nimska)", - language: "dsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekońcne", - positiveInfinity: "+njekońcne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], - namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], - namesShort: ["n","p","w","s","s","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'goź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "se-SE", "default", { - name: "se-SE", - englishName: "Sami, Northern (Sweden)", - nativeName: "davvisámegiella (Ruoŧŧa)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ga-IE", "default", { - name: "ga-IE", - englishName: "Irish (Ireland)", - nativeName: "Gaeilge (Éire)", - language: "ga", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], - namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], - namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] - }, - months: { - names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], - namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] - }, - AM: ["r.n.","r.n.","R.N."], - PM: ["i.n.","i.n.","I.N."], - patterns: { - d: "dd/MM/yyyy", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ms-BN", "default", { - name: "ms-BN", - englishName: "Malay (Brunei Darussalam)", - nativeName: "Bahasa Melayu (Brunei Darussalam)", - language: "ms", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - decimals: 0, - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], - namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], - namesShort: ["A","I","S","R","K","J","S"] - }, - months: { - names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], - namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM yyyy H:mm", - F: "dd MMMM yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { - name: "uz-Cyrl-UZ", - englishName: "Uzbek (Cyrillic, Uzbekistan)", - nativeName: "Ўзбек (Ўзбекистон)", - language: "uz-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "сўм" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], - namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], - namesShort: ["я","д","с","ч","п","ж","ш"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'йил' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'йил' d-MMMM HH:mm", - F: "yyyy 'йил' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bn-BD", "default", { - name: "bn-BD", - englishName: "Bengali (Bangladesh)", - nativeName: "বাংলা (বাংলাদেশ)", - language: "bn", - numberFormat: { - groupSizes: [3,2], - percent: { - pattern: ["-%n","%n"], - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "৳" - } - }, - calendars: { - standard: { - "/": "-", - ":": ".", - firstDay: 1, - days: { - names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], - namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], - namesShort: ["র","স","ম","ব","ব","শ","শ"] - }, - months: { - names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], - namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] - }, - AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], - PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], - patterns: { - d: "dd-MM-yy", - D: "dd MMMM yyyy", - t: "HH.mm", - T: "HH.mm.ss", - f: "dd MMMM yyyy HH.mm", - F: "dd MMMM yyyy HH.mm.ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "mn-Mong-CN", "default", { - name: "mn-Mong-CN", - englishName: "Mongolian (Traditional Mongolian, PRC)", - nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ)", - language: "mn-Mong", - numberFormat: { - groupSizes: [3,0], - "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", - negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", - positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] - }, - months: { - names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], - namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] - }, - AM: null, - PM: null, - eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", - F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", - M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", - Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" - } - } - } -}); - -Globalize.addCultureInfo( "iu-Latn-CA", "default", { - name: "iu-Latn-CA", - englishName: "Inuktitut (Latin, Canada)", - nativeName: "Inuktitut (Kanatami)", - language: "iu-Latn", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { - name: "tzm-Latn-DZ", - englishName: "Tamazight (Latin, Algeria)", - nativeName: "Tamazight (Djazaïr)", - language: "tzm-Latn", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "quz-EC", "default", { - name: "quz-EC", - englishName: "Quechua (Ecuador)", - nativeName: "runasimi (Ecuador)", - language: "quz", - numberFormat: { - ",": ".", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-EG", "default", { - name: "ar-EG", - englishName: "Arabic (Egypt)", - nativeName: "العربية (مصر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - symbol: "ج.م.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "zh-HK", "default", { - name: "zh-HK", - englishName: "Chinese (Traditional, Hong Kong S.A.R.)", - nativeName: "中文(香港特別行政區)", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "de-AT", "default", { - name: "de-AT", - englishName: "German (Austria)", - nativeName: "Deutsch (Österreich)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, dd. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, dd. MMMM yyyy HH:mm", - F: "dddd, dd. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-AU", "default", { - name: "en-AU", - englishName: "English (Australia)", - nativeName: "English (Australia)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "d/MM/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-ES", "default", { - name: "es-ES", - englishName: "Spanish (Spain, International Sort)", - nativeName: "Español (España, alfabetización internacional)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-CA", "default", { - name: "fr-CA", - englishName: "French (Canada)", - nativeName: "français (Canada)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["(n $)","n $"], - ",": " ", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "yyyy-MM-dd", - D: "d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d MMMM yyyy HH:mm", - F: "d MMMM yyyy HH:mm:ss", - M: "d MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { - name: "sr-Cyrl-CS", - englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", - nativeName: "српски (Србија и Црна Гора (Претходно))", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "se-FI", "default", { - name: "se-FI", - englishName: "Sami, Northern (Finland)", - nativeName: "davvisámegiella (Suopma)", - language: "se", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], - namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - monthsGenitive: { - names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], - namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. b. 'yyyy H:mm", - F: "MMMM d'. b. 'yyyy H:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "quz-PE", "default", { - name: "quz-PE", - englishName: "Quechua (Peru)", - nativeName: "runasimi (Piruw)", - language: "quz", - numberFormat: { - percent: { - pattern: ["-%n","%n"] - }, - currency: { - pattern: ["$ -n","$ n"], - symbol: "S/." - } - }, - calendars: { - standard: { - days: { - names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], - namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], - namesShort: ["d","k","a","m","h","b","k"] - }, - months: { - names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], - namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-LY", "default", { - name: "ar-LY", - englishName: "Arabic (Libya)", - nativeName: "العربية (ليبيا)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$n"], - decimals: 3, - symbol: "د.ل.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "zh-SG", "default", { - name: "zh-SG", - englishName: "Chinese (Simplified, Singapore)", - nativeName: "中文(新加坡)", - language: "zh-CHS", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "tt h:mm", - T: "tt h:mm:ss", - f: "yyyy'年'M'月'd'日' tt h:mm", - F: "yyyy'年'M'月'd'日' tt h:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "de-LU", "default", { - name: "de-LU", - englishName: "German (Luxembourg)", - nativeName: "Deutsch (Luxemburg)", - language: "de", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-CA", "default", { - name: "en-CA", - englishName: "English (Canada)", - nativeName: "English (Canada)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "MMMM-dd-yy", - f: "MMMM-dd-yy h:mm tt", - F: "MMMM-dd-yy h:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "es-GT", "default", { - name: "es-GT", - englishName: "Spanish (Guatemala)", - nativeName: "Español (Guatemala)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "Q" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-CH", "default", { - name: "fr-CH", - englishName: "French (Switzerland)", - nativeName: "français (Suisse)", - language: "fr", - numberFormat: { - ",": "'", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "fr." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "hr-BA", "default", { - name: "hr-BA", - englishName: "Croatian (Latin, Bosnia and Herzegovina)", - nativeName: "hrvatski (Bosna i Hercegovina)", - language: "hr", - numberFormat: { - pattern: ["- n"], - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - monthsGenitive: { - names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], - namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy.", - D: "d. MMMM yyyy.", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy. H:mm", - F: "d. MMMM yyyy. H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "smj-NO", "default", { - name: "smj-NO", - englishName: "Sami, Lule (Norway)", - nativeName: "julevusámegiella (Vuodna)", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["sådnåbiejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["såd","mán","dis","gas","duor","bier","láv"], - namesShort: ["s","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-DZ", "default", { - name: "ar-DZ", - englishName: "Arabic (Algeria)", - nativeName: "العربية (الجزائر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.ج.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -Globalize.addCultureInfo( "zh-MO", "default", { - name: "zh-MO", - englishName: "Chinese (Traditional, Macao S.A.R.)", - nativeName: "中文(澳門特別行政區)", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "MOP" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "de-LI", "default", { - name: "de-LI", - englishName: "German (Liechtenstein)", - nativeName: "Deutsch (Liechtenstein)", - language: "de", - numberFormat: { - ",": "'", - "NaN": "n. def.", - negativeInfinity: "-unendlich", - positiveInfinity: "+unendlich", - percent: { - pattern: ["-n%","n%"], - ",": "'" - }, - currency: { - pattern: ["$-n","$ n"], - ",": "'", - symbol: "CHF" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], - namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], - namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] - }, - months: { - names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], - namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] - }, - AM: null, - PM: null, - eras: [{"name":"n. Chr.","start":null,"offset":0}], - patterns: { - d: "dd.MM.yyyy", - D: "dddd, d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd, d. MMMM yyyy HH:mm", - F: "dddd, d. MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-NZ", "default", { - name: "en-NZ", - englishName: "English (New Zealand)", - nativeName: "English (New Zealand)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - patterns: { - d: "d/MM/yyyy", - D: "dddd, d MMMM yyyy", - f: "dddd, d MMMM yyyy h:mm tt", - F: "dddd, d MMMM yyyy h:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-CR", "default", { - name: "es-CR", - englishName: "Spanish (Costa Rica)", - nativeName: "Español (Costa Rica)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - ",": ".", - ".": ",", - symbol: "₡" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-LU", "default", { - name: "fr-LU", - englishName: "French (Luxembourg)", - nativeName: "français (Luxembourg)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bs-Latn-BA", "default", { - name: "bs-Latn-BA", - englishName: "Bosnian (Latin, Bosnia and Herzegovina)", - nativeName: "bosanski (Bosna i Hercegovina)", - language: "bs-Latn", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "smj-SE", "default", { - name: "smj-SE", - englishName: "Sami, Lule (Sweden)", - nativeName: "julevusámegiella (Svierik)", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], - namesShort: ["á","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-MA", "default", { - name: "ar-MA", - englishName: "Arabic (Morocco)", - nativeName: "العربية (المملكة المغربية)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.م.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -Globalize.addCultureInfo( "en-IE", "default", { - name: "en-IE", - englishName: "English (Ireland)", - nativeName: "English (Ireland)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - AM: null, - PM: null, - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-PA", "default", { - name: "es-PA", - englishName: "Spanish (Panama)", - nativeName: "Español (Panamá)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - symbol: "B/." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "fr-MC", "default", { - name: "fr-MC", - englishName: "French (Monaco)", - nativeName: "français (Principauté de Monaco)", - language: "fr", - numberFormat: { - ",": " ", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: null, - PM: null, - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd d MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dddd d MMMM yyyy HH:mm", - F: "dddd d MMMM yyyy HH:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Latn-BA", "default", { - name: "sr-Latn-BA", - englishName: "Serbian (Latin, Bosnia and Herzegovina)", - nativeName: "srpski (Bosna i Hercegovina)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sma-NO", "default", { - name: "sma-NO", - englishName: "Sami, Southern (Norway)", - nativeName: "åarjelsaemiengiele (Nöörje)", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-%n","%n"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-TN", "default", { - name: "ar-TN", - englishName: "Arabic (Tunisia)", - nativeName: "العربية (تونس)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ت.\u200f" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MM/yyyy H:mm", - F: "dd/MM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd/MMMM/yyyy H:mm", - F: "dd/MMMM/yyyy H:mm:ss", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, MMMM dd, yyyy H:mm", - F: "dddd, MMMM dd, yyyy H:mm:ss" - } - } - } -}); - -Globalize.addCultureInfo( "en-ZA", "default", { - name: "en-ZA", - englishName: "English (South Africa)", - nativeName: "English (South Africa)", - numberFormat: { - ",": " ", - percent: { - pattern: ["-n%","n%"], - ",": " " - }, - currency: { - pattern: ["$-n","$ n"], - ",": " ", - ".": ",", - symbol: "R" - } - }, - calendars: { - standard: { - patterns: { - d: "yyyy/MM/dd", - D: "dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM yyyy hh:mm tt", - F: "dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-DO", "default", { - name: "es-DO", - englishName: "Spanish (Dominican Republic)", - nativeName: "Español (República Dominicana)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - symbol: "RD$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { - name: "sr-Cyrl-BA", - englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", - nativeName: "српски (Босна и Херцеговина)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sma-SE", "default", { - name: "sma-SE", - englishName: "Sami, Southern (Sweden)", - nativeName: "åarjelsaemiengiele (Sveerje)", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-OM", "default", { - name: "ar-OM", - englishName: "Arabic (Oman)", - nativeName: "العربية (عمان)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "ر.ع.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-JM", "default", { - name: "en-JM", - englishName: "English (Jamaica)", - nativeName: "English (Jamaica)", - numberFormat: { - currency: { - pattern: ["-$n","$n"], - symbol: "J$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "es-VE", "default", { - name: "es-VE", - englishName: "Spanish (Bolivarian Republic of Venezuela)", - nativeName: "Español (Republica Bolivariana de Venezuela)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": ".", - ".": ",", - symbol: "Bs. F." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { - name: "bs-Cyrl-BA", - englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", - nativeName: "босански (Босна и Херцеговина)", - language: "bs-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "sms-FI", "default", { - name: "sms-FI", - englishName: "Sami, Skolt (Finland)", - nativeName: "sääm´ǩiõll (Lää´ddjânnam)", - language: "sms", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], - namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], - namesShort: ["p","v","m","s","n","p","s"] - }, - months: { - names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - monthsGenitive: { - names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-YE", "default", { - name: "ar-YE", - englishName: "Arabic (Yemen)", - nativeName: "العربية (اليمن)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.ي.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-029", "default", { - name: "en-029", - englishName: "English (Caribbean)", - nativeName: "English (Caribbean)", - numberFormat: { - currency: { - pattern: ["-$n","$n"] - } - }, - calendars: { - standard: { - firstDay: 1, - patterns: { - d: "MM/dd/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-CO", "default", { - name: "es-CO", - englishName: "Spanish (Colombia)", - nativeName: "Español (Colombia)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Latn-RS", "default", { - name: "sr-Latn-RS", - englishName: "Serbian (Latin, Serbia)", - nativeName: "srpski (Srbija)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "smn-FI", "default", { - name: "smn-FI", - englishName: "Sami, Inari (Finland)", - nativeName: "sämikielâ (Suomâ)", - language: "smn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], - namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], - namesShort: ["p","v","m","k","t","v","l"] - }, - months: { - names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], - namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-SY", "default", { - name: "ar-SY", - englishName: "Arabic (Syria)", - nativeName: "العربية (سوريا)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.س.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-BZ", "default", { - name: "en-BZ", - englishName: "English (Belize)", - nativeName: "English (Belize)", - numberFormat: { - currency: { - groupSizes: [3,0], - symbol: "BZ$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd MMMM yyyy hh:mm tt", - F: "dddd, dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-PE", "default", { - name: "es-PE", - englishName: "Spanish (Peru)", - nativeName: "Español (Perú)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["$ -n","$ n"], - symbol: "S/." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { - name: "sr-Cyrl-RS", - englishName: "Serbian (Cyrillic, Serbia)", - nativeName: "српски (Србија)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-JO", "default", { - name: "ar-JO", - englishName: "Arabic (Jordan)", - nativeName: "العربية (الأردن)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ا.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-TT", "default", { - name: "en-TT", - englishName: "English (Trinidad and Tobago)", - nativeName: "English (Trinidad y Tobago)", - numberFormat: { - currency: { - groupSizes: [3,0], - symbol: "TT$" - } - }, - calendars: { - standard: { - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd MMMM yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd MMMM yyyy hh:mm tt", - F: "dddd, dd MMMM yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-AR", "default", { - name: "es-AR", - englishName: "Spanish (Argentina)", - nativeName: "Español (Argentina)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["$-n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Latn-ME", "default", { - name: "sr-Latn-ME", - englishName: "Serbian (Latin, Montenegro)", - nativeName: "srpski (Crna Gora)", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-LB", "default", { - name: "ar-LB", - englishName: "Arabic (Lebanon)", - nativeName: "العربية (لبنان)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ل.ل.\u200f" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 1, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_TransliteratedEnglish: { - name: "Gregorian_TransliteratedEnglish", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["أ","ا","ث","أ","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 1, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-ZW", "default", { - name: "en-ZW", - englishName: "English (Zimbabwe)", - nativeName: "English (Zimbabwe)", - numberFormat: { - currency: { - symbol: "Z$" - } - } -}); - -Globalize.addCultureInfo( "es-EC", "default", { - name: "es-EC", - englishName: "Spanish (Ecuador)", - nativeName: "Español (Ecuador)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { - name: "sr-Cyrl-ME", - englishName: "Serbian (Cyrillic, Montenegro)", - nativeName: "српски (Црна Гора)", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-KW", "default", { - name: "ar-KW", - englishName: "Arabic (Kuwait)", - nativeName: "العربية (الكويت)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ك.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-PH", "default", { - name: "en-PH", - englishName: "English (Republic of the Philippines)", - nativeName: "English (Philippines)", - numberFormat: { - currency: { - symbol: "Php" - } - } -}); - -Globalize.addCultureInfo( "es-CL", "default", { - name: "es-CL", - englishName: "Spanish (Chile)", - nativeName: "Español (Chile)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-$ n","$ n"], - ",": ".", - ".": "," - } - }, - calendars: { - standard: { - "/": "-", - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: null, - PM: null, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd-MM-yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", - F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-AE", "default", { - name: "ar-AE", - englishName: "Arabic (U.A.E.)", - nativeName: "العربية (الإمارات العربية المتحدة)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "د.إ.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "es-UY", "default", { - name: "es-UY", - englishName: "Spanish (Uruguay)", - nativeName: "Español (Uruguay)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$U" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-BH", "default", { - name: "ar-BH", - englishName: "Arabic (Bahrain)", - nativeName: "العربية (البحرين)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - decimals: 3, - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - percent: { - decimals: 3 - }, - currency: { - pattern: ["$n-","$ n"], - decimals: 3, - symbol: "د.ب.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "es-PY", "default", { - name: "es-PY", - englishName: "Spanish (Paraguay)", - nativeName: "Español (Paraguay)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "Gs" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "ar-QA", "default", { - name: "ar-QA", - englishName: "Arabic (Qatar)", - nativeName: "العربية (قطر)", - language: "ar", - isRTL: true, - numberFormat: { - pattern: ["n-"], - "NaN": "ليس برقم", - negativeInfinity: "-لا نهاية", - positiveInfinity: "+لا نهاية", - currency: { - pattern: ["$n-","$ n"], - symbol: "ر.ق.\u200f" - } - }, - calendars: { - standard: { - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - patterns: { - d: "dd/MM/yyyy", - D: "dd MMMM, yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd MMMM, yyyy hh:mm tt", - F: "dd MMMM, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - UmAlQura: { - name: "UmAlQura", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MMMM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MMMM/yyyy hh:mm tt", - F: "dd/MMMM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - _yearInfo: [ - // MonthLengthFlags, Gregorian Date - [746, -2198707200000], - [1769, -2168121600000], - [3794, -2137449600000], - [3748, -2106777600000], - [3402, -2076192000000], - [2710, -2045606400000], - [1334, -2015020800000], - [2741, -1984435200000], - [3498, -1953763200000], - [2980, -1923091200000], - [2889, -1892505600000], - [2707, -1861920000000], - [1323, -1831334400000], - [2647, -1800748800000], - [1206, -1770076800000], - [2741, -1739491200000], - [1450, -1708819200000], - [3413, -1678233600000], - [3370, -1647561600000], - [2646, -1616976000000], - [1198, -1586390400000], - [2397, -1555804800000], - [748, -1525132800000], - [1749, -1494547200000], - [1706, -1463875200000], - [1365, -1433289600000], - [1195, -1402704000000], - [2395, -1372118400000], - [698, -1341446400000], - [1397, -1310860800000], - [2994, -1280188800000], - [1892, -1249516800000], - [1865, -1218931200000], - [1621, -1188345600000], - [683, -1157760000000], - [1371, -1127174400000], - [2778, -1096502400000], - [1748, -1065830400000], - [3785, -1035244800000], - [3474, -1004572800000], - [3365, -973987200000], - [2637, -943401600000], - [685, -912816000000], - [1389, -882230400000], - [2922, -851558400000], - [2898, -820886400000], - [2725, -790300800000], - [2635, -759715200000], - [1175, -729129600000], - [2359, -698544000000], - [694, -667872000000], - [1397, -637286400000], - [3434, -606614400000], - [3410, -575942400000], - [2710, -545356800000], - [2349, -514771200000], - [605, -484185600000], - [1245, -453600000000], - [2778, -422928000000], - [1492, -392256000000], - [3497, -361670400000], - [3410, -330998400000], - [2730, -300412800000], - [1238, -269827200000], - [2486, -239241600000], - [884, -208569600000], - [1897, -177984000000], - [1874, -147312000000], - [1701, -116726400000], - [1355, -86140800000], - [2731, -55555200000], - [1370, -24883200000], - [2773, 5702400000], - [3538, 36374400000], - [3492, 67046400000], - [3401, 97632000000], - [2709, 128217600000], - [1325, 158803200000], - [2653, 189388800000], - [1370, 220060800000], - [2773, 250646400000], - [1706, 281318400000], - [1685, 311904000000], - [1323, 342489600000], - [2647, 373075200000], - [1198, 403747200000], - [2422, 434332800000], - [1388, 465004800000], - [2901, 495590400000], - [2730, 526262400000], - [2645, 556848000000], - [1197, 587433600000], - [2397, 618019200000], - [730, 648691200000], - [1497, 679276800000], - [3506, 709948800000], - [2980, 740620800000], - [2890, 771206400000], - [2645, 801792000000], - [693, 832377600000], - [1397, 862963200000], - [2922, 893635200000], - [3026, 924307200000], - [3012, 954979200000], - [2953, 985564800000], - [2709, 1016150400000], - [1325, 1046736000000], - [1453, 1077321600000], - [2922, 1107993600000], - [1748, 1138665600000], - [3529, 1169251200000], - [3474, 1199923200000], - [2726, 1230508800000], - [2390, 1261094400000], - [686, 1291680000000], - [1389, 1322265600000], - [874, 1352937600000], - [2901, 1383523200000], - [2730, 1414195200000], - [2381, 1444780800000], - [1181, 1475366400000], - [2397, 1505952000000], - [698, 1536624000000], - [1461, 1567209600000], - [1450, 1597881600000], - [3413, 1628467200000], - [2714, 1659139200000], - [2350, 1689724800000], - [622, 1720310400000], - [1373, 1750896000000], - [2778, 1781568000000], - [1748, 1812240000000], - [1701, 1842825600000], - [0, 1873411200000] - ], - minDate: -2198707200000, - maxDate: 1873411199999, - toGregorian: function(hyear, hmonth, hday) { - var days = hday - 1, - gyear = hyear - 1318; - if (gyear < 0 || gyear >= this._yearInfo.length) return null; - var info = this._yearInfo[gyear], - gdate = new Date(info[1]), - monthLength = info[0]; - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the gregorian date in the same timezone, - // not what the gregorian date was at GMT time, so we adjust for the offset. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - for (var i = 0; i < hmonth; i++) { - days += 29 + (monthLength & 1); - monthLength = monthLength >> 1; - } - gdate.setDate(gdate.getDate() + days); - return gdate; - }, - fromGregorian: function(gdate) { - // Date's ticks in javascript are always from the GMT time, - // but we are interested in the hijri date in the same timezone, - // not what the hijri date was at GMT time, so we adjust for the offset. - var ticks = gdate - gdate.getTimezoneOffset() * 60000; - if (ticks < this.minDate || ticks > this.maxDate) return null; - var hyear = 0, - hmonth = 1; - // find the earliest gregorian date in the array that is greater than or equal to the given date - while (ticks > this._yearInfo[++hyear][1]) { } - if (ticks !== this._yearInfo[hyear][1]) { - hyear--; - } - var info = this._yearInfo[hyear], - // how many days has it been since the date we found in the array? - // 86400000 = ticks per day - days = Math.floor((ticks - info[1]) / 86400000), - monthLength = info[0]; - hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N - // now increment day/month based on the total days, considering - // how many days are in each month. We cannot run past the year - // mark since we would have found a different array entry in that case. - var daysInMonth = 29 + (monthLength & 1); - while (days >= daysInMonth) { - days -= daysInMonth; - monthLength = monthLength >> 1; - daysInMonth = 29 + (monthLength & 1); - hmonth++; - } - // remaining days is less than is in one month, thus is the day of the month we landed on - // hmonth-1 because in javascript months are zero based, stay consistent with that. - return [hyear, hmonth - 1, days + 1]; - } - } - }, - Hijri: { - name: "Hijri", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], - namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"بعد الهجرة","start":null,"offset":0}], - twoDigitYearMax: 1451, - patterns: { - d: "dd/MM/yy", - D: "dd/MM/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dd/MM/yyyy hh:mm tt", - F: "dd/MM/yyyy hh:mm:ss tt", - M: "dd MMMM" - }, - convert: { - // Adapted to Script from System.Globalization.HijriCalendar - ticks1970: 62135596800000, - // number of days leading up to each month - monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], - minDate: -42521673600000, - maxDate: 253402300799999, - // The number of days to add or subtract from the calendar to accommodate the variances - // in the start and the end of Ramadan and to accommodate the date difference between - // countries/regions. May be dynamically adjusted based on user preference, but should - // remain in the range of -2 to 2, inclusive. - hijriAdjustment: 0, - toGregorian: function(hyear, hmonth, hday) { - var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; - // 86400000 = ticks per day - var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); - // adjust for timezone, because we are interested in the gregorian date for the same timezone - // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base - // date in the current timezone. - gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); - return gdate; - }, - fromGregorian: function(gdate) { - if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; - var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, - daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; - // very particular formula determined by someone smart, adapted from the server-side implementation. - // it approximates the hijri year. - var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, - absDays = this.daysToYear(hyear), - daysInYear = this.isLeapYear(hyear) ? 355 : 354; - // hyear is just approximate, it may need adjustment up or down by 1. - if (daysSinceJan0101 < absDays) { - hyear--; - absDays -= daysInYear; - } - else if (daysSinceJan0101 === absDays) { - hyear--; - absDays = this.daysToYear(hyear); - } - else { - if (daysSinceJan0101 > (absDays + daysInYear)) { - absDays += daysInYear; - hyear++; - } - } - // determine month by looking at how many days into the hyear we are - // monthDays contains the number of days up to each month. - hmonth = 0; - var daysIntoYear = daysSinceJan0101 - absDays; - while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { - hmonth++; - } - hmonth--; - hday = daysIntoYear - this.monthDays[hmonth]; - return [hyear, hmonth, hday]; - }, - daysToYear: function(year) { - // calculates how many days since Jan 1, 0001 - var yearsToYear30 = Math.floor((year - 1) / 30) * 30, - yearsInto30 = year - yearsToYear30 - 1, - days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; - while (yearsInto30 > 0) { - days += (this.isLeapYear(yearsInto30) ? 355 : 354); - yearsInto30--; - } - return days; - }, - isLeapYear: function(year) { - return ((((year * 11) + 14) % 30) < 11); - } - } - }, - Gregorian_MiddleEastFrench: { - name: "Gregorian_MiddleEastFrench", - firstDay: 6, - days: { - names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], - namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], - namesShort: ["di","lu","ma","me","je","ve","sa"] - }, - months: { - names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], - namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"ap. J.-C.","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt", - M: "dd MMMM" - } - }, - Gregorian_Arabic: { - name: "Gregorian_Arabic", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], - namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - }, - Gregorian_TransliteratedFrench: { - name: "Gregorian_TransliteratedFrench", - firstDay: 6, - days: { - names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], - namesShort: ["ح","ن","ث","ر","خ","ج","س"] - }, - months: { - names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], - namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] - }, - AM: ["ص","ص","ص"], - PM: ["م","م","م"], - eras: [{"name":"م","start":null,"offset":0}], - patterns: { - d: "MM/dd/yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, MMMM dd, yyyy hh:mm tt", - F: "dddd, MMMM dd, yyyy hh:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "en-IN", "default", { - name: "en-IN", - englishName: "English (India)", - nativeName: "English (India)", - numberFormat: { - groupSizes: [3,2], - percent: { - groupSizes: [3,2] - }, - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,2], - symbol: "Rs." - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "dd MMMM yyyy HH:mm", - F: "dd MMMM yyyy HH:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "es-BO", "default", { - name: "es-BO", - englishName: "Spanish (Bolivia)", - nativeName: "Español (Bolivia)", - language: "es", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["($ n)","$ n"], - ",": ".", - ".": ",", - symbol: "$b" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-MY", "default", { - name: "en-MY", - englishName: "English (Malaysia)", - nativeName: "English (Malaysia)", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "RM" - } - }, - calendars: { - standard: { - days: { - namesShort: ["S","M","T","W","T","F","S"] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM, yyyy", - f: "dddd, d MMMM, yyyy h:mm tt", - F: "dddd, d MMMM, yyyy h:mm:ss tt", - M: "d MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "es-SV", "default", { - name: "es-SV", - englishName: "Spanish (El Salvador)", - nativeName: "Español (El Salvador)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "en-SG", "default", { - name: "en-SG", - englishName: "English (Singapore)", - nativeName: "English (Singapore)", - numberFormat: { - percent: { - pattern: ["-n%","n%"] - } - }, - calendars: { - standard: { - days: { - namesShort: ["S","M","T","W","T","F","S"] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd, d MMMM, yyyy", - f: "dddd, d MMMM, yyyy h:mm tt", - F: "dddd, d MMMM, yyyy h:mm:ss tt", - M: "d MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "es-HN", "default", { - name: "es-HN", - englishName: "Spanish (Honduras)", - nativeName: "Español (Honduras)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["$ -n","$ n"], - groupSizes: [3,0], - symbol: "L." - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-NI", "default", { - name: "es-NI", - englishName: "Spanish (Nicaragua)", - nativeName: "Español (Nicaragua)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - groupSizes: [3,0], - symbol: "C$" - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-PR", "default", { - name: "es-PR", - englishName: "Spanish (Puerto Rico)", - nativeName: "Español (Puerto Rico)", - language: "es", - numberFormat: { - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - currency: { - pattern: ["($ n)","$ n"], - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sá"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - AM: ["a.m.","a.m.","A.M."], - PM: ["p.m.","p.m.","P.M."], - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - d: "dd/MM/yyyy", - D: "dddd, dd' de 'MMMM' de 'yyyy", - t: "hh:mm tt", - T: "hh:mm:ss tt", - f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", - F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", - M: "dd MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "es-US", "default", { - name: "es-US", - englishName: "Spanish (United States)", - nativeName: "Español (Estados Unidos)", - language: "es", - numberFormat: { - groupSizes: [3,0], - "NaN": "NeuN", - negativeInfinity: "-Infinito", - positiveInfinity: "Infinito", - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], - namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], - namesShort: ["do","lu","ma","mi","ju","vi","sa"] - }, - months: { - names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], - namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] - }, - eras: [{"name":"d.C.","start":null,"offset":0}], - patterns: { - M: "dd' de 'MMMM", - Y: "MMMM' de 'yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bs-Cyrl", "default", { - name: "bs-Cyrl", - englishName: "Bosnian (Cyrillic)", - nativeName: "босански", - language: "bs-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "КМ" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["н","п","у","с","ч","п","с"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "bs-Latn", "default", { - name: "bs-Latn", - englishName: "Bosnian (Latin)", - nativeName: "bosanski", - language: "bs-Latn", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Cyrl", "default", { - name: "sr-Cyrl", - englishName: "Serbian (Cyrillic)", - nativeName: "српски", - language: "sr-Cyrl", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-бесконачност", - positiveInfinity: "+бесконачност", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Дин." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], - namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], - namesShort: ["не","по","ут","ср","че","пе","су"] - }, - months: { - names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], - namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] - }, - AM: null, - PM: null, - eras: [{"name":"н.е.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr-Latn", "default", { - name: "sr-Latn", - englishName: "Serbian (Latin)", - nativeName: "srpski", - language: "sr-Latn", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "smn", "default", { - name: "smn", - englishName: "Sami (Inari)", - nativeName: "sämikielâ", - language: "smn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], - namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], - namesShort: ["p","v","m","k","t","v","l"] - }, - months: { - names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], - namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "az-Cyrl", "default", { - name: "az-Cyrl", - englishName: "Azeri (Cyrillic)", - nativeName: "Азәрбајҹан дили", - language: "az-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "ман." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], - namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], - namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] - }, - months: { - names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], - namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sms", "default", { - name: "sms", - englishName: "Sami (Skolt)", - nativeName: "sääm´ǩiõll", - language: "sms", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], - namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], - namesShort: ["p","v","m","s","n","p","s"] - }, - months: { - names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - monthsGenitive: { - names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], - namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "MMMM d'. p. 'yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "MMMM d'. p. 'yyyy H:mm", - F: "MMMM d'. p. 'yyyy H:mm:ss", - M: "MMMM d'. p. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zh", "default", { - name: "zh", - englishName: "Chinese", - nativeName: "中文", - language: "zh", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "nn", "default", { - name: "nn", - englishName: "Norwegian (Nynorsk)", - nativeName: "norsk (nynorsk)", - language: "nn", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], - namesAbbr: ["sø","må","ty","on","to","fr","la"], - namesShort: ["sø","må","ty","on","to","fr","la"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "bs", "default", { - name: "bs", - englishName: "Bosnian", - nativeName: "bosanski", - language: "bs", - numberFormat: { - ",": ".", - ".": ",", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "KM" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "az-Latn", "default", { - name: "az-Latn", - englishName: "Azeri (Latin)", - nativeName: "Azərbaycan\xadılı", - language: "az-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "man." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], - namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], - namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] - }, - months: { - names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - monthsGenitive: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - M: "d MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sma", "default", { - name: "sma", - englishName: "Sami (Southern)", - nativeName: "åarjelsaemiengiele", - language: "sma", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], - namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], - namesShort: ["a","m","d","g","d","b","l"] - }, - months: { - names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - monthsGenitive: { - names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], - namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "uz-Cyrl", "default", { - name: "uz-Cyrl", - englishName: "Uzbek (Cyrillic)", - nativeName: "Ўзбек", - language: "uz-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": " ", - ".": ",", - symbol: "сўм" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], - namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], - namesShort: ["я","д","с","ч","п","ж","ш"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "yyyy 'йил' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'йил' d-MMMM HH:mm", - F: "yyyy 'йил' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "mn-Cyrl", "default", { - name: "mn-Cyrl", - englishName: "Mongolian (Cyrillic)", - nativeName: "Монгол хэл", - language: "mn-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n$","n$"], - ",": " ", - ".": ",", - symbol: "₮" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], - namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], - namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] - }, - months: { - names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - monthsGenitive: { - names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], - namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] - }, - AM: null, - PM: null, - patterns: { - d: "yy.MM.dd", - D: "yyyy 'оны' MMMM d", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy 'оны' MMMM d H:mm", - F: "yyyy 'оны' MMMM d H:mm:ss", - M: "d MMMM", - Y: "yyyy 'он' MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "iu-Cans", "default", { - name: "iu-Cans", - englishName: "Inuktitut (Syllabics)", - nativeName: "ᐃᓄᒃᑎᑐᑦ", - language: "iu-Cans", - numberFormat: { - groupSizes: [3,0], - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], - namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], - namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] - }, - months: { - names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], - namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] - }, - patterns: { - d: "d/M/yyyy", - D: "dddd,MMMM dd,yyyy", - f: "dddd,MMMM dd,yyyy h:mm tt", - F: "dddd,MMMM dd,yyyy h:mm:ss tt", - Y: "MMMM,yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zh-Hant", "default", { - name: "zh-Hant", - englishName: "Chinese (Traditional)", - nativeName: "中文(繁體)", - language: "zh-Hant", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "nb", "default", { - name: "nb", - englishName: "Norwegian (Bokmål)", - nativeName: "norsk (bokmål)", - language: "nb", - numberFormat: { - ",": " ", - ".": ",", - negativeInfinity: "-INF", - positiveInfinity: "INF", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["$ -n","$ n"], - ",": " ", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], - namesAbbr: ["sø","ma","ti","on","to","fr","lø"], - namesShort: ["sø","ma","ti","on","to","fr","lø"] - }, - months: { - names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], - namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yyyy", - D: "d. MMMM yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "d. MMMM yyyy HH:mm", - F: "d. MMMM yyyy HH:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "sr", "default", { - name: "sr", - englishName: "Serbian", - nativeName: "srpski", - language: "sr", - numberFormat: { - ",": ".", - ".": ",", - negativeInfinity: "-beskonačnost", - positiveInfinity: "+beskonačnost", - percent: { - pattern: ["-n%","n%"], - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "Din." - } - }, - calendars: { - standard: { - "/": ".", - firstDay: 1, - days: { - names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], - namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], - namesShort: ["ne","po","ut","sr","če","pe","su"] - }, - months: { - names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], - namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"n.e.","start":null,"offset":0}], - patterns: { - d: "d.M.yyyy", - D: "d. MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d. MMMM yyyy H:mm", - F: "d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "tg-Cyrl", "default", { - name: "tg-Cyrl", - englishName: "Tajik (Cyrillic)", - nativeName: "Тоҷикӣ", - language: "tg-Cyrl", - numberFormat: { - ",": " ", - ".": ",", - groupSizes: [3,0], - negativeInfinity: "-бесконечность", - positiveInfinity: "бесконечность", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - groupSizes: [3,0], - ",": " ", - ".": ";", - symbol: "т.р." - } - }, - calendars: { - standard: { - "/": ".", - days: { - names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], - namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], - namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] - }, - months: { - names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - monthsGenitive: { - names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], - namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd.MM.yy", - D: "d MMMM yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "d MMMM yyyy H:mm", - F: "d MMMM yyyy H:mm:ss", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "dsb", "default", { - name: "dsb", - englishName: "Lower Sorbian", - nativeName: "dolnoserbšćina", - language: "dsb", - numberFormat: { - ",": ".", - ".": ",", - "NaN": "njedefinowane", - negativeInfinity: "-njekońcne", - positiveInfinity: "+njekońcne", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "€" - } - }, - calendars: { - standard: { - "/": ". ", - firstDay: 1, - days: { - names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], - namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], - namesShort: ["n","p","w","s","s","p","s"] - }, - months: { - names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - monthsGenitive: { - names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], - namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] - }, - AM: null, - PM: null, - eras: [{"name":"po Chr.","start":null,"offset":0}], - patterns: { - d: "d. M. yyyy", - D: "dddd, 'dnja' d. MMMM yyyy", - t: "H.mm 'goź.'", - T: "H:mm:ss", - f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", - F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", - M: "d. MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "smj", "default", { - name: "smj", - englishName: "Sami (Lule)", - nativeName: "julevusámegiella", - language: "smj", - numberFormat: { - ",": " ", - ".": ",", - percent: { - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - ",": ".", - ".": ",", - symbol: "kr" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 1, - days: { - names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], - namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], - namesShort: ["á","m","d","g","d","b","l"] - }, - months: { - names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - monthsGenitive: { - names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], - namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] - }, - AM: null, - PM: null, - patterns: { - d: "yyyy-MM-dd", - D: "MMMM d'. b. 'yyyy", - t: "HH:mm", - T: "HH:mm:ss", - f: "MMMM d'. b. 'yyyy HH:mm", - F: "MMMM d'. b. 'yyyy HH:mm:ss", - M: "MMMM d'. b. '", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "uz-Latn", "default", { - name: "uz-Latn", - englishName: "Uzbek (Latin)", - nativeName: "U'zbek", - language: "uz-Latn", - numberFormat: { - ",": " ", - ".": ",", - percent: { - pattern: ["-n%","n%"], - ",": " ", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - decimals: 0, - ",": " ", - ".": ",", - symbol: "so'm" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], - namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], - namesShort: ["ya","d","s","ch","p","j","sh"] - }, - months: { - names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], - namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd/MM yyyy", - D: "yyyy 'yil' d-MMMM", - t: "HH:mm", - T: "HH:mm:ss", - f: "yyyy 'yil' d-MMMM HH:mm", - F: "yyyy 'yil' d-MMMM HH:mm:ss", - M: "d-MMMM", - Y: "MMMM yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "mn-Mong", "default", { - name: "mn-Mong", - englishName: "Mongolian (Traditional Mongolian)", - nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", - language: "mn-Mong", - numberFormat: { - groupSizes: [3,0], - "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", - negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", - positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", - percent: { - pattern: ["-n%","n%"], - groupSizes: [3,0] - }, - currency: { - pattern: ["$-n","$n"], - groupSizes: [3,0], - symbol: "¥" - } - }, - calendars: { - standard: { - firstDay: 1, - days: { - names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], - namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] - }, - months: { - names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], - namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] - }, - AM: null, - PM: null, - eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", - F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", - M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", - Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" - } - } - } -}); - -Globalize.addCultureInfo( "iu-Latn", "default", { - name: "iu-Latn", - englishName: "Inuktitut (Latin)", - nativeName: "Inuktitut", - language: "iu-Latn", - numberFormat: { - groupSizes: [3,0], - percent: { - groupSizes: [3,0] - } - }, - calendars: { - standard: { - days: { - names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], - namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], - namesShort: ["N","N","A","P","S","T","S"] - }, - months: { - names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], - namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] - }, - patterns: { - d: "d/MM/yyyy", - D: "ddd, MMMM dd,yyyy", - f: "ddd, MMMM dd,yyyy h:mm tt", - F: "ddd, MMMM dd,yyyy h:mm:ss tt" - } - } - } -}); - -Globalize.addCultureInfo( "tzm-Latn", "default", { - name: "tzm-Latn", - englishName: "Tamazight (Latin)", - nativeName: "Tamazight", - language: "tzm-Latn", - numberFormat: { - pattern: ["n-"], - ",": ".", - ".": ",", - "NaN": "Non Numérique", - negativeInfinity: "-Infini", - positiveInfinity: "+Infini", - percent: { - ",": ".", - ".": "," - }, - currency: { - pattern: ["-n $","n $"], - symbol: "DZD" - } - }, - calendars: { - standard: { - "/": "-", - firstDay: 6, - days: { - names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], - namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], - namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] - }, - months: { - names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], - namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] - }, - AM: null, - PM: null, - patterns: { - d: "dd-MM-yyyy", - D: "dd MMMM, yyyy", - t: "H:mm", - T: "H:mm:ss", - f: "dd MMMM, yyyy H:mm", - F: "dd MMMM, yyyy H:mm:ss", - M: "dd MMMM" - } - } - } -}); - -Globalize.addCultureInfo( "ha-Latn", "default", { - name: "ha-Latn", - englishName: "Hausa (Latin)", - nativeName: "Hausa", - language: "ha-Latn", - numberFormat: { - currency: { - pattern: ["$-n","$ n"], - symbol: "N" - } - }, - calendars: { - standard: { - days: { - names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], - namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], - namesShort: ["L","L","T","L","A","J","A"] - }, - months: { - names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], - namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] - }, - AM: ["Safe","safe","SAFE"], - PM: ["Yamma","yamma","YAMMA"], - eras: [{"name":"AD","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy" - } - } - } -}); - -Globalize.addCultureInfo( "zh-CHS", "default", { - name: "zh-CHS", - englishName: "Chinese (Simplified) Legacy", - nativeName: "中文(简体) 旧版", - language: "zh-CHS", - numberFormat: { - "NaN": "非数字", - negativeInfinity: "负无穷大", - positiveInfinity: "正无穷大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - pattern: ["$-n","$n"], - symbol: "¥" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "yyyy/M/d", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -Globalize.addCultureInfo( "zh-CHT", "default", { - name: "zh-CHT", - englishName: "Chinese (Traditional) Legacy", - nativeName: "中文(繁體) 舊版", - language: "zh-CHT", - numberFormat: { - "NaN": "非數字", - negativeInfinity: "負無窮大", - positiveInfinity: "正無窮大", - percent: { - pattern: ["-n%","n%"] - }, - currency: { - symbol: "HK$" - } - }, - calendars: { - standard: { - days: { - names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], - namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], - namesShort: ["日","一","二","三","四","五","六"] - }, - months: { - names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], - namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] - }, - AM: ["上午","上午","上午"], - PM: ["下午","下午","下午"], - eras: [{"name":"公元","start":null,"offset":0}], - patterns: { - d: "d/M/yyyy", - D: "yyyy'年'M'月'd'日'", - t: "H:mm", - T: "H:mm:ss", - f: "yyyy'年'M'月'd'日' H:mm", - F: "yyyy'年'M'月'd'日' H:mm:ss", - M: "M'月'd'日'", - Y: "yyyy'年'M'月'" - } - } - } -}); - -}( this )); +/** + * Globalize Cultures + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar", "default", { + name: "ar", + englishName: "Arabic", + nativeName: "العربية", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "bg", "default", { + name: "bg", + englishName: "Bulgarian", + nativeName: "български", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайност", + positiveInfinity: "+ безкрайност", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], + namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], + namesShort: ["н","п","в","с","ч","п","с"] + }, + months: { + names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], + namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"след новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +Globalize.addCultureInfo( "ca", "default", { + name: "ca", + englishName: "Catalan", + nativeName: "català", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-Hans", "default", { + name: "zh-Hans", + englishName: "Chinese (Simplified)", + nativeName: "中文(简体)", + language: "zh-Hans", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "cs", "default", { + name: "cs", + englishName: "Czech", + nativeName: "čeština", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Kč" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","čt","pá","so"], + namesShort: ["ne","po","út","st","čt","pá","so"] + }, + months: { + names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "da", "default", { + name: "da", + englishName: "Danish", + nativeName: "dansk", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "de", "default", { + name: "de", + englishName: "German", + nativeName: "Deutsch", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "el", "default", { + name: "el", + englishName: "Greek", + nativeName: "Ελληνικά", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αριθμός", + negativeInfinity: "-Άπειρο", + positiveInfinity: "Άπειρο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], + namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], + namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + monthsGenitive: { + names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es", "default", { + name: "es", + englishName: "Spanish", + nativeName: "español", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fi", "default", { + name: "fi", + englishName: "Finnish", + nativeName: "suomi", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr", "default", { + name: "fr", + englishName: "French", + nativeName: "français", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "he", "default", { + name: "he", + englishName: "Hebrew", + nativeName: "עברית", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "לא מספר", + negativeInfinity: "אינסוף שלילי", + positiveInfinity: "אינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hu", "default", { + name: "hu", + englishName: "Hungarian", + nativeName: "magyar", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "is", "default", { + name: "is", + englishName: "Icelandic", + nativeName: "íslenska", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it", "default", { + name: "it", + englishName: "Italian", + nativeName: "italiano", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ja", "default", { + name: "ja", + englishName: "Japanese", + nativeName: "日本語", + language: "ja", + numberFormat: { + "NaN": "NaN (非数値)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'年'M'月'd'日' H:mm", + F: "gg y'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "gg y'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "ko", "default", { + name: "ko", + englishName: "Korean", + nativeName: "한국어", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "₩" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'년' M'월' d'일' dddd tt h:mm", + F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "yyyy'년' M'월'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", + F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "gg yyyy'년' M'월'" + } + } + } +}); + +Globalize.addCultureInfo( "nl", "default", { + name: "nl", + englishName: "Dutch", + nativeName: "Nederlands", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "no", "default", { + name: "no", + englishName: "Norwegian", + nativeName: "norsk", + language: "no", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pl", "default", { + name: "pl", + englishName: "Polish", + nativeName: "polski", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbą", + negativeInfinity: "-nieskończoność", + positiveInfinity: "+nieskończoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zł" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], + namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] + }, + months: { + names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt", "default", { + name: "pt", + englishName: "Portuguese", + nativeName: "Português", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rm", "default", { + name: "rm", + englishName: "Romansh", + nativeName: "Rumantsch", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ro", "default", { + name: "ro", + englishName: "Romanian", + nativeName: "română", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ru", "default", { + name: "ru", + englishName: "Russian", + nativeName: "русский", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], + namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + monthsGenitive: { + names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr", "default", { + name: "hr", + englishName: "Croatian", + nativeName: "hrvatski", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sk", "default", { + name: "sk", + englishName: "Slovak", + nativeName: "slovenčina", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","št","pi","so"], + namesShort: ["ne","po","ut","st","št","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sq", "default", { + name: "sq", + englishName: "Albanian", + nativeName: "shqipe", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +Globalize.addCultureInfo( "sv", "default", { + name: "sv", + englishName: "Swedish", + nativeName: "svenska", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "th", "default", { + name: "th", + englishName: "Thai", + nativeName: "ไทย", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tr", "default", { + name: "tr", + englishName: "Turkish", + nativeName: "Türkçe", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ur", "default", { + name: "ur", + englishName: "Urdu", + nativeName: "اُردو", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesShort: ["ا","پ","م","ب","ج","ج","ه"] + }, + months: { + names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +Globalize.addCultureInfo( "id", "default", { + name: "id", + englishName: "Indonesian", + nativeName: "Bahasa Indonesia", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uk", "default", { + name: "uk", + englishName: "Ukrainian", + nativeName: "українська", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежність", + positiveInfinity: "безмежність", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₴" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], + namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] + }, + monthsGenitive: { + names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], + namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' р.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' р.' H:mm", + F: "d MMMM yyyy' р.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' р.'" + } + } + } +}); + +Globalize.addCultureInfo( "be", "default", { + name: "be", + englishName: "Belarusian", + nativeName: "Беларускі", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], + namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], + namesShort: ["нд","пн","аў","ср","чц","пт","сб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + monthsGenitive: { + names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sl", "default", { + name: "sl", + englishName: "Slovenian", + nativeName: "slovenski", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskončnost", + positiveInfinity: "neskončnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], + namesShort: ["ne","po","to","sr","če","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "et", "default", { + name: "et", + englishName: "Estonian", + nativeName: "eesti", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +Globalize.addCultureInfo( "lv", "default", { + name: "lv", + englishName: "Latvian", + nativeName: "latviešu", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalība", + positiveInfinity: "bezgalība", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "lt", "default", { + name: "lt", + englishName: "Lithuanian", + nativeName: "lietuvių", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybė", + positiveInfinity: "begalybė", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], + namesShort: ["S","P","A","T","K","Pn","Š"] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "tg", "default", { + name: "tg", + englishName: "Tajik", + nativeName: "Тоҷикӣ", + language: "tg", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fa", "default", { + name: "fa", + englishName: "Persian", + nativeName: "فارسى", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "vi", "default", { + name: "vi", + englishName: "Vietnamese", + nativeName: "Tiếng Việt", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "₫" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], + namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hy", "default", { + name: "hy", + englishName: "Armenian", + nativeName: "Հայերեն", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "դր." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], + namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], + namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] + }, + months: { + names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], + namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "az", "default", { + name: "az", + englishName: "Azeri", + nativeName: "Azərbaycan\xadılı", + language: "az", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "eu", "default", { + name: "eu", + englishName: "Basque", + nativeName: "euskara", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "hsb", "default", { + name: "hsb", + englishName: "Upper Sorbian", + nativeName: "hornjoserbšćina", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónčne", + positiveInfinity: "+njekónčne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], + namesShort: ["n","p","w","s","š","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mk", "default", { + name: "mk", + englishName: "Macedonian (FYROM)", + nativeName: "македонски јазик", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], + namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], + namesShort: ["не","по","вт","ср","че","пе","са"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tn", "default", { + name: "tn", + englishName: "Setswana", + nativeName: "Setswana", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "xh", "default", { + name: "xh", + englishName: "isiXhosa", + nativeName: "isiXhosa", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zu", "default", { + name: "zu", + englishName: "isiZulu", + nativeName: "isiZulu", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "af", "default", { + name: "af", + englishName: "Afrikaans", + nativeName: "Afrikaans", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ka", "default", { + name: "ka", + englishName: "Georgian", + nativeName: "ქართული", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] + }, + months: { + names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], + namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fo", "default", { + name: "fo", + englishName: "Faroese", + nativeName: "føroyskt", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hi", "default", { + name: "hi", + englishName: "Hindi", + nativeName: "हिंदी", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mt", "default", { + name: "mt", + englishName: "Maltese", + nativeName: "Malti", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se", "default", { + name: "se", + englishName: "Sami (Northern)", + nativeName: "davvisámegiella", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ga", "default", { + name: "ga", + englishName: "Irish", + nativeName: "Gaeilge", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms", "default", { + name: "ms", + englishName: "Malay", + nativeName: "Bahasa Melayu", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kk", "default", { + name: "kk", + englishName: "Kazakh", + nativeName: "Қазақ", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], + namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], + namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ky", "default", { + name: "ky", + englishName: "Kyrgyz", + nativeName: "Кыргыз", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "сом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +Globalize.addCultureInfo( "sw", "default", { + name: "sw", + englishName: "Kiswahili", + nativeName: "Kiswahili", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +Globalize.addCultureInfo( "tk", "default", { + name: "tk", + englishName: "Turkmen", + nativeName: "türkmençe", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], + namesShort: ["D","S","Ç","P","A","Ş","Ý"] + }, + months: { + names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "uz", "default", { + name: "uz", + englishName: "Uzbek", + nativeName: "U'zbek", + language: "uz", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tt", "default", { + name: "tt", + englishName: "Tatar", + nativeName: "Татар", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn", "default", { + name: "bn", + englishName: "Bengali", + nativeName: "বাংলা", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "pa", "default", { + name: "pa", + englishName: "Punjabi", + nativeName: "ਪੰਜਾਬੀ", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰੁ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "gu", "default", { + name: "gu", + englishName: "Gujarati", + nativeName: "ગુજરાતી", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], + namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] + }, + AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], + PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "or", "default", { + name: "or", + englishName: "Oriya", + nativeName: "ଓଡ଼ିଆ", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] + }, + months: { + names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], + namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] + }, + eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ta", "default", { + name: "ta", + englishName: "Tamil", + nativeName: "தமிழ்", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], + namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], + namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], + namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "te", "default", { + name: "te", + englishName: "Telugu", + nativeName: "తెలుగు", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], + namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] + }, + months: { + names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], + namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] + }, + AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], + PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "kn", "default", { + name: "kn", + englishName: "Kannada", + nativeName: "ಕನ್ನಡ", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] + }, + AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], + PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ml", "default", { + name: "ml", + englishName: "Malayalam", + nativeName: "മലയാളം", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ക" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], + namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], + namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] + }, + months: { + names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], + namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "as", "default", { + name: "as", + englishName: "Assamese", + nativeName: "অসমীয়া", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], + namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] + }, + months: { + names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], + namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] + }, + AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +Globalize.addCultureInfo( "mr", "default", { + name: "mr", + englishName: "Marathi", + nativeName: "मराठी", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], + namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sa", "default", { + name: "sa", + englishName: "Sanskrit", + nativeName: "संस्कृत", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn", "default", { + name: "mn", + englishName: "Mongolian", + nativeName: "Монгол хэл", + language: "mn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bo", "default", { + name: "bo", + englishName: "Tibetan", + nativeName: "བོད་ཡིག", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པ།", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], + namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +Globalize.addCultureInfo( "cy", "default", { + name: "cy", + englishName: "Welsh", + nativeName: "Cymraeg", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "km", "default", { + name: "km", + englishName: "Khmer", + nativeName: "ខ្មែរ", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្ត", + positiveInfinity: "អនន្ត", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], + namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], + namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ថ្ងៃទី' dd 'ខែ' MM", + Y: "'ខែ' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "lo", "default", { + name: "lo", + englishName: "Lao", + nativeName: "ລາວ", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "₭" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], + namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["ແລງ","ແລງ","ແລງ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gl", "default", { + name: "gl", + englishName: "Galician", + nativeName: "galego", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kok", "default", { + name: "kok", + englishName: "Konkani", + nativeName: "कोंकणी", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "syr", "default", { + name: "syr", + englishName: "Syriac", + nativeName: "ܣܘܪܝܝܐ", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], + namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], + namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] + }, + months: { + names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], + namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] + }, + AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], + PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "si", "default", { + name: "si", + englishName: "Sinhala", + nativeName: "සිංහල", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], + namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], + namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], + namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] + }, + AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], + PM: ["ප.ව.","ප.ව.","ප.ව."], + eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", + f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu", "default", { + name: "iu", + englishName: "Inuktitut", + nativeName: "Inuktitut", + language: "iu", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "am", "default", { + name: "am", + englishName: "Amharic", + nativeName: "አማርኛ", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], + namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd '፣' MMMM d 'ቀን' yyyy", + f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tzm", "default", { + name: "tzm", + englishName: "Tamazight", + nativeName: "Tamazight", + language: "tzm", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ne", "default", { + name: "ne", + englishName: "Nepali", + nativeName: "नेपाली", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रु" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], + namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], + namesShort: ["आ","सो","म","बु","बि","शु","श"] + }, + months: { + names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], + namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलुकी","बेलुकी","बेलुकी"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fy", "default", { + name: "fy", + englishName: "Frisian", + nativeName: "Frysk", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ps", "default", { + name: "ps", + englishName: "Pashto", + nativeName: "پښتو", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "،", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "،", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "٬", + ".": "٫", + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fil", "default", { + name: "fil", + englishName: "Filipino", + nativeName: "Filipino", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "dv", "default", { + name: "dv", + englishName: "Divehi", + nativeName: "ދިވެހިބަސް", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "ރ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], + namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], + namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"މީލާދީ","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha", "default", { + name: "ha", + englishName: "Hausa", + nativeName: "Hausa", + language: "ha", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "yo", "default", { + name: "yo", + englishName: "Yoruba", + nativeName: "Yoruba", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz", "default", { + name: "quz", + englishName: "Quechua", + nativeName: "runasimi", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nso", "default", { + name: "nso", + englishName: "Sesotho sa Leboa", + nativeName: "Sesotho sa Leboa", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ba", "default", { + name: "ba", + englishName: "Bashkir", + nativeName: "Башҡорт", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "һ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "lb", "default", { + name: "lb", + englishName: "Luxembourgish", + nativeName: "Lëtzebuergesch", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kl", "default", { + name: "kl", + englishName: "Greenlandic", + nativeName: "kalaallisut", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ig", "default", { + name: "ig", + englishName: "Igbo", + nativeName: "Igbo", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ii", "default", { + name: "ii", + englishName: "Yi", + nativeName: "ꆈꌠꁱꂷ", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭꌐꀋꉆ", + positiveInfinity: "ꈤꇁꑖꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], + namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], + namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", + M: "M'ꆪ' d'ꑍ'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +Globalize.addCultureInfo( "arn", "default", { + name: "arn", + englishName: "Mapudungun", + nativeName: "Mapudungun", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "moh", "default", { + name: "moh", + englishName: "Mohawk", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +Globalize.addCultureInfo( "br", "default", { + name: "br", + englishName: "Breton", + nativeName: "brezhoneg", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ug", "default", { + name: "ug", + englishName: "Uyghur", + nativeName: "ئۇيغۇرچە", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], + namesShort: ["ي","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mi", "default", { + name: "mi", + englishName: "Maori", + nativeName: "Reo Māori", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], + namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +Globalize.addCultureInfo( "oc", "default", { + name: "oc", + englishName: "Occitan", + nativeName: "Occitan", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "co", "default", { + name: "co", + englishName: "Corsican", + nativeName: "Corsu", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gsw", "default", { + name: "gsw", + englishName: "Alsatian", + nativeName: "Elsässisch", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sah", "default", { + name: "sah", + englishName: "Yakut", + nativeName: "саха", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "с." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], + namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + monthsGenitive: { + names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'с.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'с.' H:mm", + F: "MMMM d yyyy 'с.' H:mm:ss", + Y: "MMMM yyyy 'с.'" + } + } + } +}); + +Globalize.addCultureInfo( "qut", "default", { + name: "qut", + englishName: "K'iche", + nativeName: "K'iche", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rw", "default", { + name: "rw", + englishName: "Kinyarwanda", + nativeName: "Kinyarwanda", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "wo", "default", { + name: "wo", + englishName: "Wolof", + nativeName: "Wolof", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "prs", "default", { + name: "prs", + englishName: "Dari", + nativeName: "درى", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gd", "default", { + name: "gd", + englishName: "Scottish Gaelic", + nativeName: "Gàidhlig", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-SA", "default", { + name: "ar-SA", + englishName: "Arabic (Saudi Arabia)", + nativeName: "العربية (المملكة العربية السعودية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "bg-BG", "default", { + name: "bg-BG", + englishName: "Bulgarian (Bulgaria)", + nativeName: "български (България)", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайност", + positiveInfinity: "+ безкрайност", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"], + namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"], + namesShort: ["н","п","в","с","ч","п","с"] + }, + months: { + names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""], + namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"след новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +Globalize.addCultureInfo( "ca-ES", "default", { + name: "ca-ES", + englishName: "Catalan (Catalan)", + nativeName: "català (català)", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-TW", "default", { + name: "zh-TW", + englishName: "Chinese (Traditional, Taiwan)", + nativeName: "中文(台灣)", + language: "zh-CHT", + numberFormat: { + "NaN": "不是一個數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "NT$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"西元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'年'M'月'd'日' tt hh:mm", + F: "yyyy'年'M'月'd'日' tt hh:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Taiwan: { + name: "Taiwan", + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"","start":null,"offset":1911}], + twoDigitYearMax: 99, + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'年'M'月'd'日' tt hh:mm", + F: "yyyy'年'M'月'd'日' tt hh:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "cs-CZ", "default", { + name: "cs-CZ", + englishName: "Czech (Czech Republic)", + nativeName: "čeština (Česká republika)", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Kč" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","čt","pá","so"], + namesShort: ["ne","po","út","st","čt","pá","so"] + }, + months: { + names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "da-DK", "default", { + name: "da-DK", + englishName: "Danish (Denmark)", + nativeName: "dansk (Danmark)", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "de-DE", "default", { + name: "de-DE", + englishName: "German (Germany)", + nativeName: "Deutsch (Deutschland)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "el-GR", "default", { + name: "el-GR", + englishName: "Greek (Greece)", + nativeName: "Ελληνικά (Ελλάδα)", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αριθμός", + negativeInfinity: "-Άπειρο", + positiveInfinity: "Άπειρο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"], + namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"], + namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + monthsGenitive: { + names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""], + namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-US", "default", { + name: "en-US", + englishName: "English (United States)" +}); + +Globalize.addCultureInfo( "fi-FI", "default", { + name: "fi-FI", + englishName: "Finnish (Finland)", + nativeName: "suomi (Suomi)", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-FR", "default", { + name: "fr-FR", + englishName: "French (France)", + nativeName: "français (France)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "he-IL", "default", { + name: "he-IL", + englishName: "Hebrew (Israel)", + nativeName: "עברית (ישראל)", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "לא מספר", + negativeInfinity: "אינסוף שלילי", + positiveInfinity: "אינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"], + namesAbbr: ["א","ב","ג","ד","ה","ו","ש"], + namesShort: ["א","ב","ג","ד","ה","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hu-HU", "default", { + name: "hu-HU", + englishName: "Hungarian (Hungary)", + nativeName: "magyar (Magyarország)", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "is-IS", "default", { + name: "is-IS", + englishName: "Icelandic (Iceland)", + nativeName: "íslenska (Ísland)", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it-IT", "default", { + name: "it-IT", + englishName: "Italian (Italy)", + nativeName: "italiano (Italia)", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ja-JP", "default", { + name: "ja-JP", + englishName: "Japanese (Japan)", + nativeName: "日本語 (日本)", + language: "ja", + numberFormat: { + "NaN": "NaN (非数値)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["日","月","火","水","木","金","土"], + namesShort: ["日","月","火","水","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["午前","午前","午前"], + PM: ["午後","午後","午後"], + eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'年'M'月'd'日' H:mm", + F: "gg y'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "gg y'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "ko-KR", "default", { + name: "ko-KR", + englishName: "Korean (Korea)", + nativeName: "한국어 (대한민국)", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "₩" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'년' M'월' d'일' dddd tt h:mm", + F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "yyyy'년' M'월'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"], + namesAbbr: ["일","월","화","수","목","금","토"], + namesShort: ["일","월","화","수","목","금","토"] + }, + months: { + names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'년' M'월' d'일' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'년' M'월' d'일' dddd tt h:mm", + F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss", + M: "M'월' d'일'", + Y: "gg yyyy'년' M'월'" + } + } + } +}); + +Globalize.addCultureInfo( "nl-NL", "default", { + name: "nl-NL", + englishName: "Dutch (Netherlands)", + nativeName: "Nederlands (Nederland)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nb-NO", "default", { + name: "nb-NO", + englishName: "Norwegian, Bokmål (Norway)", + nativeName: "norsk, bokmål (Norge)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pl-PL", "default", { + name: "pl-PL", + englishName: "Polish (Poland)", + nativeName: "polski (Polska)", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbą", + negativeInfinity: "-nieskończoność", + positiveInfinity: "+nieskończoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zł" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"], + namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"] + }, + months: { + names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt-BR", "default", { + name: "pt-BR", + englishName: "Portuguese (Brazil)", + nativeName: "Português (Brasil)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rm-CH", "default", { + name: "rm-CH", + englishName: "Romansh (Switzerland)", + nativeName: "Rumantsch (Svizra)", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ro-RO", "default", { + name: "ro-RO", + englishName: "Romanian (Romania)", + nativeName: "română (România)", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ru-RU", "default", { + name: "ru-RU", + englishName: "Russian (Russia)", + nativeName: "русский (Россия)", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"], + namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + monthsGenitive: { + names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""], + namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr-HR", "default", { + name: "hr-HR", + englishName: "Croatian (Croatia)", + nativeName: "hrvatski (Hrvatska)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sk-SK", "default", { + name: "sk-SK", + englishName: "Slovak (Slovakia)", + nativeName: "slovenčina (Slovenská republika)", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je číslo", + negativeInfinity: "-nekonečno", + positiveInfinity: "+nekonečno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","št","pi","so"], + namesShort: ["ne","po","ut","st","št","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sq-AL", "default", { + name: "sq-AL", + englishName: "Albanian (Albania)", + nativeName: "shqipe (Shqipëria)", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +Globalize.addCultureInfo( "sv-SE", "default", { + name: "sv-SE", + englishName: "Swedish (Sweden)", + nativeName: "svenska (Sverige)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "th-TH", "default", { + name: "th-TH", + englishName: "Thai (Thailand)", + nativeName: "ไทย (ไทย)", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""], + namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tr-TR", "default", { + name: "tr-TR", + englishName: "Turkish (Turkey)", + nativeName: "Türkçe (Türkiye)", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ur-PK", "default", { + name: "ur-PK", + englishName: "Urdu (Islamic Republic of Pakistan)", + nativeName: "اُردو (پاکستان)", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"], + namesShort: ["ا","پ","م","ب","ج","ج","ه"] + }, + months: { + names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +Globalize.addCultureInfo( "id-ID", "default", { + name: "id-ID", + englishName: "Indonesian (Indonesia)", + nativeName: "Bahasa Indonesia (Indonesia)", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uk-UA", "default", { + name: "uk-UA", + englishName: "Ukrainian (Ukraine)", + nativeName: "українська (Україна)", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежність", + positiveInfinity: "безмежність", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₴" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"], + namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"], + namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""] + }, + monthsGenitive: { + names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""], + namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' р.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' р.' H:mm", + F: "d MMMM yyyy' р.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' р.'" + } + } + } +}); + +Globalize.addCultureInfo( "be-BY", "default", { + name: "be-BY", + englishName: "Belarusian (Belarus)", + nativeName: "Беларускі (Беларусь)", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"], + namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"], + namesShort: ["нд","пн","аў","ср","чц","пт","сб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + monthsGenitive: { + names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sl-SI", "default", { + name: "sl-SI", + englishName: "Slovenian (Slovenia)", + nativeName: "slovenski (Slovenija)", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskončnost", + positiveInfinity: "neskončnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"], + namesShort: ["ne","po","to","sr","če","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "et-EE", "default", { + name: "et-EE", + englishName: "Estonian (Estonia)", + nativeName: "eesti (Eesti)", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +Globalize.addCultureInfo( "lv-LV", "default", { + name: "lv-LV", + englishName: "Latvian (Latvia)", + nativeName: "latviešu (Latvija)", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalība", + positiveInfinity: "bezgalība", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""], + namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "lt-LT", "default", { + name: "lt-LT", + englishName: "Lithuanian (Lithuania)", + nativeName: "lietuvių (Lietuva)", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybė", + positiveInfinity: "begalybė", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"], + namesShort: ["S","P","A","T","K","Pn","Š"] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { + name: "tg-Cyrl-TJ", + englishName: "Tajik (Cyrillic, Tajikistan)", + nativeName: "Тоҷикӣ (Тоҷикистон)", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fa-IR", "default", { + name: "fa-IR", + englishName: "Persian", + nativeName: "فارسى (ایران)", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ق.ظ","ق.ظ","ق.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "vi-VN", "default", { + name: "vi-VN", + englishName: "Vietnamese (Vietnam)", + nativeName: "Tiếng Việt (Việt Nam)", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "₫" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"], + namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hy-AM", "default", { + name: "hy-AM", + englishName: "Armenian (Armenia)", + nativeName: "Հայերեն (Հայաստան)", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "դր." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"], + namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"], + namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"] + }, + months: { + names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""], + namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "az-Latn-AZ", "default", { + name: "az-Latn-AZ", + englishName: "Azeri (Latin, Azerbaijan)", + nativeName: "Azərbaycan\xadılı (Azərbaycan)", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "eu-ES", "default", { + name: "eu-ES", + englishName: "Basque (Basque)", + nativeName: "euskara (euskara)", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "hsb-DE", "default", { + name: "hsb-DE", + englishName: "Upper Sorbian (Germany)", + nativeName: "hornjoserbšćina (Němska)", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónčne", + positiveInfinity: "+njekónčne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"], + namesShort: ["n","p","w","s","š","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mk-MK", "default", { + name: "mk-MK", + englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", + nativeName: "македонски јазик (Македонија)", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"], + namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"], + namesShort: ["не","по","вт","ср","че","пе","са"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tn-ZA", "default", { + name: "tn-ZA", + englishName: "Setswana (South Africa)", + nativeName: "Setswana (Aforika Borwa)", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "xh-ZA", "default", { + name: "xh-ZA", + englishName: "isiXhosa (South Africa)", + nativeName: "isiXhosa (uMzantsi Afrika)", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zu-ZA", "default", { + name: "zu-ZA", + englishName: "isiZulu (South Africa)", + nativeName: "isiZulu (iNingizimu Afrika)", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "af-ZA", "default", { + name: "af-ZA", + englishName: "Afrikaans (South Africa)", + nativeName: "Afrikaans (Suid Afrika)", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ka-GE", "default", { + name: "ka-GE", + englishName: "Georgian (Georgia)", + nativeName: "ქართული (საქართველო)", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"], + namesShort: ["კ","ო","ს","ო","ხ","პ","შ"] + }, + months: { + names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""], + namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fo-FO", "default", { + name: "fo-FO", + englishName: "Faroese (Faroe Islands)", + nativeName: "føroyskt (Føroyar)", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hi-IN", "default", { + name: "hi-IN", + englishName: "Hindi (India)", + nativeName: "हिंदी (भारत)", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mt-MT", "default", { + name: "mt-MT", + englishName: "Maltese (Malta)", + nativeName: "Malti (Malta)", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-NO", "default", { + name: "se-NO", + englishName: "Sami, Northern (Norway)", + nativeName: "davvisámegiella (Norga)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms-MY", "default", { + name: "ms-MY", + englishName: "Malay (Malaysia)", + nativeName: "Bahasa Melayu (Malaysia)", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kk-KZ", "default", { + name: "kk-KZ", + englishName: "Kazakh (Kazakhstan)", + nativeName: "Қазақ (Қазақстан)", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"], + namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""], + namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ky-KG", "default", { + name: "ky-KG", + englishName: "Kyrgyz (Kyrgyzstan)", + nativeName: "Кыргыз (Кыргызстан)", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "сом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +Globalize.addCultureInfo( "sw-KE", "default", { + name: "sw-KE", + englishName: "Kiswahili (Kenya)", + nativeName: "Kiswahili (Kenya)", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +Globalize.addCultureInfo( "tk-TM", "default", { + name: "tk-TM", + englishName: "Turkmen (Turkmenistan)", + nativeName: "türkmençe (Türkmenistan)", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"], + namesShort: ["D","S","Ç","P","A","Ş","Ý"] + }, + months: { + names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Latn-UZ", "default", { + name: "uz-Latn-UZ", + englishName: "Uzbek (Latin, Uzbekistan)", + nativeName: "U'zbek (U'zbekiston Respublikasi)", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tt-RU", "default", { + name: "tt-RU", + englishName: "Tatar (Russia)", + nativeName: "Татар (Россия)", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "р." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Җ","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn-IN", "default", { + name: "bn-IN", + englishName: "Bengali (India)", + nativeName: "বাংলা (ভারত)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "pa-IN", "default", { + name: "pa-IN", + englishName: "Punjabi (India)", + nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰੁ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "gu-IN", "default", { + name: "gu-IN", + englishName: "Gujarati (India)", + nativeName: "ગુજરાતી (ભારત)", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""], + namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""] + }, + AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"], + PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "or-IN", "default", { + name: "or-IN", + englishName: "Oriya (India)", + nativeName: "ଓଡ଼ିଆ (ଭାରତ)", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"] + }, + months: { + names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""], + namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍\u200c","ମେ","ଜୁନ୍\u200c","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""] + }, + eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ta-IN", "default", { + name: "ta-IN", + englishName: "Tamil (India)", + nativeName: "தமிழ் (இந்தியா)", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"], + namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"], + namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""], + namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "te-IN", "default", { + name: "te-IN", + englishName: "Telugu (India)", + nativeName: "తెలుగు (భారత దేశం)", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."], + namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"] + }, + months: { + names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""], + namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""] + }, + AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"], + PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "kn-IN", "default", { + name: "kn-IN", + englishName: "Kannada (India)", + nativeName: "ಕನ್ನಡ (ಭಾರತ)", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""] + }, + AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"], + PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ml-IN", "default", { + name: "ml-IN", + englishName: "Malayalam (India)", + nativeName: "മലയാളം (ഭാരതം)", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ക" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"], + namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."], + namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"] + }, + months: { + names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""], + namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "as-IN", "default", { + name: "as-IN", + englishName: "Assamese (India)", + nativeName: "অসমীয়া (ভাৰত)", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."], + namesShort: ["সো","ম","বু","বৃ","শু","শ","র"] + }, + months: { + names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""], + namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""] + }, + AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +Globalize.addCultureInfo( "mr-IN", "default", { + name: "mr-IN", + englishName: "Marathi (India)", + nativeName: "मराठी (भारत)", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""], + namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sa-IN", "default", { + name: "sa-IN", + englishName: "Sanskrit (India)", + nativeName: "संस्कृत (भारतम्)", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""], + namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""] + }, + AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"], + PM: ["अपराह्न","अपराह्न","अपराह्न"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn-MN", "default", { + name: "mn-MN", + englishName: "Mongolian (Cyrillic, Mongolia)", + nativeName: "Монгол хэл (Монгол улс)", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bo-CN", "default", { + name: "bo-CN", + englishName: "Tibetan (PRC)", + nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།)", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པ།", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"], + namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +Globalize.addCultureInfo( "cy-GB", "default", { + name: "cy-GB", + englishName: "Welsh (United Kingdom)", + nativeName: "Cymraeg (y Deyrnas Unedig)", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "km-KH", "default", { + name: "km-KH", + englishName: "Khmer (Cambodia)", + nativeName: "ខ្មែរ (កម្ពុជា)", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្ត", + positiveInfinity: "អនន្ត", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"], + namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."], + namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ថ្ងៃទី' dd 'ខែ' MM", + Y: "'ខែ' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "lo-LA", "default", { + name: "lo-LA", + englishName: "Lao (Lao P.D.R.)", + nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "₭" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""], + namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["ແລງ","ແລງ","ແລງ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gl-ES", "default", { + name: "gl-ES", + englishName: "Galician (Galician)", + nativeName: "galego (galego)", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kok-IN", "default", { + name: "kok-IN", + englishName: "Konkani (India)", + nativeName: "कोंकणी (भारत)", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रु" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "syr-SY", "default", { + name: "syr-SY", + englishName: "Syriac (Syria)", + nativeName: "ܣܘܪܝܝܐ (سوريا)", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"], + namesAbbr: ["\u070fܐ \u070fܒܫ","\u070fܒ \u070fܒܫ","\u070fܓ \u070fܒܫ","\u070fܕ \u070fܒܫ","\u070fܗ \u070fܒܫ","\u070fܥܪܘܒ","\u070fܫܒ"], + namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"] + }, + months: { + names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""], + namesAbbr: ["\u070fܟܢ \u070fܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","\u070fܬܫ \u070fܐ","\u070fܬܫ \u070fܒ","\u070fܟܢ \u070fܐ",""] + }, + AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"], + PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "si-LK", "default", { + name: "si-LK", + englishName: "Sinhala (Sri Lanka)", + nativeName: "සිංහල (ශ්\u200dරී ලංකා)", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්\u200dරහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"], + namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"], + namesShort: ["ඉ","ස","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ\u200cප්\u200dරේල්","මැයි","ජූනි","ජූලි","අ\u200cගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""], + namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්\u200dරේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""] + }, + AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."], + PM: ["ප.ව.","ප.ව.","ප.ව."], + eras: [{"name":"ක්\u200dරි.ව.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd", + f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Cans-CA", "default", { + name: "iu-Cans-CA", + englishName: "Inuktitut (Syllabics, Canada)", + nativeName: "ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕᒥ)", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], + namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], + namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] + }, + months: { + names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], + namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "am-ET", "default", { + name: "am-ET", + englishName: "Amharic (Ethiopia)", + nativeName: "አማርኛ (ኢትዮጵያ)", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""], + namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ ምሕረት","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd '፣' MMMM d 'ቀን' yyyy", + f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ne-NP", "default", { + name: "ne-NP", + englishName: "Nepali (Nepal)", + nativeName: "नेपाली (नेपाल)", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रु" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"], + namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"], + namesShort: ["आ","सो","म","बु","बि","शु","श"] + }, + months: { + names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""], + namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलुकी","बेलुकी","बेलुकी"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fy-NL", "default", { + name: "fy-NL", + englishName: "Frisian (Netherlands)", + nativeName: "Frysk (Nederlân)", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ps-AF", "default", { + name: "ps-AF", + englishName: "Pashto (Afghanistan)", + nativeName: "پښتو (افغانستان)", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "،", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "،", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "٬", + ".": "٫", + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fil-PH", "default", { + name: "fil-PH", + englishName: "Filipino (Philippines)", + nativeName: "Filipino (Pilipinas)", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "dv-MV", "default", { + name: "dv-MV", + englishName: "Divehi (Maldives)", + nativeName: "ދިވެހިބަސް (ދިވެހި ރާއްޖެ)", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "ރ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""], + namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"ހިޖްރީ","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"], + namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"] + }, + months: { + names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""], + namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""] + }, + AM: ["މކ","މކ","މކ"], + PM: ["މފ","މފ","މފ"], + eras: [{"name":"މީލާދީ","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha-Latn-NG", "default", { + name: "ha-Latn-NG", + englishName: "Hausa (Latin, Nigeria)", + nativeName: "Hausa (Nigeria)", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "yo-NG", "default", { + name: "yo-NG", + englishName: "Yoruba (Nigeria)", + nativeName: "Yoruba (Nigeria)", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz-BO", "default", { + name: "quz-BO", + englishName: "Quechua (Bolivia)", + nativeName: "runasimi (Qullasuyu)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nso-ZA", "default", { + name: "nso-ZA", + englishName: "Sesotho sa Leboa (South Africa)", + nativeName: "Sesotho sa Leboa (Afrika Borwa)", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ba-RU", "default", { + name: "ba-RU", + englishName: "Bashkir (Russia)", + nativeName: "Башҡорт (Россия)", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "һ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "lb-LU", "default", { + name: "lb-LU", + englishName: "Luxembourgish (Luxembourg)", + nativeName: "Lëtzebuergesch (Luxembourg)", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kl-GL", "default", { + name: "kl-GL", + englishName: "Greenlandic (Greenland)", + nativeName: "kalaallisut (Kalaallit Nunaat)", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ig-NG", "default", { + name: "ig-NG", + englishName: "Igbo (Nigeria)", + nativeName: "Igbo (Nigeria)", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ii-CN", "default", { + name: "ii-CN", + englishName: "Yi (PRC)", + nativeName: "ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ)", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭꌐꀋꉆ", + positiveInfinity: "ꈤꇁꑖꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"], + namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"], + namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss", + M: "M'ꆪ' d'ꑍ'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +Globalize.addCultureInfo( "arn-CL", "default", { + name: "arn-CL", + englishName: "Mapudungun (Chile)", + nativeName: "Mapudungun (Chile)", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "moh-CA", "default", { + name: "moh-CA", + englishName: "Mohawk (Mohawk)", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +Globalize.addCultureInfo( "br-FR", "default", { + name: "br-FR", + englishName: "Breton (France)", + nativeName: "brezhoneg (Frañs)", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ug-CN", "default", { + name: "ug-CN", + englishName: "Uyghur (PRC)", + nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"], + namesShort: ["ي","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mi-NZ", "default", { + name: "mi-NZ", + englishName: "Maori (New Zealand)", + nativeName: "Reo Māori (Aotearoa)", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"], + namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +Globalize.addCultureInfo( "oc-FR", "default", { + name: "oc-FR", + englishName: "Occitan (France)", + nativeName: "Occitan (França)", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "co-FR", "default", { + name: "co-FR", + englishName: "Corsican (France)", + nativeName: "Corsu (France)", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gsw-FR", "default", { + name: "gsw-FR", + englishName: "Alsatian (France)", + nativeName: "Elsässisch (Frànkrisch)", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sah-RU", "default", { + name: "sah-RU", + englishName: "Yakut (Russia)", + nativeName: "саха (Россия)", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "с." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"], + namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + monthsGenitive: { + names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""], + namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'с.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'с.' H:mm", + F: "MMMM d yyyy 'с.' H:mm:ss", + Y: "MMMM yyyy 'с.'" + } + } + } +}); + +Globalize.addCultureInfo( "qut-GT", "default", { + name: "qut-GT", + englishName: "K'iche (Guatemala)", + nativeName: "K'iche (Guatemala)", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rw-RW", "default", { + name: "rw-RW", + englishName: "Kinyarwanda (Rwanda)", + nativeName: "Kinyarwanda (Rwanda)", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "wo-SN", "default", { + name: "wo-SN", + englishName: "Wolof (Senegal)", + nativeName: "Wolof (Sénégal)", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "prs-AF", "default", { + name: "prs-AF", + englishName: "Dari (Afghanistan)", + nativeName: "درى (افغانستان)", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "؋" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ی","د","س","چ","پ","ج","ش"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""] + }, + AM: ["غ.م","غ.م","غ.م"], + PM: ["غ.و","غ.و","غ.و"], + eras: [{"name":"ل.ه","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gd-GB", "default", { + name: "gd-GB", + englishName: "Scottish Gaelic (United Kingdom)", + nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-IQ", "default", { + name: "ar-IQ", + englishName: "Arabic (Iraq)", + nativeName: "العربية (العراق)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CN", "default", { + name: "zh-CN", + englishName: "Chinese (Simplified, PRC)", + nativeName: "中文(中华人民共和国)", + language: "zh-CHS", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-CH", "default", { + name: "de-CH", + englishName: "German (Switzerland)", + nativeName: "Deutsch (Schweiz)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "Fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-GB", "default", { + name: "en-GB", + englishName: "English (United Kingdom)", + nativeName: "English (United Kingdom)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-MX", "default", { + name: "es-MX", + englishName: "Spanish (Mexico)", + nativeName: "Español (México)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-BE", "default", { + name: "fr-BE", + englishName: "French (Belgium)", + nativeName: "français (Belgique)", + language: "fr", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it-CH", "default", { + name: "it-CH", + englishName: "Italian (Switzerland)", + nativeName: "italiano (Svizzera)", + language: "it", + numberFormat: { + ",": "'", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nl-BE", "default", { + name: "nl-BE", + englishName: "Dutch (Belgium)", + nativeName: "Nederlands (België)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Niet-een-getal)", + negativeInfinity: "-oneindig", + positiveInfinity: "oneindig", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nn-NO", "default", { + name: "nn-NO", + englishName: "Norwegian, Nynorsk (Norway)", + nativeName: "norsk, nynorsk (Noreg)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","må","ty","on","to","fr","la"], + namesShort: ["sø","må","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt-PT", "default", { + name: "pt-PT", + englishName: "Portuguese (Portugal)", + nativeName: "português (Portugal)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], + namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "d/M", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-CS", "default", { + name: "sr-Latn-CS", + englishName: "Serbian (Latin, Serbia and Montenegro (Former))", + nativeName: "srpski (Srbija i Crna Gora (Prethodno))", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sv-FI", "default", { + name: "sv-FI", + englishName: "Swedish (Finland)", + nativeName: "svenska (Finland)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","må","ti","on","to","fr","lö"], + namesShort: ["sö","må","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { + name: "az-Cyrl-AZ", + englishName: "Azeri (Cyrillic, Azerbaijan)", + nativeName: "Азәрбајҹан (Азәрбајҹан)", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "dsb-DE", "default", { + name: "dsb-DE", + englishName: "Lower Sorbian (Germany)", + nativeName: "dolnoserbšćina (Nimska)", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekońcne", + positiveInfinity: "+njekońcne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], + namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-SE", "default", { + name: "se-SE", + englishName: "Sami, Northern (Sweden)", + nativeName: "davvisámegiella (Ruoŧŧa)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ga-IE", "default", { + name: "ga-IE", + englishName: "Irish (Ireland)", + nativeName: "Gaeilge (Éire)", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms-BN", "default", { + name: "ms-BN", + englishName: "Malay (Brunei Darussalam)", + nativeName: "Bahasa Melayu (Brunei Darussalam)", + language: "ms", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { + name: "uz-Cyrl-UZ", + englishName: "Uzbek (Cyrillic, Uzbekistan)", + nativeName: "Ўзбек (Ўзбекистон)", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "сўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], + namesShort: ["я","д","с","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn-BD", "default", { + name: "bn-BD", + englishName: "Bengali (Bangladesh)", + nativeName: "বাংলা (বাংলাদেশ)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "৳" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""], + namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""] + }, + AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"], + PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Mong-CN", "default", { + name: "mn-Mong-CN", + englishName: "Mongolian (Traditional Mongolian, PRC)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ)", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Latn-CA", "default", { + name: "iu-Latn-CA", + englishName: "Inuktitut (Latin, Canada)", + nativeName: "Inuktitut (Kanatami)", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { + name: "tzm-Latn-DZ", + englishName: "Tamazight (Latin, Algeria)", + nativeName: "Tamazight (Djazaïr)", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "quz-EC", "default", { + name: "quz-EC", + englishName: "Quechua (Ecuador)", + nativeName: "runasimi (Ecuador)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-EG", "default", { + name: "ar-EG", + englishName: "Arabic (Egypt)", + nativeName: "العربية (مصر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + symbol: "ج.م.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-HK", "default", { + name: "zh-HK", + englishName: "Chinese (Traditional, Hong Kong S.A.R.)", + nativeName: "中文(香港特別行政區)", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-AT", "default", { + name: "de-AT", + englishName: "German (Austria)", + nativeName: "Deutsch (Österreich)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd. MMMM yyyy HH:mm", + F: "dddd, dd. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-AU", "default", { + name: "en-AU", + englishName: "English (Australia)", + nativeName: "English (Australia)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-ES", "default", { + name: "es-ES", + englishName: "Spanish (Spain, International Sort)", + nativeName: "Español (España, alfabetización internacional)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-CA", "default", { + name: "fr-CA", + englishName: "French (Canada)", + nativeName: "français (Canada)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["(n $)","n $"], + ",": " ", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { + name: "sr-Cyrl-CS", + englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", + nativeName: "српски (Србија и Црна Гора (Претходно))", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-FI", "default", { + name: "se-FI", + englishName: "Sami, Northern (Finland)", + nativeName: "davvisámegiella (Suopma)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. b. 'yyyy H:mm", + F: "MMMM d'. b. 'yyyy H:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz-PE", "default", { + name: "quz-PE", + englishName: "Quechua (Peru)", + nativeName: "runasimi (Piruw)", + language: "quz", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-LY", "default", { + name: "ar-LY", + englishName: "Arabic (Libya)", + nativeName: "العربية (ليبيا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$n"], + decimals: 3, + symbol: "د.ل.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-SG", "default", { + name: "zh-SG", + englishName: "Chinese (Simplified, Singapore)", + nativeName: "中文(新加坡)", + language: "zh-CHS", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'年'M'月'd'日' tt h:mm", + F: "yyyy'年'M'月'd'日' tt h:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-LU", "default", { + name: "de-LU", + englishName: "German (Luxembourg)", + nativeName: "Deutsch (Luxemburg)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-CA", "default", { + name: "en-CA", + englishName: "English (Canada)", + nativeName: "English (Canada)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "MMMM-dd-yy", + f: "MMMM-dd-yy h:mm tt", + F: "MMMM-dd-yy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-GT", "default", { + name: "es-GT", + englishName: "Spanish (Guatemala)", + nativeName: "Español (Guatemala)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-CH", "default", { + name: "fr-CH", + englishName: "French (Switzerland)", + nativeName: "français (Suisse)", + language: "fr", + numberFormat: { + ",": "'", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr-BA", "default", { + name: "hr-BA", + englishName: "Croatian (Latin, Bosnia and Herzegovina)", + nativeName: "hrvatski (Bosna i Hercegovina)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "smj-NO", "default", { + name: "smj-NO", + englishName: "Sami, Lule (Norway)", + nativeName: "julevusámegiella (Vuodna)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sådnåbiejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["såd","mán","dis","gas","duor","bier","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-DZ", "default", { + name: "ar-DZ", + englishName: "Arabic (Algeria)", + nativeName: "العربية (الجزائر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ج.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "zh-MO", "default", { + name: "zh-MO", + englishName: "Chinese (Traditional, Macao S.A.R.)", + nativeName: "中文(澳門特別行政區)", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "MOP" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-LI", "default", { + name: "de-LI", + englishName: "German (Liechtenstein)", + nativeName: "Deutsch (Liechtenstein)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "CHF" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-NZ", "default", { + name: "en-NZ", + englishName: "English (New Zealand)", + nativeName: "English (New Zealand)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-CR", "default", { + name: "es-CR", + englishName: "Spanish (Costa Rica)", + nativeName: "Español (Costa Rica)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + ",": ".", + ".": ",", + symbol: "₡" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-LU", "default", { + name: "fr-LU", + englishName: "French (Luxembourg)", + nativeName: "français (Luxembourg)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Latn-BA", "default", { + name: "bs-Latn-BA", + englishName: "Bosnian (Latin, Bosnia and Herzegovina)", + nativeName: "bosanski (Bosna i Hercegovina)", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smj-SE", "default", { + name: "smj-SE", + englishName: "Sami, Lule (Sweden)", + nativeName: "julevusámegiella (Svierik)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-MA", "default", { + name: "ar-MA", + englishName: "Arabic (Morocco)", + nativeName: "العربية (المملكة المغربية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.م.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "en-IE", "default", { + name: "en-IE", + englishName: "English (Ireland)", + nativeName: "English (Ireland)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PA", "default", { + name: "es-PA", + englishName: "Spanish (Panama)", + nativeName: "Español (Panamá)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + symbol: "B/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-MC", "default", { + name: "fr-MC", + englishName: "French (Monaco)", + nativeName: "français (Principauté de Monaco)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-BA", "default", { + name: "sr-Latn-BA", + englishName: "Serbian (Latin, Bosnia and Herzegovina)", + nativeName: "srpski (Bosna i Hercegovina)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sma-NO", "default", { + name: "sma-NO", + englishName: "Sami, Southern (Norway)", + nativeName: "åarjelsaemiengiele (Nöörje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-TN", "default", { + name: "ar-TN", + englishName: "Arabic (Tunisia)", + nativeName: "العربية (تونس)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ت.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "en-ZA", "default", { + name: "en-ZA", + englishName: "English (South Africa)", + nativeName: "English (South Africa)", + numberFormat: { + ",": " ", + percent: { + pattern: ["-n%","n%"], + ",": " " + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "R" + } + }, + calendars: { + standard: { + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-DO", "default", { + name: "es-DO", + englishName: "Spanish (Dominican Republic)", + nativeName: "Español (República Dominicana)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "RD$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { + name: "sr-Cyrl-BA", + englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "српски (Босна и Херцеговина)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sma-SE", "default", { + name: "sma-SE", + englishName: "Sami, Southern (Sweden)", + nativeName: "åarjelsaemiengiele (Sveerje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-OM", "default", { + name: "ar-OM", + englishName: "Arabic (Oman)", + nativeName: "العربية (عمان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "ر.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-JM", "default", { + name: "en-JM", + englishName: "English (Jamaica)", + nativeName: "English (Jamaica)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "J$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-VE", "default", { + name: "es-VE", + englishName: "Spanish (Bolivarian Republic of Venezuela)", + nativeName: "Español (Republica Bolivariana de Venezuela)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "Bs. F." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { + name: "bs-Cyrl-BA", + englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "босански (Босна и Херцеговина)", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sms-FI", "default", { + name: "sms-FI", + englishName: "Sami, Skolt (Finland)", + nativeName: "sääm´ǩiõll (Lää´ddjânnam)", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + monthsGenitive: { + names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-YE", "default", { + name: "ar-YE", + englishName: "Arabic (Yemen)", + nativeName: "العربية (اليمن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ي.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-029", "default", { + name: "en-029", + englishName: "English (Caribbean)", + nativeName: "English (Caribbean)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "MM/dd/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-CO", "default", { + name: "es-CO", + englishName: "Spanish (Colombia)", + nativeName: "Español (Colombia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-RS", "default", { + name: "sr-Latn-RS", + englishName: "Serbian (Latin, Serbia)", + nativeName: "srpski (Srbija)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smn-FI", "default", { + name: "smn-FI", + englishName: "Sami, Inari (Finland)", + nativeName: "sämikielâ (Suomâ)", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-SY", "default", { + name: "ar-SY", + englishName: "Arabic (Syria)", + nativeName: "العربية (سوريا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-BZ", "default", { + name: "en-BZ", + englishName: "English (Belize)", + nativeName: "English (Belize)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "BZ$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PE", "default", { + name: "es-PE", + englishName: "Spanish (Peru)", + nativeName: "Español (Perú)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { + name: "sr-Cyrl-RS", + englishName: "Serbian (Cyrillic, Serbia)", + nativeName: "српски (Србија)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-JO", "default", { + name: "ar-JO", + englishName: "Arabic (Jordan)", + nativeName: "العربية (الأردن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ا.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-TT", "default", { + name: "en-TT", + englishName: "English (Trinidad and Tobago)", + nativeName: "English (Trinidad y Tobago)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "TT$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-AR", "default", { + name: "es-AR", + englishName: "Spanish (Argentina)", + nativeName: "Español (Argentina)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-ME", "default", { + name: "sr-Latn-ME", + englishName: "Serbian (Latin, Montenegro)", + nativeName: "srpski (Crna Gora)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-LB", "default", { + name: "ar-LB", + englishName: "Arabic (Lebanon)", + nativeName: "العربية (لبنان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ل.ل.\u200f" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["أ","ا","ث","أ","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-ZW", "default", { + name: "en-ZW", + englishName: "English (Zimbabwe)", + nativeName: "English (Zimbabwe)", + numberFormat: { + currency: { + symbol: "Z$" + } + } +}); + +Globalize.addCultureInfo( "es-EC", "default", { + name: "es-EC", + englishName: "Spanish (Ecuador)", + nativeName: "Español (Ecuador)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { + name: "sr-Cyrl-ME", + englishName: "Serbian (Cyrillic, Montenegro)", + nativeName: "српски (Црна Гора)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-KW", "default", { + name: "ar-KW", + englishName: "Arabic (Kuwait)", + nativeName: "العربية (الكويت)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ك.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-PH", "default", { + name: "en-PH", + englishName: "English (Republic of the Philippines)", + nativeName: "English (Philippines)", + numberFormat: { + currency: { + symbol: "Php" + } + } +}); + +Globalize.addCultureInfo( "es-CL", "default", { + name: "es-CL", + englishName: "Spanish (Chile)", + nativeName: "Español (Chile)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-AE", "default", { + name: "ar-AE", + englishName: "Arabic (U.A.E.)", + nativeName: "العربية (الإمارات العربية المتحدة)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.إ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-UY", "default", { + name: "es-UY", + englishName: "Spanish (Uruguay)", + nativeName: "Español (Uruguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$U" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-BH", "default", { + name: "ar-BH", + englishName: "Arabic (Bahrain)", + nativeName: "العربية (البحرين)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ب.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-PY", "default", { + name: "es-PY", + englishName: "Spanish (Paraguay)", + nativeName: "Español (Paraguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "Gs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-QA", "default", { + name: "ar-QA", + englishName: "Arabic (Qatar)", + nativeName: "العربية (قطر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ق.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["ح","ن","ث","ر","خ","ج","س"] + }, + months: { + names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""], + namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["م","م","م"], + eras: [{"name":"م","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-IN", "default", { + name: "en-IN", + englishName: "English (India)", + nativeName: "English (India)", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "Rs." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-BO", "default", { + name: "es-BO", + englishName: "Spanish (Bolivia)", + nativeName: "Español (Bolivia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-MY", "default", { + name: "en-MY", + englishName: "English (Malaysia)", + nativeName: "English (Malaysia)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "RM" + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-SV", "default", { + name: "es-SV", + englishName: "Spanish (El Salvador)", + nativeName: "Español (El Salvador)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-SG", "default", { + name: "en-SG", + englishName: "English (Singapore)", + nativeName: "English (Singapore)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-HN", "default", { + name: "es-HN", + englishName: "Spanish (Honduras)", + nativeName: "Español (Honduras)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + symbol: "L." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-NI", "default", { + name: "es-NI", + englishName: "Spanish (Nicaragua)", + nativeName: "Español (Nicaragua)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0], + symbol: "C$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PR", "default", { + name: "es-PR", + englishName: "Spanish (Puerto Rico)", + nativeName: "Español (Puerto Rico)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-US", "default", { + name: "es-US", + englishName: "Spanish (United States)", + nativeName: "Español (Estados Unidos)", + language: "es", + numberFormat: { + groupSizes: [3,0], + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sa"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Cyrl", "default", { + name: "bs-Cyrl", + englishName: "Bosnian (Cyrillic)", + nativeName: "босански", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["н","п","у","с","ч","п","с"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Latn", "default", { + name: "bs-Latn", + englishName: "Bosnian (Latin)", + nativeName: "bosanski", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl", "default", { + name: "sr-Cyrl", + englishName: "Serbian (Cyrillic)", + nativeName: "српски", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-бесконачност", + positiveInfinity: "+бесконачност", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"], + namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"], + namesShort: ["не","по","ут","ср","че","пе","су"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn", "default", { + name: "sr-Latn", + englishName: "Serbian (Latin)", + nativeName: "srpski", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smn", "default", { + name: "smn", + englishName: "Sami (Inari)", + nativeName: "sämikielâ", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Cyrl", "default", { + name: "az-Cyrl", + englishName: "Azeri (Cyrillic)", + nativeName: "Азәрбајҹан дили", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sms", "default", { + name: "sms", + englishName: "Sami (Skolt)", + nativeName: "sääm´ǩiõll", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + monthsGenitive: { + names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh", "default", { + name: "zh", + englishName: "Chinese", + nativeName: "中文", + language: "zh", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "nn", "default", { + name: "nn", + englishName: "Norwegian (Nynorsk)", + nativeName: "norsk (nynorsk)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","må","ty","on","to","fr","la"], + namesShort: ["sø","må","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs", "default", { + name: "bs", + englishName: "Bosnian", + nativeName: "bosanski", + language: "bs", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Latn", "default", { + name: "az-Latn", + englishName: "Azeri (Latin)", + nativeName: "Azərbaycan\xadılı", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sma", "default", { + name: "sma", + englishName: "Sami (Southern)", + nativeName: "åarjelsaemiengiele", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Cyrl", "default", { + name: "uz-Cyrl", + englishName: "Uzbek (Cyrillic)", + nativeName: "Ўзбек", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "сўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"], + namesShort: ["я","д","с","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Cyrl", "default", { + name: "mn-Cyrl", + englishName: "Mongolian (Cyrillic)", + nativeName: "Монгол хэл", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "₮" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"], + namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"], + namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"] + }, + months: { + names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Cans", "default", { + name: "iu-Cans", + englishName: "Inuktitut (Syllabics)", + nativeName: "ᐃᓄᒃᑎᑐᑦ", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"], + namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"], + namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"] + }, + months: { + names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""], + namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-Hant", "default", { + name: "zh-Hant", + englishName: "Chinese (Traditional)", + nativeName: "中文(繁體)", + language: "zh-Hant", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "nb", "default", { + name: "nb", + englishName: "Norwegian (Bokmål)", + nativeName: "norsk (bokmål)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr", "default", { + name: "sr", + englishName: "Serbian", + nativeName: "srpski", + language: "sr", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonačnost", + positiveInfinity: "+beskonačnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"], + namesShort: ["ne","po","ut","sr","če","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tg-Cyrl", "default", { + name: "tg-Cyrl", + englishName: "Tajik (Cyrillic)", + nativeName: "Тоҷикӣ", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-бесконечность", + positiveInfinity: "бесконечность", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "т.р." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + monthsGenitive: { + names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "dsb", "default", { + name: "dsb", + englishName: "Lower Sorbian", + nativeName: "dolnoserbšćina", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekońcne", + positiveInfinity: "+njekońcne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"], + namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smj", "default", { + name: "smj", + englishName: "Sami (Lule)", + nativeName: "julevusámegiella", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + monthsGenitive: { + names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""], + namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Latn", "default", { + name: "uz-Latn", + englishName: "Uzbek (Latin)", + nativeName: "U'zbek", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Mong", "default", { + name: "mn-Mong", + englishName: "Mongolian (Traditional Mongolian)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["ᠡ\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","ᠭᠤ\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Latn", "default", { + name: "iu-Latn", + englishName: "Inuktitut (Latin)", + nativeName: "Inuktitut", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "tzm-Latn", "default", { + name: "tzm-Latn", + englishName: "Tamazight (Latin)", + nativeName: "Tamazight", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha-Latn", "default", { + name: "ha-Latn", + englishName: "Hausa (Latin)", + nativeName: "Hausa", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CHS", "default", { + name: "zh-CHS", + englishName: "Chinese (Simplified) Legacy", + nativeName: "中文(简体) 旧版", + language: "zh-CHS", + numberFormat: { + "NaN": "非数字", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CHT", "default", { + name: "zh-CHT", + englishName: "Chinese (Traditional) Legacy", + nativeName: "中文(繁體) 舊版", + language: "zh-CHT", + numberFormat: { + "NaN": "非數字", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["日","一","二","三","四","五","六"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""] + }, + AM: ["上午","上午","上午"], + PM: ["下午","下午","下午"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'年'M'月'd'日'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'年'M'月'd'日' H:mm", + F: "yyyy'年'M'月'd'日' H:mm:ss", + M: "M'月'd'日'", + Y: "yyyy'年'M'月'" + } + } + } +}); + +}( this )); diff --git a/pub/lib/globalize/globalize.js b/pub/lib/globalize/globalize.js index a7cd6270ddd53..62c93cd4e4cad 100644 --- a/pub/lib/globalize/globalize.js +++ b/pub/lib/globalize/globalize.js @@ -1,1581 +1,1581 @@ -/** - * Globalize - * - * http://github.com/jquery/globalize - * - * Copyright Software Freedom Conservancy, Inc. - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - */ - -(function( window, undefined ) { - -var Globalize, - // private variables - regexHex, - regexInfinity, - regexParseFloat, - regexTrim, - // private JavaScript utility functions - arrayIndexOf, - endsWith, - extend, - isArray, - isFunction, - isObject, - startsWith, - trim, - truncate, - zeroPad, - // private Globalization utility functions - appendPreOrPostMatch, - expandFormat, - formatDate, - formatNumber, - getTokenRegExp, - getEra, - getEraYear, - parseExact, - parseNegativePattern; - -// Global variable (Globalize) or CommonJS module (globalize) -Globalize = function( cultureSelector ) { - return new Globalize.prototype.init( cultureSelector ); -}; - -if ( typeof require !== "undefined" && - typeof exports !== "undefined" && - typeof module !== "undefined" ) { - // Assume CommonJS - module.exports = Globalize; -} else { - // Export as global variable - window.Globalize = Globalize; -} - -Globalize.cultures = {}; - -Globalize.prototype = { - constructor: Globalize, - init: function( cultureSelector ) { - this.cultures = Globalize.cultures; - this.cultureSelector = cultureSelector; - - return this; - } -}; -Globalize.prototype.init.prototype = Globalize.prototype; - -// 1. When defining a culture, all fields are required except the ones stated as optional. -// 2. Each culture should have a ".calendars" object with at least one calendar named "standard" -// which serves as the default calendar in use by that culture. -// 3. Each culture should have a ".calendar" object which is the current calendar being used, -// it may be dynamically changed at any time to one of the calendars in ".calendars". -Globalize.cultures[ "default" ] = { - // A unique name for the culture in the form - - name: "en", - // the name of the culture in the english language - englishName: "English", - // the name of the culture in its own language - nativeName: "English", - // whether the culture uses right-to-left text - isRTL: false, - // "language" is used for so-called "specific" cultures. - // For example, the culture "es-CL" means "Spanish, in Chili". - // It represents the Spanish-speaking culture as it is in Chili, - // which might have different formatting rules or even translations - // than Spanish in Spain. A "neutral" culture is one that is not - // specific to a region. For example, the culture "es" is the generic - // Spanish culture, which may be a more generalized version of the language - // that may or may not be what a specific culture expects. - // For a specific culture like "es-CL", the "language" field refers to the - // neutral, generic culture information for the language it is using. - // This is not always a simple matter of the string before the dash. - // For example, the "zh-Hans" culture is netural (Simplified Chinese). - // And the "zh-SG" culture is Simplified Chinese in Singapore, whose lanugage - // field is "zh-CHS", not "zh". - // This field should be used to navigate from a specific culture to it's - // more general, neutral culture. If a culture is already as general as it - // can get, the language may refer to itself. - language: "en", - // numberFormat defines general number formatting rules, like the digits in - // each grouping, the group separator, and how negative numbers are displayed. - numberFormat: { - // [negativePattern] - // Note, numberFormat.pattern has no "positivePattern" unlike percent and currency, - // but is still defined as an array for consistency with them. - // negativePattern: one of "(n)|-n|- n|n-|n -" - pattern: [ "-n" ], - // number of decimal places normally shown - decimals: 2, - // string that separates number groups, as in 1,000,000 - ",": ",", - // string that separates a number from the fractional portion, as in 1.99 - ".": ".", - // array of numbers indicating the size of each number group. - // TODO: more detailed description and example - groupSizes: [ 3 ], - // symbol used for positive numbers - "+": "+", - // symbol used for negative numbers - "-": "-", - // symbol used for NaN (Not-A-Number) - "NaN": "NaN", - // symbol used for Negative Infinity - negativeInfinity: "-Infinity", - // symbol used for Positive Infinity - positiveInfinity: "Infinity", - percent: { - // [negativePattern, positivePattern] - // negativePattern: one of "-n %|-n%|-%n|%-n|%n-|n-%|n%-|-% n|n %-|% n-|% -n|n- %" - // positivePattern: one of "n %|n%|%n|% n" - pattern: [ "-n %", "n %" ], - // number of decimal places normally shown - decimals: 2, - // array of numbers indicating the size of each number group. - // TODO: more detailed description and example - groupSizes: [ 3 ], - // string that separates number groups, as in 1,000,000 - ",": ",", - // string that separates a number from the fractional portion, as in 1.99 - ".": ".", - // symbol used to represent a percentage - symbol: "%" - }, - currency: { - // [negativePattern, positivePattern] - // negativePattern: one of "($n)|-$n|$-n|$n-|(n$)|-n$|n-$|n$-|-n $|-$ n|n $-|$ n-|$ -n|n- $|($ n)|(n $)" - // positivePattern: one of "$n|n$|$ n|n $" - pattern: [ "($n)", "$n" ], - // number of decimal places normally shown - decimals: 2, - // array of numbers indicating the size of each number group. - // TODO: more detailed description and example - groupSizes: [ 3 ], - // string that separates number groups, as in 1,000,000 - ",": ",", - // string that separates a number from the fractional portion, as in 1.99 - ".": ".", - // symbol used to represent currency - symbol: "$" - } - }, - // calendars defines all the possible calendars used by this culture. - // There should be at least one defined with name "standard", and is the default - // calendar used by the culture. - // A calendar contains information about how dates are formatted, information about - // the calendar's eras, a standard set of the date formats, - // translations for day and month names, and if the calendar is not based on the Gregorian - // calendar, conversion functions to and from the Gregorian calendar. - calendars: { - standard: { - // name that identifies the type of calendar this is - name: "Gregorian_USEnglish", - // separator of parts of a date (e.g. "/" in 11/05/1955) - "/": "/", - // separator of parts of a time (e.g. ":" in 05:44 PM) - ":": ":", - // the first day of the week (0 = Sunday, 1 = Monday, etc) - firstDay: 0, - days: { - // full day names - names: [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], - // abbreviated day names - namesAbbr: [ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" ], - // shortest day names - namesShort: [ "Su", "Mo", "Tu", "We", "Th", "Fr", "Sa" ] - }, - months: { - // full month names (13 months for lunar calendards -- 13th month should be "" if not lunar) - names: [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", "" ], - // abbreviated month names - namesAbbr: [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "" ] - }, - // AM and PM designators in one of these forms: - // The usual view, and the upper and lower case versions - // [ standard, lowercase, uppercase ] - // The culture does not use AM or PM (likely all standard date formats use 24 hour time) - // null - AM: [ "AM", "am", "AM" ], - PM: [ "PM", "pm", "PM" ], - eras: [ - // eras in reverse chronological order. - // name: the name of the era in this culture (e.g. A.D., C.E.) - // start: when the era starts in ticks (gregorian, gmt), null if it is the earliest supported era. - // offset: offset in years from gregorian calendar - { - "name": "A.D.", - "start": null, - "offset": 0 - } - ], - // when a two digit year is given, it will never be parsed as a four digit - // year greater than this year (in the appropriate era for the culture) - // Set it as a full year (e.g. 2029) or use an offset format starting from - // the current year: "+19" would correspond to 2029 if the current year 2010. - twoDigitYearMax: 2029, - // set of predefined date and time patterns used by the culture - // these represent the format someone in this culture would expect - // to see given the portions of the date that are shown. - patterns: { - // short date pattern - d: "M/d/yyyy", - // long date pattern - D: "dddd, MMMM dd, yyyy", - // short time pattern - t: "h:mm tt", - // long time pattern - T: "h:mm:ss tt", - // long date, short time pattern - f: "dddd, MMMM dd, yyyy h:mm tt", - // long date, long time pattern - F: "dddd, MMMM dd, yyyy h:mm:ss tt", - // month/day pattern - M: "MMMM dd", - // month/year pattern - Y: "yyyy MMMM", - // S is a sortable format that does not vary by culture - S: "yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss" - } - // optional fields for each calendar: - /* - monthsGenitive: - Same as months but used when the day preceeds the month. - Omit if the culture has no genitive distinction in month names. - For an explaination of genitive months, see http://blogs.msdn.com/michkap/archive/2004/12/25/332259.aspx - convert: - Allows for the support of non-gregorian based calendars. This convert object is used to - to convert a date to and from a gregorian calendar date to handle parsing and formatting. - The two functions: - fromGregorian( date ) - Given the date as a parameter, return an array with parts [ year, month, day ] - corresponding to the non-gregorian based year, month, and day for the calendar. - toGregorian( year, month, day ) - Given the non-gregorian year, month, and day, return a new Date() object - set to the corresponding date in the gregorian calendar. - */ - } - }, - // For localized strings - messages: {} -}; - -Globalize.cultures[ "default" ].calendar = Globalize.cultures[ "default" ].calendars.standard; - -Globalize.cultures.en = Globalize.cultures[ "default" ]; - -Globalize.cultureSelector = "en"; - -// -// private variables -// - -regexHex = /^0x[a-f0-9]+$/i; -regexInfinity = /^[+\-]?infinity$/i; -regexParseFloat = /^[+\-]?\d*\.?\d*(e[+\-]?\d+)?$/; -regexTrim = /^\s+|\s+$/g; - -// -// private JavaScript utility functions -// - -arrayIndexOf = function( array, item ) { - if ( array.indexOf ) { - return array.indexOf( item ); - } - for ( var i = 0, length = array.length; i < length; i++ ) { - if ( array[i] === item ) { - return i; - } - } - return -1; -}; - -endsWith = function( value, pattern ) { - return value.substr( value.length - pattern.length ) === pattern; -}; - -extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[0] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - target = arguments[1] || {}; - // skip the boolean and the target - i = 2; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !isFunction(target) ) { - target = {}; - } - - for ( ; i < length; i++ ) { - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) { - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( isObject(copy) || (copyIsArray = isArray(copy)) ) ) { - if ( copyIsArray ) { - copyIsArray = false; - clone = src && isArray(src) ? src : []; - - } else { - clone = src && isObject(src) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -isArray = Array.isArray || function( obj ) { - return Object.prototype.toString.call( obj ) === "[object Array]"; -}; - -isFunction = function( obj ) { - return Object.prototype.toString.call( obj ) === "[object Function]"; -}; - -isObject = function( obj ) { - return Object.prototype.toString.call( obj ) === "[object Object]"; -}; - -startsWith = function( value, pattern ) { - return value.indexOf( pattern ) === 0; -}; - -trim = function( value ) { - return ( value + "" ).replace( regexTrim, "" ); -}; - -truncate = function( value ) { - if ( isNaN( value ) ) { - return NaN; - } - return Math[ value < 0 ? "ceil" : "floor" ]( value ); -}; - -zeroPad = function( str, count, left ) { - var l; - for ( l = str.length; l < count; l += 1 ) { - str = ( left ? ("0" + str) : (str + "0") ); - } - return str; -}; - -// -// private Globalization utility functions -// - -appendPreOrPostMatch = function( preMatch, strings ) { - // appends pre- and post- token match strings while removing escaped characters. - // Returns a single quote count which is used to determine if the token occurs - // in a string literal. - var quoteCount = 0, - escaped = false; - for ( var i = 0, il = preMatch.length; i < il; i++ ) { - var c = preMatch.charAt( i ); - switch ( c ) { - case "\'": - if ( escaped ) { - strings.push( "\'" ); - } - else { - quoteCount++; - } - escaped = false; - break; - case "\\": - if ( escaped ) { - strings.push( "\\" ); - } - escaped = !escaped; - break; - default: - strings.push( c ); - escaped = false; - break; - } - } - return quoteCount; -}; - -expandFormat = function( cal, format ) { - // expands unspecified or single character date formats into the full pattern. - format = format || "F"; - var pattern, - patterns = cal.patterns, - len = format.length; - if ( len === 1 ) { - pattern = patterns[ format ]; - if ( !pattern ) { - throw "Invalid date format string \'" + format + "\'."; - } - format = pattern; - } - else if ( len === 2 && format.charAt(0) === "%" ) { - // %X escape format -- intended as a custom format string that is only one character, not a built-in format. - format = format.charAt( 1 ); - } - return format; -}; - -formatDate = function( value, format, culture ) { - var cal = culture.calendar, - convert = cal.convert, - ret; - - if ( !format || !format.length || format === "i" ) { - if ( culture && culture.name.length ) { - if ( convert ) { - // non-gregorian calendar, so we cannot use built-in toLocaleString() - ret = formatDate( value, cal.patterns.F, culture ); - } - else { - var eraDate = new Date( value.getTime() ), - era = getEra( value, cal.eras ); - eraDate.setFullYear( getEraYear(value, cal, era) ); - ret = eraDate.toLocaleString(); - } - } - else { - ret = value.toString(); - } - return ret; - } - - var eras = cal.eras, - sortable = format === "s"; - format = expandFormat( cal, format ); - - // Start with an empty string - ret = []; - var hour, - zeros = [ "0", "00", "000" ], - foundDay, - checkedDay, - dayPartRegExp = /([^d]|^)(d|dd)([^d]|$)/g, - quoteCount = 0, - tokenRegExp = getTokenRegExp(), - converted; - - function padZeros( num, c ) { - var r, s = num + ""; - if ( c > 1 && s.length < c ) { - r = ( zeros[c - 2] + s); - return r.substr( r.length - c, c ); - } - else { - r = s; - } - return r; - } - - function hasDay() { - if ( foundDay || checkedDay ) { - return foundDay; - } - foundDay = dayPartRegExp.test( format ); - checkedDay = true; - return foundDay; - } - - function getPart( date, part ) { - if ( converted ) { - return converted[ part ]; - } - switch ( part ) { - case 0: - return date.getFullYear(); - case 1: - return date.getMonth(); - case 2: - return date.getDate(); - default: - throw "Invalid part value " + part; - } - } - - if ( !sortable && convert ) { - converted = convert.fromGregorian( value ); - } - - for ( ; ; ) { - // Save the current index - var index = tokenRegExp.lastIndex, - // Look for the next pattern - ar = tokenRegExp.exec( format ); - - // Append the text before the pattern (or the end of the string if not found) - var preMatch = format.slice( index, ar ? ar.index : format.length ); - quoteCount += appendPreOrPostMatch( preMatch, ret ); - - if ( !ar ) { - break; - } - - // do not replace any matches that occur inside a string literal. - if ( quoteCount % 2 ) { - ret.push( ar[0] ); - continue; - } - - var current = ar[ 0 ], - clength = current.length; - - switch ( current ) { - case "ddd": - //Day of the week, as a three-letter abbreviation - case "dddd": - // Day of the week, using the full name - var names = ( clength === 3 ) ? cal.days.namesAbbr : cal.days.names; - ret.push( names[value.getDay()] ); - break; - case "d": - // Day of month, without leading zero for single-digit days - case "dd": - // Day of month, with leading zero for single-digit days - foundDay = true; - ret.push( - padZeros( getPart(value, 2), clength ) - ); - break; - case "MMM": - // Month, as a three-letter abbreviation - case "MMMM": - // Month, using the full name - var part = getPart( value, 1 ); - ret.push( - ( cal.monthsGenitive && hasDay() ) ? - ( cal.monthsGenitive[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) : - ( cal.months[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) - ); - break; - case "M": - // Month, as digits, with no leading zero for single-digit months - case "MM": - // Month, as digits, with leading zero for single-digit months - ret.push( - padZeros( getPart(value, 1) + 1, clength ) - ); - break; - case "y": - // Year, as two digits, but with no leading zero for years less than 10 - case "yy": - // Year, as two digits, with leading zero for years less than 10 - case "yyyy": - // Year represented by four full digits - part = converted ? converted[ 0 ] : getEraYear( value, cal, getEra(value, eras), sortable ); - if ( clength < 4 ) { - part = part % 100; - } - ret.push( - padZeros( part, clength ) - ); - break; - case "h": - // Hours with no leading zero for single-digit hours, using 12-hour clock - case "hh": - // Hours with leading zero for single-digit hours, using 12-hour clock - hour = value.getHours() % 12; - if ( hour === 0 ) hour = 12; - ret.push( - padZeros( hour, clength ) - ); - break; - case "H": - // Hours with no leading zero for single-digit hours, using 24-hour clock - case "HH": - // Hours with leading zero for single-digit hours, using 24-hour clock - ret.push( - padZeros( value.getHours(), clength ) - ); - break; - case "m": - // Minutes with no leading zero for single-digit minutes - case "mm": - // Minutes with leading zero for single-digit minutes - ret.push( - padZeros( value.getMinutes(), clength ) - ); - break; - case "s": - // Seconds with no leading zero for single-digit seconds - case "ss": - // Seconds with leading zero for single-digit seconds - ret.push( - padZeros( value.getSeconds(), clength ) - ); - break; - case "t": - // One character am/pm indicator ("a" or "p") - case "tt": - // Multicharacter am/pm indicator - part = value.getHours() < 12 ? ( cal.AM ? cal.AM[0] : " " ) : ( cal.PM ? cal.PM[0] : " " ); - ret.push( clength === 1 ? part.charAt(0) : part ); - break; - case "f": - // Deciseconds - case "ff": - // Centiseconds - case "fff": - // Milliseconds - ret.push( - padZeros( value.getMilliseconds(), 3 ).substr( 0, clength ) - ); - break; - case "z": - // Time zone offset, no leading zero - case "zz": - // Time zone offset with leading zero - hour = value.getTimezoneOffset() / 60; - ret.push( - ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), clength ) - ); - break; - case "zzz": - // Time zone offset with leading zero - hour = value.getTimezoneOffset() / 60; - ret.push( - ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), 2 ) + - // Hard coded ":" separator, rather than using cal.TimeSeparator - // Repeated here for consistency, plus ":" was already assumed in date parsing. - ":" + padZeros( Math.abs(value.getTimezoneOffset() % 60), 2 ) - ); - break; - case "g": - case "gg": - if ( cal.eras ) { - ret.push( - cal.eras[ getEra(value, eras) ].name - ); - } - break; - case "/": - ret.push( cal["/"] ); - break; - default: - throw "Invalid date format pattern \'" + current + "\'."; - } - } - return ret.join( "" ); -}; - -// formatNumber -(function() { - var expandNumber; - - expandNumber = function( number, precision, formatInfo ) { - var groupSizes = formatInfo.groupSizes, - curSize = groupSizes[ 0 ], - curGroupIndex = 1, - factor = Math.pow( 10, precision ), - rounded = Math.round( number * factor ) / factor; - - if ( !isFinite(rounded) ) { - rounded = number; - } - number = rounded; - - var numberString = number+"", - right = "", - split = numberString.split( /e/i ), - exponent = split.length > 1 ? parseInt( split[1], 10 ) : 0; - numberString = split[ 0 ]; - split = numberString.split( "." ); - numberString = split[ 0 ]; - right = split.length > 1 ? split[ 1 ] : ""; - - var l; - if ( exponent > 0 ) { - right = zeroPad( right, exponent, false ); - numberString += right.slice( 0, exponent ); - right = right.substr( exponent ); - } - else if ( exponent < 0 ) { - exponent = -exponent; - numberString = zeroPad( numberString, exponent + 1, true ); - right = numberString.slice( -exponent, numberString.length ) + right; - numberString = numberString.slice( 0, -exponent ); - } - - if ( precision > 0 ) { - right = formatInfo[ "." ] + - ( (right.length > precision) ? right.slice(0, precision) : zeroPad(right, precision) ); - } - else { - right = ""; - } - - var stringIndex = numberString.length - 1, - sep = formatInfo[ "," ], - ret = ""; - - while ( stringIndex >= 0 ) { - if ( curSize === 0 || curSize > stringIndex ) { - return numberString.slice( 0, stringIndex + 1 ) + ( ret.length ? (sep + ret + right) : right ); - } - ret = numberString.slice( stringIndex - curSize + 1, stringIndex + 1 ) + ( ret.length ? (sep + ret) : "" ); - - stringIndex -= curSize; - - if ( curGroupIndex < groupSizes.length ) { - curSize = groupSizes[ curGroupIndex ]; - curGroupIndex++; - } - } - - return numberString.slice( 0, stringIndex + 1 ) + sep + ret + right; - }; - - formatNumber = function( value, format, culture ) { - if ( !isFinite(value) ) { - if ( value === Infinity ) { - return culture.numberFormat.positiveInfinity; - } - if ( value === -Infinity ) { - return culture.numberFormat.negativeInfinity; - } - return culture.numberFormat[ "NaN" ]; - } - if ( !format || format === "i" ) { - return culture.name.length ? value.toLocaleString() : value.toString(); - } - format = format || "D"; - - var nf = culture.numberFormat, - number = Math.abs( value ), - precision = -1, - pattern; - if ( format.length > 1 ) precision = parseInt( format.slice(1), 10 ); - - var current = format.charAt( 0 ).toUpperCase(), - formatInfo; - - switch ( current ) { - case "D": - pattern = "n"; - number = truncate( number ); - if ( precision !== -1 ) { - number = zeroPad( "" + number, precision, true ); - } - if ( value < 0 ) number = "-" + number; - break; - case "N": - formatInfo = nf; - /* falls through */ - case "C": - formatInfo = formatInfo || nf.currency; - /* falls through */ - case "P": - formatInfo = formatInfo || nf.percent; - pattern = value < 0 ? formatInfo.pattern[ 0 ] : ( formatInfo.pattern[1] || "n" ); - if ( precision === -1 ) precision = formatInfo.decimals; - number = expandNumber( number * (current === "P" ? 100 : 1), precision, formatInfo ); - break; - default: - throw "Bad number format specifier: " + current; - } - - var patternParts = /n|\$|-|%/g, - ret = ""; - for ( ; ; ) { - var index = patternParts.lastIndex, - ar = patternParts.exec( pattern ); - - ret += pattern.slice( index, ar ? ar.index : pattern.length ); - - if ( !ar ) { - break; - } - - switch ( ar[0] ) { - case "n": - ret += number; - break; - case "$": - ret += nf.currency.symbol; - break; - case "-": - // don't make 0 negative - if ( /[1-9]/.test(number) ) { - ret += nf[ "-" ]; - } - break; - case "%": - ret += nf.percent.symbol; - break; - } - } - - return ret; - }; - -}()); - -getTokenRegExp = function() { - // regular expression for matching date and time tokens in format strings. - return (/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g); -}; - -getEra = function( date, eras ) { - if ( !eras ) return 0; - var start, ticks = date.getTime(); - for ( var i = 0, l = eras.length; i < l; i++ ) { - start = eras[ i ].start; - if ( start === null || ticks >= start ) { - return i; - } - } - return 0; -}; - -getEraYear = function( date, cal, era, sortable ) { - var year = date.getFullYear(); - if ( !sortable && cal.eras ) { - // convert normal gregorian year to era-shifted gregorian - // year by subtracting the era offset - year -= cal.eras[ era ].offset; - } - return year; -}; - -// parseExact -(function() { - var expandYear, - getDayIndex, - getMonthIndex, - getParseRegExp, - outOfRange, - toUpper, - toUpperArray; - - expandYear = function( cal, year ) { - // expands 2-digit year into 4 digits. - if ( year < 100 ) { - var now = new Date(), - era = getEra( now ), - curr = getEraYear( now, cal, era ), - twoDigitYearMax = cal.twoDigitYearMax; - twoDigitYearMax = typeof twoDigitYearMax === "string" ? new Date().getFullYear() % 100 + parseInt( twoDigitYearMax, 10 ) : twoDigitYearMax; - year += curr - ( curr % 100 ); - if ( year > twoDigitYearMax ) { - year -= 100; - } - } - return year; - }; - - getDayIndex = function ( cal, value, abbr ) { - var ret, - days = cal.days, - upperDays = cal._upperDays; - if ( !upperDays ) { - cal._upperDays = upperDays = [ - toUpperArray( days.names ), - toUpperArray( days.namesAbbr ), - toUpperArray( days.namesShort ) - ]; - } - value = toUpper( value ); - if ( abbr ) { - ret = arrayIndexOf( upperDays[1], value ); - if ( ret === -1 ) { - ret = arrayIndexOf( upperDays[2], value ); - } - } - else { - ret = arrayIndexOf( upperDays[0], value ); - } - return ret; - }; - - getMonthIndex = function( cal, value, abbr ) { - var months = cal.months, - monthsGen = cal.monthsGenitive || cal.months, - upperMonths = cal._upperMonths, - upperMonthsGen = cal._upperMonthsGen; - if ( !upperMonths ) { - cal._upperMonths = upperMonths = [ - toUpperArray( months.names ), - toUpperArray( months.namesAbbr ) - ]; - cal._upperMonthsGen = upperMonthsGen = [ - toUpperArray( monthsGen.names ), - toUpperArray( monthsGen.namesAbbr ) - ]; - } - value = toUpper( value ); - var i = arrayIndexOf( abbr ? upperMonths[1] : upperMonths[0], value ); - if ( i < 0 ) { - i = arrayIndexOf( abbr ? upperMonthsGen[1] : upperMonthsGen[0], value ); - } - return i; - }; - - getParseRegExp = function( cal, format ) { - // converts a format string into a regular expression with groups that - // can be used to extract date fields from a date string. - // check for a cached parse regex. - var re = cal._parseRegExp; - if ( !re ) { - cal._parseRegExp = re = {}; - } - else { - var reFormat = re[ format ]; - if ( reFormat ) { - return reFormat; - } - } - - // expand single digit formats, then escape regular expression characters. - var expFormat = expandFormat( cal, format ).replace( /([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1" ), - regexp = [ "^" ], - groups = [], - index = 0, - quoteCount = 0, - tokenRegExp = getTokenRegExp(), - match; - - // iterate through each date token found. - while ( (match = tokenRegExp.exec(expFormat)) !== null ) { - var preMatch = expFormat.slice( index, match.index ); - index = tokenRegExp.lastIndex; - - // don't replace any matches that occur inside a string literal. - quoteCount += appendPreOrPostMatch( preMatch, regexp ); - if ( quoteCount % 2 ) { - regexp.push( match[0] ); - continue; - } - - // add a regex group for the token. - var m = match[ 0 ], - len = m.length, - add; - switch ( m ) { - case "dddd": case "ddd": - case "MMMM": case "MMM": - case "gg": case "g": - add = "(\\D+)"; - break; - case "tt": case "t": - add = "(\\D*)"; - break; - case "yyyy": - case "fff": - case "ff": - case "f": - add = "(\\d{" + len + "})"; - break; - case "dd": case "d": - case "MM": case "M": - case "yy": case "y": - case "HH": case "H": - case "hh": case "h": - case "mm": case "m": - case "ss": case "s": - add = "(\\d\\d?)"; - break; - case "zzz": - add = "([+-]?\\d\\d?:\\d{2})"; - break; - case "zz": case "z": - add = "([+-]?\\d\\d?)"; - break; - case "/": - add = "(\\/)"; - break; - default: - throw "Invalid date format pattern \'" + m + "\'."; - } - if ( add ) { - regexp.push( add ); - } - groups.push( match[0] ); - } - appendPreOrPostMatch( expFormat.slice(index), regexp ); - regexp.push( "$" ); - - // allow whitespace to differ when matching formats. - var regexpStr = regexp.join( "" ).replace( /\s+/g, "\\s+" ), - parseRegExp = { "regExp": regexpStr, "groups": groups }; - - // cache the regex for this format. - return re[ format ] = parseRegExp; - }; - - outOfRange = function( value, low, high ) { - return value < low || value > high; - }; - - toUpper = function( value ) { - // "he-IL" has non-breaking space in weekday names. - return value.split( "\u00A0" ).join( " " ).toUpperCase(); - }; - - toUpperArray = function( arr ) { - var results = []; - for ( var i = 0, l = arr.length; i < l; i++ ) { - results[ i ] = toUpper( arr[i] ); - } - return results; - }; - - parseExact = function( value, format, culture ) { - // try to parse the date string by matching against the format string - // while using the specified culture for date field names. - value = trim( value ); - var cal = culture.calendar, - // convert date formats into regular expressions with groupings. - // use the regexp to determine the input format and extract the date fields. - parseInfo = getParseRegExp( cal, format ), - match = new RegExp( parseInfo.regExp ).exec( value ); - if ( match === null ) { - return null; - } - // found a date format that matches the input. - var groups = parseInfo.groups, - era = null, year = null, month = null, date = null, weekDay = null, - hour = 0, hourOffset, min = 0, sec = 0, msec = 0, tzMinOffset = null, - pmHour = false; - // iterate the format groups to extract and set the date fields. - for ( var j = 0, jl = groups.length; j < jl; j++ ) { - var matchGroup = match[ j + 1 ]; - if ( matchGroup ) { - var current = groups[ j ], - clength = current.length, - matchInt = parseInt( matchGroup, 10 ); - switch ( current ) { - case "dd": case "d": - // Day of month. - date = matchInt; - // check that date is generally in valid range, also checking overflow below. - if ( outOfRange(date, 1, 31) ) return null; - break; - case "MMM": case "MMMM": - month = getMonthIndex( cal, matchGroup, clength === 3 ); - if ( outOfRange(month, 0, 11) ) return null; - break; - case "M": case "MM": - // Month. - month = matchInt - 1; - if ( outOfRange(month, 0, 11) ) return null; - break; - case "y": case "yy": - case "yyyy": - year = clength < 4 ? expandYear( cal, matchInt ) : matchInt; - if ( outOfRange(year, 0, 9999) ) return null; - break; - case "h": case "hh": - // Hours (12-hour clock). - hour = matchInt; - if ( hour === 12 ) hour = 0; - if ( outOfRange(hour, 0, 11) ) return null; - break; - case "H": case "HH": - // Hours (24-hour clock). - hour = matchInt; - if ( outOfRange(hour, 0, 23) ) return null; - break; - case "m": case "mm": - // Minutes. - min = matchInt; - if ( outOfRange(min, 0, 59) ) return null; - break; - case "s": case "ss": - // Seconds. - sec = matchInt; - if ( outOfRange(sec, 0, 59) ) return null; - break; - case "tt": case "t": - // AM/PM designator. - // see if it is standard, upper, or lower case PM. If not, ensure it is at least one of - // the AM tokens. If not, fail the parse for this format. - pmHour = cal.PM && ( matchGroup === cal.PM[0] || matchGroup === cal.PM[1] || matchGroup === cal.PM[2] ); - if ( - !pmHour && ( - !cal.AM || ( matchGroup !== cal.AM[0] && matchGroup !== cal.AM[1] && matchGroup !== cal.AM[2] ) - ) - ) return null; - break; - case "f": - // Deciseconds. - case "ff": - // Centiseconds. - case "fff": - // Milliseconds. - msec = matchInt * Math.pow( 10, 3 - clength ); - if ( outOfRange(msec, 0, 999) ) return null; - break; - case "ddd": - // Day of week. - case "dddd": - // Day of week. - weekDay = getDayIndex( cal, matchGroup, clength === 3 ); - if ( outOfRange(weekDay, 0, 6) ) return null; - break; - case "zzz": - // Time zone offset in +/- hours:min. - var offsets = matchGroup.split( /:/ ); - if ( offsets.length !== 2 ) return null; - hourOffset = parseInt( offsets[0], 10 ); - if ( outOfRange(hourOffset, -12, 13) ) return null; - var minOffset = parseInt( offsets[1], 10 ); - if ( outOfRange(minOffset, 0, 59) ) return null; - tzMinOffset = ( hourOffset * 60 ) + ( startsWith(matchGroup, "-") ? -minOffset : minOffset ); - break; - case "z": case "zz": - // Time zone offset in +/- hours. - hourOffset = matchInt; - if ( outOfRange(hourOffset, -12, 13) ) return null; - tzMinOffset = hourOffset * 60; - break; - case "g": case "gg": - var eraName = matchGroup; - if ( !eraName || !cal.eras ) return null; - eraName = trim( eraName.toLowerCase() ); - for ( var i = 0, l = cal.eras.length; i < l; i++ ) { - if ( eraName === cal.eras[i].name.toLowerCase() ) { - era = i; - break; - } - } - // could not find an era with that name - if ( era === null ) return null; - break; - } - } - } - var result = new Date(), defaultYear, convert = cal.convert; - defaultYear = convert ? convert.fromGregorian( result )[ 0 ] : result.getFullYear(); - if ( year === null ) { - year = defaultYear; - } - else if ( cal.eras ) { - // year must be shifted to normal gregorian year - // but not if year was not specified, its already normal gregorian - // per the main if clause above. - year += cal.eras[( era || 0 )].offset; - } - // set default day and month to 1 and January, so if unspecified, these are the defaults - // instead of the current day/month. - if ( month === null ) { - month = 0; - } - if ( date === null ) { - date = 1; - } - // now have year, month, and date, but in the culture's calendar. - // convert to gregorian if necessary - if ( convert ) { - result = convert.toGregorian( year, month, date ); - // conversion failed, must be an invalid match - if ( result === null ) return null; - } - else { - // have to set year, month and date together to avoid overflow based on current date. - result.setFullYear( year, month, date ); - // check to see if date overflowed for specified month (only checked 1-31 above). - if ( result.getDate() !== date ) return null; - // invalid day of week. - if ( weekDay !== null && result.getDay() !== weekDay ) { - return null; - } - } - // if pm designator token was found make sure the hours fit the 24-hour clock. - if ( pmHour && hour < 12 ) { - hour += 12; - } - result.setHours( hour, min, sec, msec ); - if ( tzMinOffset !== null ) { - // adjust timezone to utc before applying local offset. - var adjustedMin = result.getMinutes() - ( tzMinOffset + result.getTimezoneOffset() ); - // Safari limits hours and minutes to the range of -127 to 127. We need to use setHours - // to ensure both these fields will not exceed this range. adjustedMin will range - // somewhere between -1440 and 1500, so we only need to split this into hours. - result.setHours( result.getHours() + parseInt(adjustedMin / 60, 10), adjustedMin % 60 ); - } - return result; - }; -}()); - -parseNegativePattern = function( value, nf, negativePattern ) { - var neg = nf[ "-" ], - pos = nf[ "+" ], - ret; - switch ( negativePattern ) { - case "n -": - neg = " " + neg; - pos = " " + pos; - /* falls through */ - case "n-": - if ( endsWith(value, neg) ) { - ret = [ "-", value.substr(0, value.length - neg.length) ]; - } - else if ( endsWith(value, pos) ) { - ret = [ "+", value.substr(0, value.length - pos.length) ]; - } - break; - case "- n": - neg += " "; - pos += " "; - /* falls through */ - case "-n": - if ( startsWith(value, neg) ) { - ret = [ "-", value.substr(neg.length) ]; - } - else if ( startsWith(value, pos) ) { - ret = [ "+", value.substr(pos.length) ]; - } - break; - case "(n)": - if ( startsWith(value, "(") && endsWith(value, ")") ) { - ret = [ "-", value.substr(1, value.length - 2) ]; - } - break; - } - return ret || [ "", value ]; -}; - -// -// public instance functions -// - -Globalize.prototype.findClosestCulture = function( cultureSelector ) { - return Globalize.findClosestCulture.call( this, cultureSelector ); -}; - -Globalize.prototype.format = function( value, format, cultureSelector ) { - return Globalize.format.call( this, value, format, cultureSelector ); -}; - -Globalize.prototype.localize = function( key, cultureSelector ) { - return Globalize.localize.call( this, key, cultureSelector ); -}; - -Globalize.prototype.parseInt = function( value, radix, cultureSelector ) { - return Globalize.parseInt.call( this, value, radix, cultureSelector ); -}; - -Globalize.prototype.parseFloat = function( value, radix, cultureSelector ) { - return Globalize.parseFloat.call( this, value, radix, cultureSelector ); -}; - -Globalize.prototype.culture = function( cultureSelector ) { - return Globalize.culture.call( this, cultureSelector ); -}; - -// -// public singleton functions -// - -Globalize.addCultureInfo = function( cultureName, baseCultureName, info ) { - - var base = {}, - isNew = false; - - if ( typeof cultureName !== "string" ) { - // cultureName argument is optional string. If not specified, assume info is first - // and only argument. Specified info deep-extends current culture. - info = cultureName; - cultureName = this.culture().name; - base = this.cultures[ cultureName ]; - } else if ( typeof baseCultureName !== "string" ) { - // baseCultureName argument is optional string. If not specified, assume info is second - // argument. Specified info deep-extends specified culture. - // If specified culture does not exist, create by deep-extending default - info = baseCultureName; - isNew = ( this.cultures[ cultureName ] == null ); - base = this.cultures[ cultureName ] || this.cultures[ "default" ]; - } else { - // cultureName and baseCultureName specified. Assume a new culture is being created - // by deep-extending an specified base culture - isNew = true; - base = this.cultures[ baseCultureName ]; - } - - this.cultures[ cultureName ] = extend(true, {}, - base, - info - ); - // Make the standard calendar the current culture if it's a new culture - if ( isNew ) { - this.cultures[ cultureName ].calendar = this.cultures[ cultureName ].calendars.standard; - } -}; - -Globalize.findClosestCulture = function( name ) { - var match; - if ( !name ) { - return this.findClosestCulture( this.cultureSelector ) || this.cultures[ "default" ]; - } - if ( typeof name === "string" ) { - name = name.split( "," ); - } - if ( isArray(name) ) { - var lang, - cultures = this.cultures, - list = name, - i, l = list.length, - prioritized = []; - for ( i = 0; i < l; i++ ) { - name = trim( list[i] ); - var pri, parts = name.split( ";" ); - lang = trim( parts[0] ); - if ( parts.length === 1 ) { - pri = 1; - } - else { - name = trim( parts[1] ); - if ( name.indexOf("q=") === 0 ) { - name = name.substr( 2 ); - pri = parseFloat( name ); - pri = isNaN( pri ) ? 0 : pri; - } - else { - pri = 1; - } - } - prioritized.push({ lang: lang, pri: pri }); - } - prioritized.sort(function( a, b ) { - if ( a.pri < b.pri ) { - return 1; - } else if ( a.pri > b.pri ) { - return -1; - } - return 0; - }); - // exact match - for ( i = 0; i < l; i++ ) { - lang = prioritized[ i ].lang; - match = cultures[ lang ]; - if ( match ) { - return match; - } - } - - // neutral language match - for ( i = 0; i < l; i++ ) { - lang = prioritized[ i ].lang; - do { - var index = lang.lastIndexOf( "-" ); - if ( index === -1 ) { - break; - } - // strip off the last part. e.g. en-US => en - lang = lang.substr( 0, index ); - match = cultures[ lang ]; - if ( match ) { - return match; - } - } - while ( 1 ); - } - - // last resort: match first culture using that language - for ( i = 0; i < l; i++ ) { - lang = prioritized[ i ].lang; - for ( var cultureKey in cultures ) { - var culture = cultures[ cultureKey ]; - if ( culture.language == lang ) { - return culture; - } - } - } - } - else if ( typeof name === "object" ) { - return name; - } - return match || null; -}; - -Globalize.format = function( value, format, cultureSelector ) { - var culture = this.findClosestCulture( cultureSelector ); - if ( value instanceof Date ) { - value = formatDate( value, format, culture ); - } - else if ( typeof value === "number" ) { - value = formatNumber( value, format, culture ); - } - return value; -}; - -Globalize.localize = function( key, cultureSelector ) { - return this.findClosestCulture( cultureSelector ).messages[ key ] || - this.cultures[ "default" ].messages[ key ]; -}; - -Globalize.parseDate = function( value, formats, culture ) { - culture = this.findClosestCulture( culture ); - - var date, prop, patterns; - if ( formats ) { - if ( typeof formats === "string" ) { - formats = [ formats ]; - } - if ( formats.length ) { - for ( var i = 0, l = formats.length; i < l; i++ ) { - var format = formats[ i ]; - if ( format ) { - date = parseExact( value, format, culture ); - if ( date ) { - break; - } - } - } - } - } else { - patterns = culture.calendar.patterns; - for ( prop in patterns ) { - date = parseExact( value, patterns[prop], culture ); - if ( date ) { - break; - } - } - } - - return date || null; -}; - -Globalize.parseInt = function( value, radix, cultureSelector ) { - return truncate( Globalize.parseFloat(value, radix, cultureSelector) ); -}; - -Globalize.parseFloat = function( value, radix, cultureSelector ) { - // radix argument is optional - if ( typeof radix !== "number" ) { - cultureSelector = radix; - radix = 10; - } - - var culture = this.findClosestCulture( cultureSelector ); - var ret = NaN, - nf = culture.numberFormat; - - if ( value.indexOf(culture.numberFormat.currency.symbol) > -1 ) { - // remove currency symbol - value = value.replace( culture.numberFormat.currency.symbol, "" ); - // replace decimal seperator - value = value.replace( culture.numberFormat.currency["."], culture.numberFormat["."] ); - } - - // trim leading and trailing whitespace - value = trim( value ); - - // allow infinity or hexidecimal - if ( regexInfinity.test(value) ) { - ret = parseFloat( value ); - } - else if ( !radix && regexHex.test(value) ) { - ret = parseInt( value, 16 ); - } - else { - - // determine sign and number - var signInfo = parseNegativePattern( value, nf, nf.pattern[0] ), - sign = signInfo[ 0 ], - num = signInfo[ 1 ]; - - // #44 - try parsing as "(n)" - if ( sign === "" && nf.pattern[0] !== "(n)" ) { - signInfo = parseNegativePattern( value, nf, "(n)" ); - sign = signInfo[ 0 ]; - num = signInfo[ 1 ]; - } - - // try parsing as "-n" - if ( sign === "" && nf.pattern[0] !== "-n" ) { - signInfo = parseNegativePattern( value, nf, "-n" ); - sign = signInfo[ 0 ]; - num = signInfo[ 1 ]; - } - - sign = sign || "+"; - - // determine exponent and number - var exponent, - intAndFraction, - exponentPos = num.indexOf( "e" ); - if ( exponentPos < 0 ) exponentPos = num.indexOf( "E" ); - if ( exponentPos < 0 ) { - intAndFraction = num; - exponent = null; - } - else { - intAndFraction = num.substr( 0, exponentPos ); - exponent = num.substr( exponentPos + 1 ); - } - // determine decimal position - var integer, - fraction, - decSep = nf[ "." ], - decimalPos = intAndFraction.indexOf( decSep ); - if ( decimalPos < 0 ) { - integer = intAndFraction; - fraction = null; - } - else { - integer = intAndFraction.substr( 0, decimalPos ); - fraction = intAndFraction.substr( decimalPos + decSep.length ); - } - // handle groups (e.g. 1,000,000) - var groupSep = nf[ "," ]; - integer = integer.split( groupSep ).join( "" ); - var altGroupSep = groupSep.replace( /\u00A0/g, " " ); - if ( groupSep !== altGroupSep ) { - integer = integer.split( altGroupSep ).join( "" ); - } - // build a natively parsable number string - var p = sign + integer; - if ( fraction !== null ) { - p += "." + fraction; - } - if ( exponent !== null ) { - // exponent itself may have a number patternd - var expSignInfo = parseNegativePattern( exponent, nf, "-n" ); - p += "e" + ( expSignInfo[0] || "+" ) + expSignInfo[ 1 ]; - } - if ( regexParseFloat.test(p) ) { - ret = parseFloat( p ); - } - } - return ret; -}; - -Globalize.culture = function( cultureSelector ) { - // setter - if ( typeof cultureSelector !== "undefined" ) { - this.cultureSelector = cultureSelector; - } - // getter - return this.findClosestCulture( cultureSelector ) || this.cultures[ "default" ]; -}; - -}( this )); +/** + * Globalize + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + */ + +(function( window, undefined ) { + +var Globalize, + // private variables + regexHex, + regexInfinity, + regexParseFloat, + regexTrim, + // private JavaScript utility functions + arrayIndexOf, + endsWith, + extend, + isArray, + isFunction, + isObject, + startsWith, + trim, + truncate, + zeroPad, + // private Globalization utility functions + appendPreOrPostMatch, + expandFormat, + formatDate, + formatNumber, + getTokenRegExp, + getEra, + getEraYear, + parseExact, + parseNegativePattern; + +// Global variable (Globalize) or CommonJS module (globalize) +Globalize = function( cultureSelector ) { + return new Globalize.prototype.init( cultureSelector ); +}; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + module.exports = Globalize; +} else { + // Export as global variable + window.Globalize = Globalize; +} + +Globalize.cultures = {}; + +Globalize.prototype = { + constructor: Globalize, + init: function( cultureSelector ) { + this.cultures = Globalize.cultures; + this.cultureSelector = cultureSelector; + + return this; + } +}; +Globalize.prototype.init.prototype = Globalize.prototype; + +// 1. When defining a culture, all fields are required except the ones stated as optional. +// 2. Each culture should have a ".calendars" object with at least one calendar named "standard" +// which serves as the default calendar in use by that culture. +// 3. Each culture should have a ".calendar" object which is the current calendar being used, +// it may be dynamically changed at any time to one of the calendars in ".calendars". +Globalize.cultures[ "default" ] = { + // A unique name for the culture in the form - + name: "en", + // the name of the culture in the english language + englishName: "English", + // the name of the culture in its own language + nativeName: "English", + // whether the culture uses right-to-left text + isRTL: false, + // "language" is used for so-called "specific" cultures. + // For example, the culture "es-CL" means "Spanish, in Chili". + // It represents the Spanish-speaking culture as it is in Chili, + // which might have different formatting rules or even translations + // than Spanish in Spain. A "neutral" culture is one that is not + // specific to a region. For example, the culture "es" is the generic + // Spanish culture, which may be a more generalized version of the language + // that may or may not be what a specific culture expects. + // For a specific culture like "es-CL", the "language" field refers to the + // neutral, generic culture information for the language it is using. + // This is not always a simple matter of the string before the dash. + // For example, the "zh-Hans" culture is netural (Simplified Chinese). + // And the "zh-SG" culture is Simplified Chinese in Singapore, whose lanugage + // field is "zh-CHS", not "zh". + // This field should be used to navigate from a specific culture to it's + // more general, neutral culture. If a culture is already as general as it + // can get, the language may refer to itself. + language: "en", + // numberFormat defines general number formatting rules, like the digits in + // each grouping, the group separator, and how negative numbers are displayed. + numberFormat: { + // [negativePattern] + // Note, numberFormat.pattern has no "positivePattern" unlike percent and currency, + // but is still defined as an array for consistency with them. + // negativePattern: one of "(n)|-n|- n|n-|n -" + pattern: [ "-n" ], + // number of decimal places normally shown + decimals: 2, + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // symbol used for positive numbers + "+": "+", + // symbol used for negative numbers + "-": "-", + // symbol used for NaN (Not-A-Number) + "NaN": "NaN", + // symbol used for Negative Infinity + negativeInfinity: "-Infinity", + // symbol used for Positive Infinity + positiveInfinity: "Infinity", + percent: { + // [negativePattern, positivePattern] + // negativePattern: one of "-n %|-n%|-%n|%-n|%n-|n-%|n%-|-% n|n %-|% n-|% -n|n- %" + // positivePattern: one of "n %|n%|%n|% n" + pattern: [ "-n %", "n %" ], + // number of decimal places normally shown + decimals: 2, + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // symbol used to represent a percentage + symbol: "%" + }, + currency: { + // [negativePattern, positivePattern] + // negativePattern: one of "($n)|-$n|$-n|$n-|(n$)|-n$|n-$|n$-|-n $|-$ n|n $-|$ n-|$ -n|n- $|($ n)|(n $)" + // positivePattern: one of "$n|n$|$ n|n $" + pattern: [ "($n)", "$n" ], + // number of decimal places normally shown + decimals: 2, + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // symbol used to represent currency + symbol: "$" + } + }, + // calendars defines all the possible calendars used by this culture. + // There should be at least one defined with name "standard", and is the default + // calendar used by the culture. + // A calendar contains information about how dates are formatted, information about + // the calendar's eras, a standard set of the date formats, + // translations for day and month names, and if the calendar is not based on the Gregorian + // calendar, conversion functions to and from the Gregorian calendar. + calendars: { + standard: { + // name that identifies the type of calendar this is + name: "Gregorian_USEnglish", + // separator of parts of a date (e.g. "/" in 11/05/1955) + "/": "/", + // separator of parts of a time (e.g. ":" in 05:44 PM) + ":": ":", + // the first day of the week (0 = Sunday, 1 = Monday, etc) + firstDay: 0, + days: { + // full day names + names: [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], + // abbreviated day names + namesAbbr: [ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" ], + // shortest day names + namesShort: [ "Su", "Mo", "Tu", "We", "Th", "Fr", "Sa" ] + }, + months: { + // full month names (13 months for lunar calendards -- 13th month should be "" if not lunar) + names: [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", "" ], + // abbreviated month names + namesAbbr: [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "" ] + }, + // AM and PM designators in one of these forms: + // The usual view, and the upper and lower case versions + // [ standard, lowercase, uppercase ] + // The culture does not use AM or PM (likely all standard date formats use 24 hour time) + // null + AM: [ "AM", "am", "AM" ], + PM: [ "PM", "pm", "PM" ], + eras: [ + // eras in reverse chronological order. + // name: the name of the era in this culture (e.g. A.D., C.E.) + // start: when the era starts in ticks (gregorian, gmt), null if it is the earliest supported era. + // offset: offset in years from gregorian calendar + { + "name": "A.D.", + "start": null, + "offset": 0 + } + ], + // when a two digit year is given, it will never be parsed as a four digit + // year greater than this year (in the appropriate era for the culture) + // Set it as a full year (e.g. 2029) or use an offset format starting from + // the current year: "+19" would correspond to 2029 if the current year 2010. + twoDigitYearMax: 2029, + // set of predefined date and time patterns used by the culture + // these represent the format someone in this culture would expect + // to see given the portions of the date that are shown. + patterns: { + // short date pattern + d: "M/d/yyyy", + // long date pattern + D: "dddd, MMMM dd, yyyy", + // short time pattern + t: "h:mm tt", + // long time pattern + T: "h:mm:ss tt", + // long date, short time pattern + f: "dddd, MMMM dd, yyyy h:mm tt", + // long date, long time pattern + F: "dddd, MMMM dd, yyyy h:mm:ss tt", + // month/day pattern + M: "MMMM dd", + // month/year pattern + Y: "yyyy MMMM", + // S is a sortable format that does not vary by culture + S: "yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss" + } + // optional fields for each calendar: + /* + monthsGenitive: + Same as months but used when the day preceeds the month. + Omit if the culture has no genitive distinction in month names. + For an explaination of genitive months, see http://blogs.msdn.com/michkap/archive/2004/12/25/332259.aspx + convert: + Allows for the support of non-gregorian based calendars. This convert object is used to + to convert a date to and from a gregorian calendar date to handle parsing and formatting. + The two functions: + fromGregorian( date ) + Given the date as a parameter, return an array with parts [ year, month, day ] + corresponding to the non-gregorian based year, month, and day for the calendar. + toGregorian( year, month, day ) + Given the non-gregorian year, month, and day, return a new Date() object + set to the corresponding date in the gregorian calendar. + */ + } + }, + // For localized strings + messages: {} +}; + +Globalize.cultures[ "default" ].calendar = Globalize.cultures[ "default" ].calendars.standard; + +Globalize.cultures.en = Globalize.cultures[ "default" ]; + +Globalize.cultureSelector = "en"; + +// +// private variables +// + +regexHex = /^0x[a-f0-9]+$/i; +regexInfinity = /^[+\-]?infinity$/i; +regexParseFloat = /^[+\-]?\d*\.?\d*(e[+\-]?\d+)?$/; +regexTrim = /^\s+|\s+$/g; + +// +// private JavaScript utility functions +// + +arrayIndexOf = function( array, item ) { + if ( array.indexOf ) { + return array.indexOf( item ); + } + for ( var i = 0, length = array.length; i < length; i++ ) { + if ( array[i] === item ) { + return i; + } + } + return -1; +}; + +endsWith = function( value, pattern ) { + return value.substr( value.length - pattern.length ) === pattern; +}; + +extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[0] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction(target) ) { + target = {}; + } + + for ( ; i < length; i++ ) { + // Only deal with non-null/undefined values + if ( (options = arguments[ i ]) != null ) { + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( isObject(copy) || (copyIsArray = isArray(copy)) ) ) { + if ( copyIsArray ) { + copyIsArray = false; + clone = src && isArray(src) ? src : []; + + } else { + clone = src && isObject(src) ? src : {}; + } + + // Never move original objects, clone them + target[ name ] = extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +isArray = Array.isArray || function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Array]"; +}; + +isFunction = function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Function]"; +}; + +isObject = function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Object]"; +}; + +startsWith = function( value, pattern ) { + return value.indexOf( pattern ) === 0; +}; + +trim = function( value ) { + return ( value + "" ).replace( regexTrim, "" ); +}; + +truncate = function( value ) { + if ( isNaN( value ) ) { + return NaN; + } + return Math[ value < 0 ? "ceil" : "floor" ]( value ); +}; + +zeroPad = function( str, count, left ) { + var l; + for ( l = str.length; l < count; l += 1 ) { + str = ( left ? ("0" + str) : (str + "0") ); + } + return str; +}; + +// +// private Globalization utility functions +// + +appendPreOrPostMatch = function( preMatch, strings ) { + // appends pre- and post- token match strings while removing escaped characters. + // Returns a single quote count which is used to determine if the token occurs + // in a string literal. + var quoteCount = 0, + escaped = false; + for ( var i = 0, il = preMatch.length; i < il; i++ ) { + var c = preMatch.charAt( i ); + switch ( c ) { + case "\'": + if ( escaped ) { + strings.push( "\'" ); + } + else { + quoteCount++; + } + escaped = false; + break; + case "\\": + if ( escaped ) { + strings.push( "\\" ); + } + escaped = !escaped; + break; + default: + strings.push( c ); + escaped = false; + break; + } + } + return quoteCount; +}; + +expandFormat = function( cal, format ) { + // expands unspecified or single character date formats into the full pattern. + format = format || "F"; + var pattern, + patterns = cal.patterns, + len = format.length; + if ( len === 1 ) { + pattern = patterns[ format ]; + if ( !pattern ) { + throw "Invalid date format string \'" + format + "\'."; + } + format = pattern; + } + else if ( len === 2 && format.charAt(0) === "%" ) { + // %X escape format -- intended as a custom format string that is only one character, not a built-in format. + format = format.charAt( 1 ); + } + return format; +}; + +formatDate = function( value, format, culture ) { + var cal = culture.calendar, + convert = cal.convert, + ret; + + if ( !format || !format.length || format === "i" ) { + if ( culture && culture.name.length ) { + if ( convert ) { + // non-gregorian calendar, so we cannot use built-in toLocaleString() + ret = formatDate( value, cal.patterns.F, culture ); + } + else { + var eraDate = new Date( value.getTime() ), + era = getEra( value, cal.eras ); + eraDate.setFullYear( getEraYear(value, cal, era) ); + ret = eraDate.toLocaleString(); + } + } + else { + ret = value.toString(); + } + return ret; + } + + var eras = cal.eras, + sortable = format === "s"; + format = expandFormat( cal, format ); + + // Start with an empty string + ret = []; + var hour, + zeros = [ "0", "00", "000" ], + foundDay, + checkedDay, + dayPartRegExp = /([^d]|^)(d|dd)([^d]|$)/g, + quoteCount = 0, + tokenRegExp = getTokenRegExp(), + converted; + + function padZeros( num, c ) { + var r, s = num + ""; + if ( c > 1 && s.length < c ) { + r = ( zeros[c - 2] + s); + return r.substr( r.length - c, c ); + } + else { + r = s; + } + return r; + } + + function hasDay() { + if ( foundDay || checkedDay ) { + return foundDay; + } + foundDay = dayPartRegExp.test( format ); + checkedDay = true; + return foundDay; + } + + function getPart( date, part ) { + if ( converted ) { + return converted[ part ]; + } + switch ( part ) { + case 0: + return date.getFullYear(); + case 1: + return date.getMonth(); + case 2: + return date.getDate(); + default: + throw "Invalid part value " + part; + } + } + + if ( !sortable && convert ) { + converted = convert.fromGregorian( value ); + } + + for ( ; ; ) { + // Save the current index + var index = tokenRegExp.lastIndex, + // Look for the next pattern + ar = tokenRegExp.exec( format ); + + // Append the text before the pattern (or the end of the string if not found) + var preMatch = format.slice( index, ar ? ar.index : format.length ); + quoteCount += appendPreOrPostMatch( preMatch, ret ); + + if ( !ar ) { + break; + } + + // do not replace any matches that occur inside a string literal. + if ( quoteCount % 2 ) { + ret.push( ar[0] ); + continue; + } + + var current = ar[ 0 ], + clength = current.length; + + switch ( current ) { + case "ddd": + //Day of the week, as a three-letter abbreviation + case "dddd": + // Day of the week, using the full name + var names = ( clength === 3 ) ? cal.days.namesAbbr : cal.days.names; + ret.push( names[value.getDay()] ); + break; + case "d": + // Day of month, without leading zero for single-digit days + case "dd": + // Day of month, with leading zero for single-digit days + foundDay = true; + ret.push( + padZeros( getPart(value, 2), clength ) + ); + break; + case "MMM": + // Month, as a three-letter abbreviation + case "MMMM": + // Month, using the full name + var part = getPart( value, 1 ); + ret.push( + ( cal.monthsGenitive && hasDay() ) ? + ( cal.monthsGenitive[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) : + ( cal.months[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) + ); + break; + case "M": + // Month, as digits, with no leading zero for single-digit months + case "MM": + // Month, as digits, with leading zero for single-digit months + ret.push( + padZeros( getPart(value, 1) + 1, clength ) + ); + break; + case "y": + // Year, as two digits, but with no leading zero for years less than 10 + case "yy": + // Year, as two digits, with leading zero for years less than 10 + case "yyyy": + // Year represented by four full digits + part = converted ? converted[ 0 ] : getEraYear( value, cal, getEra(value, eras), sortable ); + if ( clength < 4 ) { + part = part % 100; + } + ret.push( + padZeros( part, clength ) + ); + break; + case "h": + // Hours with no leading zero for single-digit hours, using 12-hour clock + case "hh": + // Hours with leading zero for single-digit hours, using 12-hour clock + hour = value.getHours() % 12; + if ( hour === 0 ) hour = 12; + ret.push( + padZeros( hour, clength ) + ); + break; + case "H": + // Hours with no leading zero for single-digit hours, using 24-hour clock + case "HH": + // Hours with leading zero for single-digit hours, using 24-hour clock + ret.push( + padZeros( value.getHours(), clength ) + ); + break; + case "m": + // Minutes with no leading zero for single-digit minutes + case "mm": + // Minutes with leading zero for single-digit minutes + ret.push( + padZeros( value.getMinutes(), clength ) + ); + break; + case "s": + // Seconds with no leading zero for single-digit seconds + case "ss": + // Seconds with leading zero for single-digit seconds + ret.push( + padZeros( value.getSeconds(), clength ) + ); + break; + case "t": + // One character am/pm indicator ("a" or "p") + case "tt": + // Multicharacter am/pm indicator + part = value.getHours() < 12 ? ( cal.AM ? cal.AM[0] : " " ) : ( cal.PM ? cal.PM[0] : " " ); + ret.push( clength === 1 ? part.charAt(0) : part ); + break; + case "f": + // Deciseconds + case "ff": + // Centiseconds + case "fff": + // Milliseconds + ret.push( + padZeros( value.getMilliseconds(), 3 ).substr( 0, clength ) + ); + break; + case "z": + // Time zone offset, no leading zero + case "zz": + // Time zone offset with leading zero + hour = value.getTimezoneOffset() / 60; + ret.push( + ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), clength ) + ); + break; + case "zzz": + // Time zone offset with leading zero + hour = value.getTimezoneOffset() / 60; + ret.push( + ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), 2 ) + + // Hard coded ":" separator, rather than using cal.TimeSeparator + // Repeated here for consistency, plus ":" was already assumed in date parsing. + ":" + padZeros( Math.abs(value.getTimezoneOffset() % 60), 2 ) + ); + break; + case "g": + case "gg": + if ( cal.eras ) { + ret.push( + cal.eras[ getEra(value, eras) ].name + ); + } + break; + case "/": + ret.push( cal["/"] ); + break; + default: + throw "Invalid date format pattern \'" + current + "\'."; + } + } + return ret.join( "" ); +}; + +// formatNumber +(function() { + var expandNumber; + + expandNumber = function( number, precision, formatInfo ) { + var groupSizes = formatInfo.groupSizes, + curSize = groupSizes[ 0 ], + curGroupIndex = 1, + factor = Math.pow( 10, precision ), + rounded = Math.round( number * factor ) / factor; + + if ( !isFinite(rounded) ) { + rounded = number; + } + number = rounded; + + var numberString = number+"", + right = "", + split = numberString.split( /e/i ), + exponent = split.length > 1 ? parseInt( split[1], 10 ) : 0; + numberString = split[ 0 ]; + split = numberString.split( "." ); + numberString = split[ 0 ]; + right = split.length > 1 ? split[ 1 ] : ""; + + var l; + if ( exponent > 0 ) { + right = zeroPad( right, exponent, false ); + numberString += right.slice( 0, exponent ); + right = right.substr( exponent ); + } + else if ( exponent < 0 ) { + exponent = -exponent; + numberString = zeroPad( numberString, exponent + 1, true ); + right = numberString.slice( -exponent, numberString.length ) + right; + numberString = numberString.slice( 0, -exponent ); + } + + if ( precision > 0 ) { + right = formatInfo[ "." ] + + ( (right.length > precision) ? right.slice(0, precision) : zeroPad(right, precision) ); + } + else { + right = ""; + } + + var stringIndex = numberString.length - 1, + sep = formatInfo[ "," ], + ret = ""; + + while ( stringIndex >= 0 ) { + if ( curSize === 0 || curSize > stringIndex ) { + return numberString.slice( 0, stringIndex + 1 ) + ( ret.length ? (sep + ret + right) : right ); + } + ret = numberString.slice( stringIndex - curSize + 1, stringIndex + 1 ) + ( ret.length ? (sep + ret) : "" ); + + stringIndex -= curSize; + + if ( curGroupIndex < groupSizes.length ) { + curSize = groupSizes[ curGroupIndex ]; + curGroupIndex++; + } + } + + return numberString.slice( 0, stringIndex + 1 ) + sep + ret + right; + }; + + formatNumber = function( value, format, culture ) { + if ( !isFinite(value) ) { + if ( value === Infinity ) { + return culture.numberFormat.positiveInfinity; + } + if ( value === -Infinity ) { + return culture.numberFormat.negativeInfinity; + } + return culture.numberFormat[ "NaN" ]; + } + if ( !format || format === "i" ) { + return culture.name.length ? value.toLocaleString() : value.toString(); + } + format = format || "D"; + + var nf = culture.numberFormat, + number = Math.abs( value ), + precision = -1, + pattern; + if ( format.length > 1 ) precision = parseInt( format.slice(1), 10 ); + + var current = format.charAt( 0 ).toUpperCase(), + formatInfo; + + switch ( current ) { + case "D": + pattern = "n"; + number = truncate( number ); + if ( precision !== -1 ) { + number = zeroPad( "" + number, precision, true ); + } + if ( value < 0 ) number = "-" + number; + break; + case "N": + formatInfo = nf; + /* falls through */ + case "C": + formatInfo = formatInfo || nf.currency; + /* falls through */ + case "P": + formatInfo = formatInfo || nf.percent; + pattern = value < 0 ? formatInfo.pattern[ 0 ] : ( formatInfo.pattern[1] || "n" ); + if ( precision === -1 ) precision = formatInfo.decimals; + number = expandNumber( number * (current === "P" ? 100 : 1), precision, formatInfo ); + break; + default: + throw "Bad number format specifier: " + current; + } + + var patternParts = /n|\$|-|%/g, + ret = ""; + for ( ; ; ) { + var index = patternParts.lastIndex, + ar = patternParts.exec( pattern ); + + ret += pattern.slice( index, ar ? ar.index : pattern.length ); + + if ( !ar ) { + break; + } + + switch ( ar[0] ) { + case "n": + ret += number; + break; + case "$": + ret += nf.currency.symbol; + break; + case "-": + // don't make 0 negative + if ( /[1-9]/.test(number) ) { + ret += nf[ "-" ]; + } + break; + case "%": + ret += nf.percent.symbol; + break; + } + } + + return ret; + }; + +}()); + +getTokenRegExp = function() { + // regular expression for matching date and time tokens in format strings. + return (/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g); +}; + +getEra = function( date, eras ) { + if ( !eras ) return 0; + var start, ticks = date.getTime(); + for ( var i = 0, l = eras.length; i < l; i++ ) { + start = eras[ i ].start; + if ( start === null || ticks >= start ) { + return i; + } + } + return 0; +}; + +getEraYear = function( date, cal, era, sortable ) { + var year = date.getFullYear(); + if ( !sortable && cal.eras ) { + // convert normal gregorian year to era-shifted gregorian + // year by subtracting the era offset + year -= cal.eras[ era ].offset; + } + return year; +}; + +// parseExact +(function() { + var expandYear, + getDayIndex, + getMonthIndex, + getParseRegExp, + outOfRange, + toUpper, + toUpperArray; + + expandYear = function( cal, year ) { + // expands 2-digit year into 4 digits. + if ( year < 100 ) { + var now = new Date(), + era = getEra( now ), + curr = getEraYear( now, cal, era ), + twoDigitYearMax = cal.twoDigitYearMax; + twoDigitYearMax = typeof twoDigitYearMax === "string" ? new Date().getFullYear() % 100 + parseInt( twoDigitYearMax, 10 ) : twoDigitYearMax; + year += curr - ( curr % 100 ); + if ( year > twoDigitYearMax ) { + year -= 100; + } + } + return year; + }; + + getDayIndex = function ( cal, value, abbr ) { + var ret, + days = cal.days, + upperDays = cal._upperDays; + if ( !upperDays ) { + cal._upperDays = upperDays = [ + toUpperArray( days.names ), + toUpperArray( days.namesAbbr ), + toUpperArray( days.namesShort ) + ]; + } + value = toUpper( value ); + if ( abbr ) { + ret = arrayIndexOf( upperDays[1], value ); + if ( ret === -1 ) { + ret = arrayIndexOf( upperDays[2], value ); + } + } + else { + ret = arrayIndexOf( upperDays[0], value ); + } + return ret; + }; + + getMonthIndex = function( cal, value, abbr ) { + var months = cal.months, + monthsGen = cal.monthsGenitive || cal.months, + upperMonths = cal._upperMonths, + upperMonthsGen = cal._upperMonthsGen; + if ( !upperMonths ) { + cal._upperMonths = upperMonths = [ + toUpperArray( months.names ), + toUpperArray( months.namesAbbr ) + ]; + cal._upperMonthsGen = upperMonthsGen = [ + toUpperArray( monthsGen.names ), + toUpperArray( monthsGen.namesAbbr ) + ]; + } + value = toUpper( value ); + var i = arrayIndexOf( abbr ? upperMonths[1] : upperMonths[0], value ); + if ( i < 0 ) { + i = arrayIndexOf( abbr ? upperMonthsGen[1] : upperMonthsGen[0], value ); + } + return i; + }; + + getParseRegExp = function( cal, format ) { + // converts a format string into a regular expression with groups that + // can be used to extract date fields from a date string. + // check for a cached parse regex. + var re = cal._parseRegExp; + if ( !re ) { + cal._parseRegExp = re = {}; + } + else { + var reFormat = re[ format ]; + if ( reFormat ) { + return reFormat; + } + } + + // expand single digit formats, then escape regular expression characters. + var expFormat = expandFormat( cal, format ).replace( /([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1" ), + regexp = [ "^" ], + groups = [], + index = 0, + quoteCount = 0, + tokenRegExp = getTokenRegExp(), + match; + + // iterate through each date token found. + while ( (match = tokenRegExp.exec(expFormat)) !== null ) { + var preMatch = expFormat.slice( index, match.index ); + index = tokenRegExp.lastIndex; + + // don't replace any matches that occur inside a string literal. + quoteCount += appendPreOrPostMatch( preMatch, regexp ); + if ( quoteCount % 2 ) { + regexp.push( match[0] ); + continue; + } + + // add a regex group for the token. + var m = match[ 0 ], + len = m.length, + add; + switch ( m ) { + case "dddd": case "ddd": + case "MMMM": case "MMM": + case "gg": case "g": + add = "(\\D+)"; + break; + case "tt": case "t": + add = "(\\D*)"; + break; + case "yyyy": + case "fff": + case "ff": + case "f": + add = "(\\d{" + len + "})"; + break; + case "dd": case "d": + case "MM": case "M": + case "yy": case "y": + case "HH": case "H": + case "hh": case "h": + case "mm": case "m": + case "ss": case "s": + add = "(\\d\\d?)"; + break; + case "zzz": + add = "([+-]?\\d\\d?:\\d{2})"; + break; + case "zz": case "z": + add = "([+-]?\\d\\d?)"; + break; + case "/": + add = "(\\/)"; + break; + default: + throw "Invalid date format pattern \'" + m + "\'."; + } + if ( add ) { + regexp.push( add ); + } + groups.push( match[0] ); + } + appendPreOrPostMatch( expFormat.slice(index), regexp ); + regexp.push( "$" ); + + // allow whitespace to differ when matching formats. + var regexpStr = regexp.join( "" ).replace( /\s+/g, "\\s+" ), + parseRegExp = { "regExp": regexpStr, "groups": groups }; + + // cache the regex for this format. + return re[ format ] = parseRegExp; + }; + + outOfRange = function( value, low, high ) { + return value < low || value > high; + }; + + toUpper = function( value ) { + // "he-IL" has non-breaking space in weekday names. + return value.split( "\u00A0" ).join( " " ).toUpperCase(); + }; + + toUpperArray = function( arr ) { + var results = []; + for ( var i = 0, l = arr.length; i < l; i++ ) { + results[ i ] = toUpper( arr[i] ); + } + return results; + }; + + parseExact = function( value, format, culture ) { + // try to parse the date string by matching against the format string + // while using the specified culture for date field names. + value = trim( value ); + var cal = culture.calendar, + // convert date formats into regular expressions with groupings. + // use the regexp to determine the input format and extract the date fields. + parseInfo = getParseRegExp( cal, format ), + match = new RegExp( parseInfo.regExp ).exec( value ); + if ( match === null ) { + return null; + } + // found a date format that matches the input. + var groups = parseInfo.groups, + era = null, year = null, month = null, date = null, weekDay = null, + hour = 0, hourOffset, min = 0, sec = 0, msec = 0, tzMinOffset = null, + pmHour = false; + // iterate the format groups to extract and set the date fields. + for ( var j = 0, jl = groups.length; j < jl; j++ ) { + var matchGroup = match[ j + 1 ]; + if ( matchGroup ) { + var current = groups[ j ], + clength = current.length, + matchInt = parseInt( matchGroup, 10 ); + switch ( current ) { + case "dd": case "d": + // Day of month. + date = matchInt; + // check that date is generally in valid range, also checking overflow below. + if ( outOfRange(date, 1, 31) ) return null; + break; + case "MMM": case "MMMM": + month = getMonthIndex( cal, matchGroup, clength === 3 ); + if ( outOfRange(month, 0, 11) ) return null; + break; + case "M": case "MM": + // Month. + month = matchInt - 1; + if ( outOfRange(month, 0, 11) ) return null; + break; + case "y": case "yy": + case "yyyy": + year = clength < 4 ? expandYear( cal, matchInt ) : matchInt; + if ( outOfRange(year, 0, 9999) ) return null; + break; + case "h": case "hh": + // Hours (12-hour clock). + hour = matchInt; + if ( hour === 12 ) hour = 0; + if ( outOfRange(hour, 0, 11) ) return null; + break; + case "H": case "HH": + // Hours (24-hour clock). + hour = matchInt; + if ( outOfRange(hour, 0, 23) ) return null; + break; + case "m": case "mm": + // Minutes. + min = matchInt; + if ( outOfRange(min, 0, 59) ) return null; + break; + case "s": case "ss": + // Seconds. + sec = matchInt; + if ( outOfRange(sec, 0, 59) ) return null; + break; + case "tt": case "t": + // AM/PM designator. + // see if it is standard, upper, or lower case PM. If not, ensure it is at least one of + // the AM tokens. If not, fail the parse for this format. + pmHour = cal.PM && ( matchGroup === cal.PM[0] || matchGroup === cal.PM[1] || matchGroup === cal.PM[2] ); + if ( + !pmHour && ( + !cal.AM || ( matchGroup !== cal.AM[0] && matchGroup !== cal.AM[1] && matchGroup !== cal.AM[2] ) + ) + ) return null; + break; + case "f": + // Deciseconds. + case "ff": + // Centiseconds. + case "fff": + // Milliseconds. + msec = matchInt * Math.pow( 10, 3 - clength ); + if ( outOfRange(msec, 0, 999) ) return null; + break; + case "ddd": + // Day of week. + case "dddd": + // Day of week. + weekDay = getDayIndex( cal, matchGroup, clength === 3 ); + if ( outOfRange(weekDay, 0, 6) ) return null; + break; + case "zzz": + // Time zone offset in +/- hours:min. + var offsets = matchGroup.split( /:/ ); + if ( offsets.length !== 2 ) return null; + hourOffset = parseInt( offsets[0], 10 ); + if ( outOfRange(hourOffset, -12, 13) ) return null; + var minOffset = parseInt( offsets[1], 10 ); + if ( outOfRange(minOffset, 0, 59) ) return null; + tzMinOffset = ( hourOffset * 60 ) + ( startsWith(matchGroup, "-") ? -minOffset : minOffset ); + break; + case "z": case "zz": + // Time zone offset in +/- hours. + hourOffset = matchInt; + if ( outOfRange(hourOffset, -12, 13) ) return null; + tzMinOffset = hourOffset * 60; + break; + case "g": case "gg": + var eraName = matchGroup; + if ( !eraName || !cal.eras ) return null; + eraName = trim( eraName.toLowerCase() ); + for ( var i = 0, l = cal.eras.length; i < l; i++ ) { + if ( eraName === cal.eras[i].name.toLowerCase() ) { + era = i; + break; + } + } + // could not find an era with that name + if ( era === null ) return null; + break; + } + } + } + var result = new Date(), defaultYear, convert = cal.convert; + defaultYear = convert ? convert.fromGregorian( result )[ 0 ] : result.getFullYear(); + if ( year === null ) { + year = defaultYear; + } + else if ( cal.eras ) { + // year must be shifted to normal gregorian year + // but not if year was not specified, its already normal gregorian + // per the main if clause above. + year += cal.eras[( era || 0 )].offset; + } + // set default day and month to 1 and January, so if unspecified, these are the defaults + // instead of the current day/month. + if ( month === null ) { + month = 0; + } + if ( date === null ) { + date = 1; + } + // now have year, month, and date, but in the culture's calendar. + // convert to gregorian if necessary + if ( convert ) { + result = convert.toGregorian( year, month, date ); + // conversion failed, must be an invalid match + if ( result === null ) return null; + } + else { + // have to set year, month and date together to avoid overflow based on current date. + result.setFullYear( year, month, date ); + // check to see if date overflowed for specified month (only checked 1-31 above). + if ( result.getDate() !== date ) return null; + // invalid day of week. + if ( weekDay !== null && result.getDay() !== weekDay ) { + return null; + } + } + // if pm designator token was found make sure the hours fit the 24-hour clock. + if ( pmHour && hour < 12 ) { + hour += 12; + } + result.setHours( hour, min, sec, msec ); + if ( tzMinOffset !== null ) { + // adjust timezone to utc before applying local offset. + var adjustedMin = result.getMinutes() - ( tzMinOffset + result.getTimezoneOffset() ); + // Safari limits hours and minutes to the range of -127 to 127. We need to use setHours + // to ensure both these fields will not exceed this range. adjustedMin will range + // somewhere between -1440 and 1500, so we only need to split this into hours. + result.setHours( result.getHours() + parseInt(adjustedMin / 60, 10), adjustedMin % 60 ); + } + return result; + }; +}()); + +parseNegativePattern = function( value, nf, negativePattern ) { + var neg = nf[ "-" ], + pos = nf[ "+" ], + ret; + switch ( negativePattern ) { + case "n -": + neg = " " + neg; + pos = " " + pos; + /* falls through */ + case "n-": + if ( endsWith(value, neg) ) { + ret = [ "-", value.substr(0, value.length - neg.length) ]; + } + else if ( endsWith(value, pos) ) { + ret = [ "+", value.substr(0, value.length - pos.length) ]; + } + break; + case "- n": + neg += " "; + pos += " "; + /* falls through */ + case "-n": + if ( startsWith(value, neg) ) { + ret = [ "-", value.substr(neg.length) ]; + } + else if ( startsWith(value, pos) ) { + ret = [ "+", value.substr(pos.length) ]; + } + break; + case "(n)": + if ( startsWith(value, "(") && endsWith(value, ")") ) { + ret = [ "-", value.substr(1, value.length - 2) ]; + } + break; + } + return ret || [ "", value ]; +}; + +// +// public instance functions +// + +Globalize.prototype.findClosestCulture = function( cultureSelector ) { + return Globalize.findClosestCulture.call( this, cultureSelector ); +}; + +Globalize.prototype.format = function( value, format, cultureSelector ) { + return Globalize.format.call( this, value, format, cultureSelector ); +}; + +Globalize.prototype.localize = function( key, cultureSelector ) { + return Globalize.localize.call( this, key, cultureSelector ); +}; + +Globalize.prototype.parseInt = function( value, radix, cultureSelector ) { + return Globalize.parseInt.call( this, value, radix, cultureSelector ); +}; + +Globalize.prototype.parseFloat = function( value, radix, cultureSelector ) { + return Globalize.parseFloat.call( this, value, radix, cultureSelector ); +}; + +Globalize.prototype.culture = function( cultureSelector ) { + return Globalize.culture.call( this, cultureSelector ); +}; + +// +// public singleton functions +// + +Globalize.addCultureInfo = function( cultureName, baseCultureName, info ) { + + var base = {}, + isNew = false; + + if ( typeof cultureName !== "string" ) { + // cultureName argument is optional string. If not specified, assume info is first + // and only argument. Specified info deep-extends current culture. + info = cultureName; + cultureName = this.culture().name; + base = this.cultures[ cultureName ]; + } else if ( typeof baseCultureName !== "string" ) { + // baseCultureName argument is optional string. If not specified, assume info is second + // argument. Specified info deep-extends specified culture. + // If specified culture does not exist, create by deep-extending default + info = baseCultureName; + isNew = ( this.cultures[ cultureName ] == null ); + base = this.cultures[ cultureName ] || this.cultures[ "default" ]; + } else { + // cultureName and baseCultureName specified. Assume a new culture is being created + // by deep-extending an specified base culture + isNew = true; + base = this.cultures[ baseCultureName ]; + } + + this.cultures[ cultureName ] = extend(true, {}, + base, + info + ); + // Make the standard calendar the current culture if it's a new culture + if ( isNew ) { + this.cultures[ cultureName ].calendar = this.cultures[ cultureName ].calendars.standard; + } +}; + +Globalize.findClosestCulture = function( name ) { + var match; + if ( !name ) { + return this.findClosestCulture( this.cultureSelector ) || this.cultures[ "default" ]; + } + if ( typeof name === "string" ) { + name = name.split( "," ); + } + if ( isArray(name) ) { + var lang, + cultures = this.cultures, + list = name, + i, l = list.length, + prioritized = []; + for ( i = 0; i < l; i++ ) { + name = trim( list[i] ); + var pri, parts = name.split( ";" ); + lang = trim( parts[0] ); + if ( parts.length === 1 ) { + pri = 1; + } + else { + name = trim( parts[1] ); + if ( name.indexOf("q=") === 0 ) { + name = name.substr( 2 ); + pri = parseFloat( name ); + pri = isNaN( pri ) ? 0 : pri; + } + else { + pri = 1; + } + } + prioritized.push({ lang: lang, pri: pri }); + } + prioritized.sort(function( a, b ) { + if ( a.pri < b.pri ) { + return 1; + } else if ( a.pri > b.pri ) { + return -1; + } + return 0; + }); + // exact match + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + match = cultures[ lang ]; + if ( match ) { + return match; + } + } + + // neutral language match + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + do { + var index = lang.lastIndexOf( "-" ); + if ( index === -1 ) { + break; + } + // strip off the last part. e.g. en-US => en + lang = lang.substr( 0, index ); + match = cultures[ lang ]; + if ( match ) { + return match; + } + } + while ( 1 ); + } + + // last resort: match first culture using that language + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + for ( var cultureKey in cultures ) { + var culture = cultures[ cultureKey ]; + if ( culture.language == lang ) { + return culture; + } + } + } + } + else if ( typeof name === "object" ) { + return name; + } + return match || null; +}; + +Globalize.format = function( value, format, cultureSelector ) { + var culture = this.findClosestCulture( cultureSelector ); + if ( value instanceof Date ) { + value = formatDate( value, format, culture ); + } + else if ( typeof value === "number" ) { + value = formatNumber( value, format, culture ); + } + return value; +}; + +Globalize.localize = function( key, cultureSelector ) { + return this.findClosestCulture( cultureSelector ).messages[ key ] || + this.cultures[ "default" ].messages[ key ]; +}; + +Globalize.parseDate = function( value, formats, culture ) { + culture = this.findClosestCulture( culture ); + + var date, prop, patterns; + if ( formats ) { + if ( typeof formats === "string" ) { + formats = [ formats ]; + } + if ( formats.length ) { + for ( var i = 0, l = formats.length; i < l; i++ ) { + var format = formats[ i ]; + if ( format ) { + date = parseExact( value, format, culture ); + if ( date ) { + break; + } + } + } + } + } else { + patterns = culture.calendar.patterns; + for ( prop in patterns ) { + date = parseExact( value, patterns[prop], culture ); + if ( date ) { + break; + } + } + } + + return date || null; +}; + +Globalize.parseInt = function( value, radix, cultureSelector ) { + return truncate( Globalize.parseFloat(value, radix, cultureSelector) ); +}; + +Globalize.parseFloat = function( value, radix, cultureSelector ) { + // radix argument is optional + if ( typeof radix !== "number" ) { + cultureSelector = radix; + radix = 10; + } + + var culture = this.findClosestCulture( cultureSelector ); + var ret = NaN, + nf = culture.numberFormat; + + if ( value.indexOf(culture.numberFormat.currency.symbol) > -1 ) { + // remove currency symbol + value = value.replace( culture.numberFormat.currency.symbol, "" ); + // replace decimal seperator + value = value.replace( culture.numberFormat.currency["."], culture.numberFormat["."] ); + } + + // trim leading and trailing whitespace + value = trim( value ); + + // allow infinity or hexidecimal + if ( regexInfinity.test(value) ) { + ret = parseFloat( value ); + } + else if ( !radix && regexHex.test(value) ) { + ret = parseInt( value, 16 ); + } + else { + + // determine sign and number + var signInfo = parseNegativePattern( value, nf, nf.pattern[0] ), + sign = signInfo[ 0 ], + num = signInfo[ 1 ]; + + // #44 - try parsing as "(n)" + if ( sign === "" && nf.pattern[0] !== "(n)" ) { + signInfo = parseNegativePattern( value, nf, "(n)" ); + sign = signInfo[ 0 ]; + num = signInfo[ 1 ]; + } + + // try parsing as "-n" + if ( sign === "" && nf.pattern[0] !== "-n" ) { + signInfo = parseNegativePattern( value, nf, "-n" ); + sign = signInfo[ 0 ]; + num = signInfo[ 1 ]; + } + + sign = sign || "+"; + + // determine exponent and number + var exponent, + intAndFraction, + exponentPos = num.indexOf( "e" ); + if ( exponentPos < 0 ) exponentPos = num.indexOf( "E" ); + if ( exponentPos < 0 ) { + intAndFraction = num; + exponent = null; + } + else { + intAndFraction = num.substr( 0, exponentPos ); + exponent = num.substr( exponentPos + 1 ); + } + // determine decimal position + var integer, + fraction, + decSep = nf[ "." ], + decimalPos = intAndFraction.indexOf( decSep ); + if ( decimalPos < 0 ) { + integer = intAndFraction; + fraction = null; + } + else { + integer = intAndFraction.substr( 0, decimalPos ); + fraction = intAndFraction.substr( decimalPos + decSep.length ); + } + // handle groups (e.g. 1,000,000) + var groupSep = nf[ "," ]; + integer = integer.split( groupSep ).join( "" ); + var altGroupSep = groupSep.replace( /\u00A0/g, " " ); + if ( groupSep !== altGroupSep ) { + integer = integer.split( altGroupSep ).join( "" ); + } + // build a natively parsable number string + var p = sign + integer; + if ( fraction !== null ) { + p += "." + fraction; + } + if ( exponent !== null ) { + // exponent itself may have a number patternd + var expSignInfo = parseNegativePattern( exponent, nf, "-n" ); + p += "e" + ( expSignInfo[0] || "+" ) + expSignInfo[ 1 ]; + } + if ( regexParseFloat.test(p) ) { + ret = parseFloat( p ); + } + } + return ret; +}; + +Globalize.culture = function( cultureSelector ) { + // setter + if ( typeof cultureSelector !== "undefined" ) { + this.cultureSelector = cultureSelector; + } + // getter + return this.findClosestCulture( cultureSelector ) || this.cultures[ "default" ]; +}; + +}( this )); diff --git a/pub/lib/jquery/editableMultiselect/css/jquery.multiselect.css b/pub/lib/jquery/editableMultiselect/css/jquery.multiselect.css new file mode 100644 index 0000000000000..876828bba29a9 --- /dev/null +++ b/pub/lib/jquery/editableMultiselect/css/jquery.multiselect.css @@ -0,0 +1,229 @@ +.mselect-list { + position:relative; +} + +.mselect-items-wrapper { + padding: 3px; + min-height: 80px; + border: 1px solid #bbb; + border-radius: 4px; + margin: 10px 0; +} + +.mselect-fixed { + overflow-x:hidden; + overflow-y:auto; +} + + +.mselect-list-item { + position: relative; + margin: 1px 0; +} + +.mselect-list-item:hover { + background: #f9f9f9; +} + +.mselect-list-item label { + width:100%; + display:block; +} + +.mselect-input-container { + position:relative; + margin:5px 10px; + display:none; +} + +.mselect-input { + width: 99%; + margin:0; +} + +.mselect-list-item input:checked + span { + background: #e6e6e6; +} + +.mselect-list-item .mselect-checked + span { + background: #e6e6e6; +} + +.mselect-list-item input[type='checkbox'] { + position: absolute; + top:-9999px; +} + +.mselect-list-item label>span { + display: block; + padding: 5px; +} + +.mselect-list-item.mselect-disabled label span { + color:#999; + cursor: default; +} +.mselect-list-item.mselect-disabled:hover { + background: #fff; +} + +.mselect-list-item label span form { + position: relative; + z-index: 2; +} + +.mselect-cancel, +.mselect-edit, +.mselect-delete, +.mselect-save { + width: 16px; + height: 16px; + position: absolute; + cursor: pointer; + background: url(../images/icons-sprite.png) no-repeat; + text-indent: -9999px; +} + +.mselect-cancel { + right: 5px; + top: 7px; + background-position:-312px 0; + padding: 0; +} + +.mselect-edit { + background-position: 0 -72px; + top: 5px; + right: 30px; + display: none; +} + +.mselect-delete { + background-position: -456px -0; + display: none; + top: 5px; + right: 5px; +} + +.mselect-save, +.mselect-save:hover { + background:url(../images/icons-sprite.png) no-repeat -72px -72px; + display: block; + top: 6px; + right: 25px; + border: none; + padding: 0; + margin: 0; + filter:none; +} + +.mselect-list-item:hover .mselect-delete, +.mselect-list-item:hover .mselect-edit { + display: block; +} +.mselect-list-item-not-editable:hover .mselect-edit { + display: none; +} + +.mselect-list-item-not-removable:hover .mselect-delete { + display: none; +} + +/* Temporary styles */ +.mselect-list { + width: 278px; + background: #fff; + border:1px solid #C4C1BC; +} +.mselect-list .block-content { + padding:0 10px; +} + +.mselect-list .block-footer { + padding: 5px 10px; + background:#F0F2F4; + border-top:1px solid #ddd; + box-shadow:0 1px 5px 0 #ddd inset; +} + +.mselect-list-item label { + font-size: 12px; + color: #333; + font: 12px normal Arial, Helvetica,sans-serif; +} + +.mselect-list-item form { + display: block; +} + +.mselect-list input[type=text] { + font:13px/18px Arial, Helvetica, sans-serif; + display: inline-block; + width:100%; + height:28px; + padding: 4px 50px 4px 4px; + margin: 0 0 8px; + color: #333; + background-color: #fff; + border: 1px solid #ccc; + -moz-box-sizing:border-box; + -webkit-box-sizing:border-box; + box-sizing:border-box; + border-radius: 3px; + -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); + -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; + -moz-transition: border linear 0.2s, box-shadow linear 0.2s; + -ms-transition: border linear 0.2s, box-shadow linear 0.2s; + -o-transition: border linear 0.2s, box-shadow linear 0.2s; + transition: border linear 0.2s, box-shadow linear 0.2s; +} + +.mselect-list input[type=text]:focus { + border-color: rgba(82, 168, 236, 0.8); + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); +} + +.mselect-button-add { + height: 16px; + line-height: 16px; + border-width:1px; + border-style:solid; + border-color:#ed6502 #a04300 #a04300 #ed6502; + padding:0 7px 1px 7px; + color:#fff; + font:bold 12px arial, helvetica, sans-serif; + cursor:pointer; + background:#FFAC47; + background: -moz-linear-gradient(top, #ffac47 0%, #f56c06 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffac47), color-stop(100%,#f56c06)); + background: -webkit-linear-gradient(top, #ffac47 0%,#f56c06 100%); + background: -o-linear-gradient(top, #ffac47 0%,#f56c06 100%); + background: -ms-linear-gradient(top, #ffac47 0%,#f56c06 100%); + background: linear-gradient(to bottom, #ffac47 0%,#f56c06 100%); + +} + +.mselect-button-add:hover { + background:#f77c16; + background: -moz-linear-gradient(top, #f9dcba 0%, #fc7e21 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9dcba), color-stop(100%,#fc7e21)); + background: -webkit-linear-gradient(top, #f9dcba 0%,#fc7e21 100%); + background: -o-linear-gradient(top, #f9dcba 0%,#fc7e21 100%); + background: -ms-linear-gradient(top, #f9dcba 0%,#fc7e21 100%); + background: linear-gradient(to bottom, #f9dcba 0%,#fc7e21 100%); +} + +.mselect-button-add:active { + background:#f77c16; + background: -moz-linear-gradient(top, #cf5a01 1%, #f77c16 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(1%,#cf5a01), color-stop(100%,#f77c16)); + background: -webkit-linear-gradient(top, #cf5a01 1%,#f77c16 100%); + background: -o-linear-gradient(top, #cf5a01 1%,#f77c16 100%); + background: -ms-linear-gradient(top, #cf5a01 1%,#f77c16 100%); + background: linear-gradient(to bottom, #cf5a01 1%,#f77c16 100%); +} diff --git a/pub/lib/jquery/editableMultiselect/images/icons-sprite.png b/pub/lib/jquery/editableMultiselect/images/icons-sprite.png new file mode 100644 index 0000000000000..35ce0546ed377 Binary files /dev/null and b/pub/lib/jquery/editableMultiselect/images/icons-sprite.png differ diff --git a/pub/lib/jquery/editableMultiselect/js/jquery.editable.js b/pub/lib/jquery/editableMultiselect/js/jquery.editable.js new file mode 100644 index 0000000000000..87e5049db033f --- /dev/null +++ b/pub/lib/jquery/editableMultiselect/js/jquery.editable.js @@ -0,0 +1,538 @@ +/* + * Jeditable - jQuery in place edit plugin + * + * Copyright (c) 2006-2009 Mika Tuupola, Dylan Verheul + * + * Licensed under the MIT license: + * http://www.opensource.org/licenses/mit-license.php + * + * Project home: + * http://www.appelsiini.net/projects/jeditable + * + * Based on editable by Dylan Verheul : + * http://www.dyve.net/jquery/?editable + * + */ + +/** + * Version 1.7.1 + * + * ** means there is basic unit tests for this parameter. + * + * @name Jeditable + * @type jQuery + * @param String target (POST) URL or function to send edited content to ** + * @param Hash options additional options + * @param String options[method] method to use to send edited content (POST or PUT) ** + * @param Function options[callback] Function to run after submitting edited content ** + * @param String options[name] POST parameter name of edited content + * @param String options[id] POST parameter name of edited div id + * @param Hash options[submitdata] Extra parameters to send when submitting edited content. + * @param String options[type] text, textarea or select (or any 3rd party input type) ** + * @param Integer options[rows] number of rows if using textarea ** + * @param Integer options[cols] number of columns if using textarea ** + * @param Mixed options[height] 'auto', 'none' or height in pixels ** + * @param Mixed options[width] 'auto', 'none' or width in pixels ** + * @param String options[loadurl] URL to fetch input content before editing ** + * @param String options[loadtype] Request type for load url. Should be GET or POST. + * @param String options[loadtext] Text to display while loading external content. + * @param Mixed options[loaddata] Extra parameters to pass when fetching content before editing. + * @param Mixed options[data] Or content given as paramameter. String or function.** + * @param String options[indicator] indicator html to show when saving + * @param String options[tooltip] optional tooltip text via title attribute ** + * @param String options[event] jQuery event such as 'click' of 'dblclick' ** + * @param String options[submit] submit button value, empty means no button ** + * @param String options[cancel] cancel button value, empty means no button ** + * @param String options[cssclass] CSS class to apply to input form. 'inherit' to copy from parent. ** + * @param String options[style] Style to apply to input form 'inherit' to copy from parent. ** + * @param String options[select] true or false, when true text is highlighted ?? + * @param String options[placeholder] Placeholder text or html to insert when element is empty. ** + * @param String options[onblur] 'cancel', 'submit', 'ignore' or function ?? + * + * @param Function options[onsubmit] function(settings, original) { ... } called before submit + * @param Function options[onreset] function(settings, original) { ... } called before reset + * @param Function options[onerror] function(settings, original, xhr) { ... } called on error + * + * @param Hash options[ajaxoptions] jQuery Ajax options. See docs.jquery.com. + * + */ + +(function($) { + + $.fn.editable = function(target, options) { + + if ('disable' == target) { + $(this).data('disabled.editable', true); + return; + } + if ('enable' == target) { + $(this).data('disabled.editable', false); + return; + } + if ('destroy' == target) { + $(this) + .unbind($(this).data('event.editable')) + .removeData('disabled.editable') + .removeData('event.editable'); + return; + } + + var settings = $.extend({}, $.fn.editable.defaults, {target:target}, options); + + /* setup some functions */ + var plugin = $.editable.types[settings.type].plugin || function() { }; + var submit = $.editable.types[settings.type].submit || function() { }; + var buttons = $.editable.types[settings.type].buttons + || $.editable.types['defaults'].buttons; + var content = $.editable.types[settings.type].content + || $.editable.types['defaults'].content; + var element = $.editable.types[settings.type].element + || $.editable.types['defaults'].element; + var reset = $.editable.types[settings.type].reset + || $.editable.types['defaults'].reset; + var callback = settings.callback || function() { }; + var onedit = settings.onedit || function() { }; + var onsubmit = settings.onsubmit || function() { }; + var onreset = settings.onreset || function() { }; + var onerror = settings.onerror || reset; + + /* show tooltip */ + if (settings.tooltip) { + $(this).attr('title', settings.tooltip); + } + + settings.autowidth = 'auto' == settings.width; + settings.autoheight = 'auto' == settings.height; + + return this.each(function() { + + /* save this to self because this changes when scope changes */ + var self = this; + + /* inlined block elements lose their width and height after first edit */ + /* save them for later use as workaround */ + var savedwidth = $(self).width(); + var savedheight = $(self).height(); + + /* save so it can be later used by $.editable('destroy') */ + $(this).data('event.editable', settings.event); + + /* if element is empty add something clickable (if requested) */ + if (!$.trim($(this).html())) { + $(this).html(settings.placeholder); + } + + $(this).bind(settings.event, function(e) { + + /* abort if disabled for this element */ + if (true === $(this).data('disabled.editable')) { + return; + } + + /* prevent throwing an exeption if edit field is clicked again */ + if (self.editing) { + return; + } + + /* abort if onedit hook returns false */ + if (false === onedit.apply(this, [settings, self])) { + return; + } + + /* prevent default action and bubbling */ + e.preventDefault(); + e.stopPropagation(); + + /* remove tooltip */ + if (settings.tooltip) { + $(self).removeAttr('title'); + } + + /* figure out how wide and tall we are, saved width and height */ + /* are workaround for http://dev.jquery.com/ticket/2190 */ + if (0 == $(self).width()) { + //$(self).css('visibility', 'hidden'); + settings.width = savedwidth; + settings.height = savedheight; + } else { + if (settings.width != 'none') { + settings.width = + settings.autowidth ? $(self).width() : settings.width; + } + if (settings.height != 'none') { + settings.height = + settings.autoheight ? $(self).height() : settings.height; + } + } + //$(this).css('visibility', ''); + + /* remove placeholder text, replace is here because of IE */ + if ($(this).html().toLowerCase().replace(/(;|")/g, '') == + settings.placeholder.toLowerCase().replace(/(;|")/g, '')) { + $(this).html(''); + } + + self.editing = true; + self.revert = $(self).html(); + $(self).html(''); + + /* create the form object */ + var form = $('
'); + + /* apply css or style or both */ + if (settings.cssclass) { + if ('inherit' == settings.cssclass) { + form.attr('class', $(self).attr('class')); + } else { + form.attr('class', settings.cssclass); + } + } + + if (settings.style) { + if ('inherit' == settings.style) { + form.attr('style', $(self).attr('style')); + /* IE needs the second line or display wont be inherited */ + form.css('display', $(self).css('display')); + } else { + form.attr('style', settings.style); + } + } + + /* add main input element to form and store it in input */ + var input = element.apply(form, [settings, self]); + + /* set input content via POST, GET, given data or existing value */ + var input_content; + + if (settings.loadurl) { + var t = setTimeout(function() { + input.disabled = true; + content.apply(form, [settings.loadtext, settings, self]); + }, 100); + + var loaddata = {}; + loaddata[settings.id] = self.id; + if ($.isFunction(settings.loaddata)) { + $.extend(loaddata, settings.loaddata.apply(self, [self.revert, settings])); + } else { + $.extend(loaddata, settings.loaddata); + } + $.ajax({ + type : settings.loadtype, + url : settings.loadurl, + data : loaddata, + async : false, + success: function(result) { + window.clearTimeout(t); + input_content = result; + input.disabled = false; + } + }); + } else if (settings.data) { + input_content = settings.data; + if ($.isFunction(settings.data)) { + input_content = settings.data.apply(self, [self.revert, settings]); + } + } else { + input_content = self.revert; + } + content.apply(form, [input_content, settings, self]); + + input.attr('name', settings.name); + + /* add buttons to the form */ + buttons.apply(form, [settings, self]); + + /* add created form to self */ + $(self).append(form); + + /* attach 3rd party plugin if requested */ + plugin.apply(form, [settings, self]); + + /* focus to first visible form element */ + $(':input:visible:enabled:first', form).focus(); + + /* highlight input contents when requested */ + if (settings.select) { + input.select(); + } + + /* discard changes if pressing esc */ + input.keydown(function(e) { + if (e.keyCode == 27) { + e.preventDefault(); + //self.reset(); + reset.apply(form, [settings, self]); + } + }); + + /* discard, submit or nothing with changes when clicking outside */ + /* do nothing is usable when navigating with tab */ + var t; + if ('cancel' == settings.onblur) { + input.blur(function(e) { + /* prevent canceling if submit was clicked */ + t = setTimeout(function() { + reset.apply(form, [settings, self]); + }, 500); + }); + } else if ('submit' == settings.onblur) { + input.blur(function(e) { + /* prevent double submit if submit was clicked */ + t = setTimeout(function() { + form.submit(); + }, 200); + }); + } else if ($.isFunction(settings.onblur)) { + input.blur(function(e) { + settings.onblur.apply(self, [input.val(), settings]); + }); + } else { + input.blur(function(e) { + /* TODO: maybe something here */ + }); + } + + form.submit(function(e) { + + if (t) { + clearTimeout(t); + } + + /* do no submit */ + e.preventDefault(); + + /* call before submit hook. */ + /* if it returns false abort submitting */ + if (false !== onsubmit.apply(form, [settings, self])) { + /* custom inputs call before submit hook. */ + /* if it returns false abort submitting */ + if (false !== submit.apply(form, [settings, self])) { + + /* check if given target is function */ + if ($.isFunction(settings.target)) { + var str = settings.target.apply(self, [input.val(), settings]); + $(self).html(str); + self.editing = false; + callback.apply(self, [self.innerHTML, settings]); + /* TODO: this is not dry */ + if (!$.trim($(self).html())) { + $(self).html(settings.placeholder); + } + } else { + /* add edited content and id of edited element to POST */ + var submitdata = {}; + submitdata[settings.name] = input.val(); + submitdata[settings.id] = self.id; + /* add extra data to be POST:ed */ + if ($.isFunction(settings.submitdata)) { + $.extend(submitdata, settings.submitdata.apply(self, [self.revert, settings])); + } else { + $.extend(submitdata, settings.submitdata); + } + + /* quick and dirty PUT support */ + if ('PUT' == settings.method) { + submitdata['_method'] = 'put'; + } + + /* show the saving indicator */ + $(self).html(settings.indicator); + + /* defaults for ajaxoptions */ + var ajaxoptions = { + type : 'POST', + data : submitdata, + dataType: 'html', + url : settings.target, + success : function(result, status) { + if (ajaxoptions.dataType == 'html') { + $(self).html(result); + } + self.editing = false; + callback.apply(self, [result, settings]); + if (!$.trim($(self).html())) { + $(self).html(settings.placeholder); + } + }, + error : function(xhr, status, error) { + onerror.apply(form, [settings, self, xhr]); + } + }; + + /* override with what is given in settings.ajaxoptions */ + $.extend(ajaxoptions, settings.ajaxoptions); + $.ajax(ajaxoptions); + + } + } + } + + /* show tooltip again */ + $(self).attr('title', settings.tooltip); + + return false; + }); + }); + + /* privileged methods */ + this.reset = function(form) { + /* prevent calling reset twice when blurring */ + if (this.editing) { + /* before reset hook, if it returns false abort reseting */ + if (false !== onreset.apply(form, [settings, self])) { + $(self).html(self.revert); + self.editing = false; + if (!$.trim($(self).html())) { + $(self).html(settings.placeholder); + } + /* show tooltip again */ + if (settings.tooltip) { + $(self).attr('title', settings.tooltip); + } + } + } + }; + }); + + }; + + + $.editable = { + types: { + defaults: { + element : function(settings, original) { + var input = $(''); + $(this).append(input); + return(input); + }, + content : function(string, settings, original) { + $(':input:first', this).val(string); + }, + reset : function(settings, original) { + settings.data.apply(original, [original, settings]); + original.reset(this); + }, + buttons : function(settings, original) { + var form = this; + if (settings.submit) { + /* if given html string use that */ + if (settings.submit.match(/>$/)) { + var submit = $(settings.submit).click(function() { + if (submit.attr("type") != "submit") { + form.submit(); + } + }); + /* otherwise use button with given string as text */ + } else { + var submit = $('